hw_rag_mcp
Allows searching over Wikipedia articles indexed in the knowledge base.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
HW RAG + MCP Knowledge Base
Проект строит базу знаний, индексирует ее в Chroma и открывает поиск по базе через MCP-инструмент search_docs.
1. Установка зависимостей
cd hw_rag_mcp
python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install -r requirements.txtRelated MCP server: quick-mcp-example
2. Переменные окружения
Создайте .env из примера:
cp .env.example .envЗаполните .env:
GIGACHAT_CREDENTIALS=...
GIGACHAT_SCOPE=GIGACHAT_API_PERS
GIGACHAT_MODEL=GigaChat-2-Max
GIGACHAT_EMBEDDINGS=EmbeddingsGigaR
SOURCE_FETCH_TIMEOUT=303. Подготовка корпуса
Корпус скачивается автоматически в src/ingest.py из открытых источников:
PDF Банка России: кодекс этики ИИ на финансовом рынке.
Web-страница Банка России: искусственный интеллект на финансовом рынке.
Wikipedia: статья "Искусственный интеллект".
Wikipedia: статья "Искусственный интеллект в проектах Викимедиа".
Дополнительно скачивать файлы вручную не нужно.
4. Разбиение и индексация
Запустите ingestion:
python src/ingest.pyСкрипт:
скачивает корпус;
очищает текст;
разбивает документы на фрагменты;
добавляет метаданные
document_id,chunk_id,source;считает embeddings через
EmbeddingsGigaR;сохраняет индекс в Chroma collection
course_rag.
После успешного запуска появится папка:
data/chroma_db/5. Запуск MCP-сервера
MCP-сервер находится в src/mcp_server.py.
python src/mcp_server.pyСервер использует stdio transport. В обычном сценарии его запускает MCP-клиент, например src/agent_demo.py.
Пример MCP-конфигурации:
{
"knowledge_base": {
"transport": "stdio",
"command": "python3",
"args": ["src/mcp_server.py"]
}
}Публикуемые возможности:
resource
kb://corpus/stats;tool
search_docs(query, k);tool
search_by_source(source_id, query, k).
6. Демонстрационный запрос
Проверка поиска напрямую через Chroma:
python src/search_demo.py --k 3Проверка поиска через агента и MCP:
python src/agent_demo.pyВ выводе agent_demo.py должно быть видно:
MCP tools загружены;
агент вызвал
search_docs;результат содержит top-k фрагменты с
document_id,chunk_id,sourceиscore.
7. Проверка на 15 запросах
Список запросов:
eval/eval_queries.csvЗапуск проверки:
python src/eval_search.pyСкрипт создает:
eval/eval_results.jsonl
eval/eval_report.mdeval_report.md содержит top-k результаты, ожидаемый источник, признак попадания в top-3 и краткую ручную оценку.
This server cannot be deployed
Maintenance
Related MCP Connectors
Remote ChromaDB vector database MCP server with streamable HTTP transport
MCP server for querying Forkast documentation
An MCP server for search and retrieval over a local LanceDB database
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server implementation that provides tools for retrieving and processing documentation through vector search, enabling AI assistants to augment their responses with relevant documentation context15 npm263MIT
- FlicenseNot gradedqualityDmaintenanceDemonstrates an MCP server with tools, resources, and prompts for a knowledgebase chatbot that queries a ChromaDB vector database for RAG responses.62-
- FlicenseNot gradedqualityAmaintenanceMCP server for searching, reading, listing, writing, and appending Markdown wiki content using RAG with ChromaDB.-
- AlicenseNot gradedqualityDmaintenanceAn MCP server that indexes documents and serves relevant context to LLMs via Retrieval Augmented Generation (RAG).29 npm36MIT