Skip to main content
Glama
MENARHQ-cloud

Document MCP

Документ MCP

Чат-бот в стиле ChatGPT плюс сервер Document MCP. Вы регистрируете пути к папкам и локальную модель LiteLLM в Настройках. Вопросы направляются в LiteLLM с инструментами MCP; сервер читает только эти папки, используя pywin32 COM для Word / Excel / PowerPoint (тот же путь Office, что и в Model Council).

Chat UI  →  LiteLLM /v1/chat/completions (+ tools)
              ↑ tool_calls (search_documents, read_document, …)
MCP host     →  Document MCP (stdio JSON-RPC)
                    →  allowlisted folders
                    →  win32com Word / Excel / PowerPoint

Claude Desktop, Claude Code и Cursor подключаются к тому же серверу MCP и тому же списку папок.

Быстрый старт

  1. Запустите свой прокси LiteLLM.

  2. Дважды щелкните start.bat.

  3. Откройте http://127.0.0.1:7860.

  4. Настройки → LiteLLM: вставьте базовый URL (например, http://localhost:4000), ключ API, Загрузить модели или Добавить модель, затем Сохранить.

  5. Настройки → Папки: вставьте пути к папкам Windows. sample_docs регистрируется при первом запуске.

  6. Спросите что угодно, что могут ответить эти файлы.

Вручную

python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt
copy .env.example .env
python -m app

Related MCP server: file-analysis-mcp

Настройки

Вкладка

Что делает

LiteLLM

Базовый URL, ключ, загрузить /v1/models, добавить имя локальной модели, которой нет в списке, проверить соединение

Папки

Корни MCP (разрешенный список). Та же идея, что и OFFICE_ALLOWED_ROOTS в Model Council

Claude MCP

Скопировать сниппеты для Claude Desktop / Claude Code / Cursor, или записать конфиг Claude Desktop за вас

URL-адреса можно вставлять как http://host:4000, http://host:4000/v1 или .../v1/chat/completions — они нормализуются, как в Model Council.

Как здесь работают LiteLLM + MCP

Взято из цикла MCP внутри приложения Model Council:

  1. Хост вызывает MCP tools/list и преобразует схемы в инструменты OpenAI.

  2. Хост отправляет POST-запрос chat/completions к LiteLLM с этими инструментами (tool_choice: auto).

  3. Если модель возвращает tool_calls, хост запускает MCP tools/call (stdio).

  4. JSON инструмента добавляется как role: tool, и цикл повторяется до тех пор, пока не будет получен обычный ответ.

Модель никогда не видит файлы, если она не вызывает инструмент. Корни находятся в разрешенном списке. Файлы Office отдают предпочтение COM, чтобы даже заблокированные для Windows / IRM файлы можно было прочитать.

Инструменты MCP

Инструмент

Назначение

ping

Исправность, движки, количество папок

list_folders

Зарегистрированные корни

add_folder / remove_folder

Изменить корни

list_documents

Инвентаризация

search_documents

Имя + извлеченный текст

read_document

Извлечение (сначала COM, библиотека как запасной вариант)

Подсказка: ask_documents.

Claude Desktop / Claude Code / Cursor

В чат-боте: Настройки → Claude MCP → Добавить в Claude Desktop (записывает %APPDATA%\Claude\claude_desktop_config.json). Перезапустите Claude, затем попросите его выполнить ping для Document MCP.

Или скопируйте эту структуру (пути заполняются в Настройках):

{
  "mcpServers": {
    "document-mcp": {
      "command": "D:\\\\AntigravityCodes\\\\Document-MCP\\\\.venv\\\\Scripts\\\\python.exe",
      "args": ["-m", "document_mcp"],
      "cwd": "D:\\\\AntigravityCodes\\\\Document-MCP",
      "env": {
        "PYTHONUTF8": "1",
        "DOCUMENT_MCP_ROOTS": "D:\\\\AntigravityCodes\\\\Document-MCP\\\\data\\\\folders.json"
      }
    }
  }
}

Claude Code:

claude mcp add-json document-mcp "{...stdio server json from Settings...}"

Cursor: репо mcp.json, или Настройки → Claude MCP скопируйте сниппет Cursor.

HTTP (шлюз LiteLLM MCP):

start_mcp_http.bat

Затем добавьте http://127.0.0.1:8765/mcp.

pywin32 / Office

  • Word.Application → .doc / .docx

  • Excel.Application → .xls / .xlsx / .xlsm

  • PowerPoint.Application → .ppt / .pptx

Запасной вариант: python-docx / openpyxl / python-pptx. PDF: PyMuPDF. Для устаревших двоичных файлов Office по-прежнему требуется Microsoft Office.

python -m document_mcp.reader sample_docs\mena_rhq_overview.md

Макет

app/                 FastAPI chat host (MCP client + UI)
document_mcp/        FastMCP server, COM readers, Claude install helper
sample_docs/         Starter files
data/                folders.json, settings, extract cache (local)

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    C
    maintenance
    Enables read-only scanning and text extraction from PDF, DOCX, PPTX, SVG, and PNG files in a local folder, providing the raw text to AI models for summarization or analysis without an external LLM API.
    5
    -
  • F
    license
    A
    quality
    C
    maintenance
    Enables local Windows file management with allowlisted folder access and integration with Outlook Classic or Microsoft 365 email for AI assistants like Claude Desktop.
    38
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents on Windows to drive real Microsoft Word and WPS Office applications through COM, automating legacy .doc/.docx batch conversion, bookmark and placeholder template filling, print-fidelity PDF export, extraction from legacy binaries, editing of documents currently open on screen, and mail-merge batch generation. It hardens these operations with CJK font preservation, password and corruption pre-checks, structured self-correcting errors, path allowlisting, read-only mode, and automatic Word-to-WPS failover.
    1
    MIT