EvaWiki RAG MCP server
Project description
evawiki-mcp
MCP-сервер для работы с базой знаний EvaWiki. Предоставляет инструменты для поиска, просмотра, создания и редактирования документов, управления вложениями и семантического поиска по базе знаний.
Установка
pip install evawiki-mcp
или через uvx (без предварительной установки):
uvx evawiki-mcp@latest
Быстрый старт
Переменные окружения
| Переменная | Обязательная | По умолчанию | Описание |
|---|---|---|---|
EVAWIKI_ENDPOINT |
Да | — | Базовый URL инстанса EvaWiki |
EVAWIKI_TOKEN |
Да | — | API-токен для аутентификации |
EVAWIKI_RAG_URL |
Нет | "" |
URL RAG API. При указании активирует инструмент evawiki_ask_query |
EVAWIKI_CONTENT_FORMAT |
Нет | yaml |
Формат ответов: yaml или json |
Запуск в режиме stdio
stdio — транспорт по умолчанию для MCP-клиентов (Claude Desktop, Cursor, VS Code и др.). Два варианта запуска:
Через CLI:
export EVAWIKI_ENDPOINT="https://evawiki.example.com"
export EVAWIKI_TOKEN="your-api-token"
evawiki-mcp
Через uvx (без установки):
EVAWIKI_ENDPOINT="https://evawiki.example.com" \
EVAWIKI_TOKEN="your-api-token" \
uvx evawiki-mcp@latest
Конфигурация для MCP-клиента
Добавьте в .mcp.json (или claude_desktop_config.json):
{
"mcpServers": {
"evawiki": {
"command": "uvx",
"args": ["evawiki-mcp@latest"],
"env": {
"EVAWIKI_ENDPOINT": "https://evawiki.example.com",
"EVAWIKI_TOKEN": "your-api-token"
}
}
}
}
Запуск в режиме HTTP
HTTP-режим подходит для развёртывания как сервис и подключения нескольких клиентов.
Через CLI:
export EVAWIKI_ENDPOINT="https://evawiki.example.com"
export EVAWIKI_TOKEN="your-api-token"
evawiki-mcp-http
Через uvicorn напрямую:
uvicorn rag_mcp.asgi_app:app --host 0.0.0.0
Сервер запустится на http://0.0.0.0:8000 (порт по умолчанию для uvicorn), MCP-эндпоинт — /mcp, health check — /health.
Конфигурация для MCP-клиента (HTTP)
{
"mcpServers": {
"evawiki": {
"type": "http",
"url": "http://127.0.0.1:8000/mcp",
"headers": {
"evawiki-endpoint": "https://evawiki.example.com",
"evawiki-token": "your-api-token"
}
}
}
}
В HTTP-режиме credentials можно передавать через заголовки
evawiki-endpointиevawiki-tokenна каждый запрос — это позволяет обслуживать несколько EvaWiki-инстансов с одного сервера.
Инструменты (MCP Tools)
Вложения (Attachments)
| Инструмент | Описание | Доступность |
|---|---|---|
evawiki_attachment_list |
Получает список вложений документа (только метаданные, без содержимого) | все режимы |
evawiki_attachment_upload_from_url |
Создаёт вложение в EvaWiki по HTTP(S)-ссылке | все режимы |
evawiki_attachment_upload_from_file |
Создаёт вложение в EvaWiki из локального файла | только stdio |
evawiki_attachment_download |
Скачивает вложение из EvaWiki на локальный диск | только stdio |
Документы (Documents)
| Инструмент | Описание | Доступность |
|---|---|---|
evawiki_document_get |
Получает метаданные документа по коду | все режимы |
evawiki_document_text_get |
Получает текстовое содержимое документа (опубликованная версия или черновик) | все режимы |
evawiki_document_search |
Ищет документы по подстроке в названии | все режимы |
evawiki_document_draft_create |
Создаёт новый документ в статусе черновика | все режимы |
evawiki_document_draft_update |
Обновляет документ и сохраняет как черновик | все режимы |
evawiki_document_publish |
Публикует черновик документа | все режимы |
Проекты (Projects)
| Инструмент | Описание | Доступность |
|---|---|---|
evawiki_project_list |
Получает список всех доступных проектов | все режимы |
evawiki_project_documents_tree |
Получает иерархию разделов и документов проекта | все режимы |
Навигация и поиск
| Инструмент | Описание | Доступность |
|---|---|---|
evawiki_overview_get |
Получает двухуровневый обзор базы знаний (проекты -> документы верхнего уровня) | все режимы |
evawiki_ask_query |
Семантический поиск по базе знаний с генерацией ответа (требует EVAWIKI_RAG_URL) |
все режимы* |
* Инструмент evawiki_ask_query регистрируется только при заданной переменной EVAWIKI_RAG_URL.
Различия между stdio и HTTP
| Возможность | stdio | HTTP |
|---|---|---|
| Все инструменты для чтения | + | + |
| Создание и редактирование документов | + | + |
| Загрузка вложений из локального файла | + | — |
| Скачивание вложений на локальный диск | + | — |
| Аутентификация через заголовки запроса | — | + |
| Многопользовательский доступ | — | + |
Запуск через uvx |
+ | — |
Инструменты evawiki_attachment_upload_from_file и evawiki_attachment_download работают с локальной файловой системой, поэтому доступны только в stdio-режиме.
Стек технологий
- FastMCP — фреймворк для MCP-серверов
- evawiki-python-client — клиент API EvaWiki
- Pydantic — валидация данных и модели ответов
- httpx — HTTP-клиент
- uvicorn — ASGI-сервер
Лицензия
MIT
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file evawiki_mcp-0.1.6.tar.gz.
File metadata
- Download URL: evawiki_mcp-0.1.6.tar.gz
- Upload date:
- Size: 17.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.15 {"installer":{"name":"uv","version":"0.11.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
121c47875cbc46b59cf9d6eb0b03c805b99b21d370bc54d1be950e6b1709cf7b
|
|
| MD5 |
dcae0dd21ca77fb1d8723d89c452f335
|
|
| BLAKE2b-256 |
20ff1136cf174f717f2c005a06c21dc1c75f6070ac7eefe771df1b706de7396c
|
File details
Details for the file evawiki_mcp-0.1.6-py3-none-any.whl.
File metadata
- Download URL: evawiki_mcp-0.1.6-py3-none-any.whl
- Upload date:
- Size: 30.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.15 {"installer":{"name":"uv","version":"0.11.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a6aaa4a1a8ea1eddc5ad3960d506a812d8a8215ce1e879d11a73fa420c5c266b
|
|
| MD5 |
fdb87483ddd68d070753f49157ad5006
|
|
| BLAKE2b-256 |
a6f88746bd9f0e0bc309ea492ccd759cd2ec9f753ef73933f61021c57d902c88
|