MCP-RAGNAR
Um servidor MCP local que implementa Geração Aumentada por Recuperação (RAG) com recuperação por janela de sentenças e suporte para múltiplos tipos de arquivo.
GitHubExperimente este MCPPatrocinado
Documentação
MCP-RAGNAR - um servidor MCP RAG local
Um servidor MCP local que implementa RAG (Geração Aumentada por Recuperação) com recuperação por janela de sentenças.
Recursos
- Indexação de documentos com suporte a múltiplos tipos de arquivo (txt, md, pdf, doc, docx)
- Recuperação por janela de sentenças para melhor compreensão de contexto
- Modelos de incorporação configuráveis (OpenAI ou modo local hugging face - ex.: BAAI/bge-large-en-v1.5)
- Integração com servidor MCP para consultas fáceis
Requisitos
- Python 3.10+
- Gerenciador de pacotes UV
Instalação
- Clone o repositório:
git clone <repository-url>
cd mcp-ragnar
- Instale as dependências usando UV:
uv pip install -e .
Uso
Indexação de Documentos
Você pode indexar documentos programaticamente ou via linha de comando.
Indexação
python -m indexer.index /path/to/documents /path/to/index
# to change the default local embedding model and chunk size
python -m indexer.index /path/to/documents /path/to/index --chunk-size=512 --embed-model BAAI/bge-small-en-v1.5
# With OpenAI embedding endpoint (put your OPENAI_API_KEY in env)
python -m indexer.index /path/to/documents /path/to/index --embed-endpoint https://api.openai.com/v1 --embed-model text-embedding-3-small --tokenizer-model o200k_base
# Get help
python -m indexer.index --help
Executando o Servidor MCP
Configuração
pode ser fornecida como variável de ambiente ou arquivo .env
EMBED_ENDPOINT: (Opcional) Caminho para um endpoint de incorporação compatível com OpenAI (termina com /v1). Se não definido, um modelo local Hugging Face é usado por padrão.EMBED_MODEL: (Opcional) Nome do modelo de incorporação a ser usado. Valor padrão de BAAI/bge-large-en-v1.5.INDEX_ROOT: O diretório raiz para o índice, usado pelo recuperador. Isso é obrigatório para consultas MCP (Plataforma Multi-Nuvem).MCP_DESCRIPTION: O nome exposto e a descrição para o servidor MCP, usado apenas para consultas MCP. Isso é obrigatório para consultas MCP. Por exemplo: "RAG para meus documentos pessoais locais"INDEX_ROOT: o caminho raiz do índice
no modo SSE, ele escutará em http://localhost:8001/ragnar
python server/sse.py
no modo stdio
instale localmente como uma ferramenta uv
uv tool install .
Claude Desktop:
Atualize o seguinte:
No MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
No Windows: %APPDATA%/Claude/claude_desktop_config.json
Exemplo:
{
"mcpServers": {
"mcp-ragnar": {
"command": "uvx",
"args": [
"mcp-ragnar"
],
"env": {
"OPENAI_API_KEY": "",
"EMBED_ENDPOINT": "https://api.openai.com/v1",
"EMBED_MODEL": "text-embedding-3-small",
"MCP_DESCRIPTION": "My local Rust documentation",
"INDEX_ROOT": "/tmp/index"
}
}
}
}
Licença
Licença Pública Geral GNU v3.0