minirag-mcp — MCP-сервер для Claude Code: локальный поиск
MCP-сервер, который индексирует папку с документами и даёт гибридный поиск: векторное сходство плюс точные совпадения по словам. Данные не покидают машину.
claude mcp add --env BASE_DIR=<BASE_DIR> --env BASE_DIRS=<BASE_DIRS> --env DB_PATH=<DB_PATH> --env CACHE_DIR=<CACHE_DIR> --env MODEL_NAME=<MODEL_NAME> --transport stdio minirag-mcp -- uvx minirag-mcpЧто делает minirag-mcp
Сервер указывают на папку с файлами, и он строит по ней индекс. Поиск совмещает векторное сходство с ранжированием по ключевым словам через LanceDB BM25, поэтому номера ошибок и точные идентификаторы находятся наравне со смысловыми совпадениями. Инструмент find_mentions перечисляет все документы с нужным словом или фразой и сообщает, сколько документов просмотрено.
Разбираются 12 форматов через markitdown: PDF, DOCX, PPTX, XLSX, HTML, CSV, EPUB, ноутбуки Jupyter, Markdown и обычный текст. Есть прямая загрузка текста, markdown и HTML, а также получение страницы по URL. Сканы распознаются на CPU, если поставить дополнительный компонент [ocr]; метки документов по типу, проекту и дате — с компонентом [classify]. Каждый файл преобразуется один раз при загрузке, а на вопрос возвращаются только нужные фрагменты, а не весь документ.
Запуск идёт через uvx minirag-mcp, и при первом обращении пакет скачивается из PyPI, поэтому старт будет долгим только раз. Модель эмбеддингов тоже подгружается при первом использовании. Всё остальное — индексация, поиск, работа с локальными файлами — идёт без сети. Правда, claude mcp add записывает конфигурацию, не проверяя команду: если пакет не резолвится, настройка выглядит удачной, а сервер молча не поднимется при запуске клиента. Это повод проверить версию перед тем, как вставлять команду.
Какие задачи решает
- найти все упоминания кода ошибки в папке с документами
- искать по PDF и сканам без отправки файлов в облако
- получать ответ из своих документов, а не из памяти модели
- отличить похожие версии одного документа и понять, сколько текста у них общего
- искать по именам файлов, когда заголовок внутри документа ничего не говорит
Примеры запросов агенту
- Проиндексируй папку с документами и найди все упоминания
ERR_CONN_RESET - Сколько документов содержат фразу «акт сверки»?
- Найди раздел про лимиты запросов в загруженных PDF
Как установить minirag-mcp
Командой платформы
claude mcp add --env BASE_DIR=<BASE_DIR> --env BASE_DIRS=<BASE_DIRS> --env DB_PATH=<DB_PATH> --env CACHE_DIR=<CACHE_DIR> --env MODEL_NAME=<MODEL_NAME> --transport stdio minirag-mcp -- uvx minirag-mcpВместо <…> подставьте свои значения. Ещё 8 переменных окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from minirag-mcp <команда>
Командой платформы
codex mcp add minirag-mcp --env BASE_DIR=<BASE_DIR> --env BASE_DIRS=<BASE_DIRS> --env DB_PATH=<DB_PATH> --env CACHE_DIR=<CACHE_DIR> --env MODEL_NAME=<MODEL_NAME> -- uvx minirag-mcpВместо <…> подставьте свои значения. Ещё 8 переменных окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from minirag-mcp <команда>
Файл настроек
{
"mcpServers": {
"minirag-mcp": {
"command": "uvx",
"args": [
"minirag-mcp"
],
"env": {
"BASE_DIR": "<BASE_DIR>",
"BASE_DIRS": "<BASE_DIRS>",
"DB_PATH": "<DB_PATH>",
"CACHE_DIR": "<CACHE_DIR>",
"MODEL_NAME": "<MODEL_NAME>"
}
}
}
}Вместо <…> подставьте свои значения. Ещё 8 переменных окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from minirag-mcp <команда>
Файл настроек
{
"servers": {
"minirag-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"minirag-mcp"
],
"env": {
"BASE_DIR": "<BASE_DIR>",
"BASE_DIRS": "<BASE_DIRS>",
"DB_PATH": "<DB_PATH>",
"CACHE_DIR": "<CACHE_DIR>",
"MODEL_NAME": "<MODEL_NAME>"
}
}
}
}Вместо <…> подставьте свои значения. Ещё 8 переменных окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from minirag-mcp <команда>
Командой платформы
gemini mcp add -e BASE_DIR=<BASE_DIR> -e BASE_DIRS=<BASE_DIRS> -e DB_PATH=<DB_PATH> -e CACHE_DIR=<CACHE_DIR> -e MODEL_NAME=<MODEL_NAME> minirag-mcp uvx minirag-mcpВместо <…> подставьте свои значения. Ещё 8 переменных окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from minirag-mcp <команда>
По шагам, с командами для каждой платформы: Как подключить MCP-сервер: Claude Code, Codex, Cursor, VS Code, Gemini CLI и другие
Вопросы о minirag-mcp
Как установить minirag-mcp в Claude Code?
Выполните claude mcp add minirag-mcp -- uvx minirag-mcp. Для настройки путей и модели используйте `claude mcp add --env BASE_DIR=<BASE_DIR> --env BASE_DIRS=<BASE_DIRS> --env DB_PATH=<DB_PATH> --env CACHE_DIR=<CACHE_DIR> --env MODEL_NAME=<MODEL_NAME> --transport stdio minirag-mcp -- uvx minirag-mcp`.
Что делает minirag-mcp?
Индексирует папку с документами и отдаёт по ней гибридный поиск: векторное сходство плюс усиление по точным словам. Работает локально, сеть нужна только для первой загрузки модели эмбеддингов и при явном запросе страницы по URL.
Какие форматы файлов поддерживаются?
12 форматов через markitdown: PDF, DOCX, PPTX, XLSX, HTML, CSV, EPUB, ноутбуки Jupyter, Markdown и обычный текст. Плюс прямая загрузка текста, markdown и HTML.