QuantConnect Docs
Um servidor MCP para busca inteligente e recuperação da documentação em PDF do QuantConnect.
Documentação
Servidor MCP PDF QuantConnect
Um servidor avançado do Model Context Protocol (MCP) que fornece busca inteligente e capacidades de recuperação para a documentação em PDF do QuantConnect. Este servidor converte PDFs em formato markdown pesquisável e fornece busca rápida e sensível ao contexto usando pontuação TF-IDF e correspondência por proximidade.
Recursos
- Processamento Inteligente de PDF: Converte automaticamente PDFs em markdown estruturado com formatação adequada
- Índice de Busca Rápida: Usa índice invertido com pontuação TF-IDF para resultados relevantes
- Resultados Sensíveis ao Contexto: Retorna trechos relevantes com correspondências destacadas
- Sistema de Cache: Evita reprocessar PDFs inalterados para melhor desempenho
- Correspondência por Proximidade: Aumenta resultados onde os termos da consulta aparecem próximos
- Três Ferramentas MCP: Buscar, listar documentos e recuperar conteúdo completo
Estrutura do Projeto
QuantConnectServer/
├── server.py # Main MCP server with enhanced search
├── convert_pdfs.py # Standalone PDF conversion utility
├── requirements.txt # Python dependencies
├── README.md # This documentation
├── env/ # Python virtual environment
└── quantconnect-docs/ # PDF documents and converted markdown
├── Quantconnect-Local-Platform-Python-2.pdf
├── Quantconnect-Writing-Algorithms-Python-2.pdf
└── markdown/ # Auto-generated markdown files
├── .pdf_cache.json # Processing cache
├── .search_index.pkl # Search index cache
└── *.md files # Converted documents
Instalação
Pré-requisitos
- Python 3.8 ou superior
- Gerenciador de pacotes pip
Passo 1: Instalar Dependências
Instale os pacotes necessários:
pip install -r requirements.txt
O requirements.txt inclui:
mcp- Biblioteca do Model Context ProtocolPyPDF2- Extração de texto de PDFasyncio- Processamento assíncrono
Passo 2: Prepare Seu Ambiente
Crie um ambiente virtual (recomendado):
python -m venv env
source env/bin/activate # On Windows: env\Scripts\activate
pip install -r requirements.txt
Configuração
Configuração do Claude Desktop
Encontre o arquivo de configuração do Claude Desktop:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/claude/claude_desktop_config.json
Adicione esta configuração (ajuste os caminhos para corresponder ao seu sistema):
{
"mcpServers": {
"quantconnect-pdf-server": {
"command": "/path/to/your/project/env/bin/python3",
"args": ["/path/to/your/project/server.py"],
"env": {
"QUANTCONNECT_PDF_FOLDER": "/path/to/your/project/quantconnect-docs",
"QUANTCONNECT_MARKDOWN_FOLDER": "/path/to/your/project/quantconnect-docs/markdown"
}
}
}
}
Variáveis de Ambiente
QUANTCONNECT_PDF_FOLDER: Diretório contendo seus arquivos PDF (obrigatório)QUANTCONNECT_MARKDOWN_FOLDER: Diretório para arquivos markdown convertidos (opcional, padrão éPDF_FOLDER/markdown)
Uso
Iniciando o Servidor
-
Teste autônomo:
export QUANTCONNECT_PDF_FOLDER="/path/to/your/pdfs" python server.py -
Com Claude Desktop: Reinicie o Claude Desktop após a configuração para carregar o servidor MCP
-
Conversão manual de PDF (opcional):
python convert_pdfs.py [pdf_folder] [markdown_folder]
Testando a Integração
Teste no Claude perguntando:
- "Você pode listar os documentos QuantConnect disponíveis?"
- "Busque informações sobre backtesting na documentação do QuantConnect"
- "O que a documentação do QuantConnect diz sobre indicadores?"
- "Mostre-me a página 5 da documentação do Local Platform"
Ferramentas MCP Disponíveis
O servidor fornece três ferramentas poderosas acessíveis através do Claude:
1. search_quantconnect_docs
Finalidade: Busca inteligente em toda a documentação do QuantConnect Parâmetros:
query(obrigatório): Termos de busca ou tópico a encontrarmax_results(opcional): Número de resultados a retornar (padrão: 5)
Recursos:
- Pontuação TF-IDF para classificação por relevância
- Correspondência por proximidade para consultas com múltiplas palavras
- Extração de contexto com correspondências destacadas
- Retorna trechos de documentos com números de página
2. list_quantconnect_docs
Finalidade: Listar todos os documentos PDF disponíveis na coleção Parâmetros: Nenhum
Retorna: Catálogo completo de documentos processados com metadados
3. get_document_content
Finalidade: Recuperar conteúdo completo de documentos específicos Parâmetros:
filename(obrigatório): Nome do documento (com ou sem extensão .md)page_number(opcional): Página específica a recuperar
Casos de uso: Ler seções completas, acessar páginas específicas, extrair exemplos de código
Arquitetura Técnica
Mecanismo de Busca
- Índice Invertido: Mapeia palavras para localizações em documentos para busca rápida
- Pontuação TF-IDF: Equilibra frequência de termos com raridade de documentos
- Aumento por Proximidade: Melhora resultados onde os termos da consulta aparecem juntos
- Extração de Contexto: Fornece trechos relevantes ao redor das correspondências
Sistema de Cache
- Cache de Processamento de PDF: Evita reprocessar arquivos inalterados usando hashes MD5
- Cache do Índice de Busca: Persiste o índice de busca para inicialização mais rápida
- Atualizações Incrementais: Processa apenas PDFs novos ou modificados
Recursos de Desempenho
- Processamento Assíncrono: Conversão e indexação de PDF sem bloqueio
- Inicialização em Segundo Plano: O servidor inicia imediatamente enquanto o processamento continua
- Armazenamento Eficiente: A conversão para markdown reduz o uso de memória em comparação com texto PDF bruto
Solução de Problemas
Problemas Comuns
-
Servidor não conectando
- Verifique caminhos absolutos na configuração do Claude Desktop
- Verifique a ativação do ambiente virtual Python
- Garanta que
server.pytenha permissões de execução
-
PDFs não carregando
- Confirme que o caminho
QUANTCONNECT_PDF_FOLDERexiste - Verifique permissões e legibilidade dos arquivos PDF
- Procure mensagens de erro na saída do servidor
- Confirme que o caminho
-
Busca sem resultados
- Aguarde o processamento inicial dos PDFs ser concluído
- Verifique se os arquivos markdown foram criados com sucesso
- Tente termos de busca mais amplos
-
Problemas de desempenho
- Garanta espaço em disco adequado para arquivos markdown
- Verifique se o antivírus está escaneando a pasta do projeto
- Considere mover arquivos de cache para armazenamento mais rápido
Modo de Depuração
Execute o servidor com saída de depuração:
export QUANTCONNECT_PDF_FOLDER="/path/to/pdfs"
python server.py 2>&1 | tee server.log
Uso Avançado
Processamento em Massa de PDF
Processe todos os PDFs sem iniciar o servidor:
python convert_pdfs.py ./quantconnect-docs ./quantconnect-docs/markdown
Consultas de Busca Personalizadas
A busca suporta vários tipos de consulta:
- Termos únicos:
backtesting - Consultas com múltiplas palavras:
custom indicator development - Termos técnicos:
OnData event handler - Conceitos de código:
Algorithm.Initialize method
Exemplos de Integração
Faça perguntas sofisticadas ao Claude como:
"Using the QuantConnect docs, show me step-by-step how to create a custom indicator with examples"
"What are all the different order types available and when should I use each one?"
"Find code examples of universe selection and explain the different approaches"
"Compare the local platform setup process with cloud deployment according to the documentation"
Contribuindo
Para estender o servidor:
- Adicionar novos formatos de documento: Estenda o sistema de conversão em
server.py:236 - Melhorar a busca: Aprimore a classe
SearchIndexpara busca semântica - Adicionar ferramentas especializadas: Crie funções de busca específicas de domínio
- Otimização de desempenho: Implemente processamento paralelo ou armazenamento em banco de dados
Histórico de Versões
- v0.3.0: Busca aprimorada com pontuação TF-IDF e correspondência por proximidade
- v0.2.0: Adicionado sistema de cache e processamento em segundo plano
- v0.1.0: Conversão básica de PDF para markdown e busca simples