Academic Paper Search
Pesquise e recupere informações
Documentação
Servidor MCP de Busca de Artigos Acadêmicos
Um servidor Model Context Protocol (MCP) que permite buscar e recuperar informações de artigos acadêmicos de múltiplas fontes.
O servidor fornece aos LLMs:
- Funcionalidade de busca de artigos acadêmicos em tempo real
- Acesso a metadados e resumos de artigos
- Capacidade de recuperar conteúdo de texto completo quando disponível
- Respostas de dados estruturados seguindo a especificação MCP
Embora projetado principalmente para integração com o cliente Claude Desktop da Anthropic, a especificação MCP permite compatibilidade potencial com outros modelos de IA e clientes que suportam capacidades de chamada de ferramentas/funções (ex.: API da OpenAI).
Nota: Este software está em desenvolvimento ativo. Recursos e funcionalidades estão sujeitos a alterações.
Recursos
Este servidor expõe as seguintes ferramentas:
-
search_papers: Busca artigos acadêmicos em múltiplas fontes- Parâmetros:
query(str): Texto da consulta de buscalimit(int, opcional): Número máximo de resultados a retornar (padrão: 10)
- Retorna: String formatada contendo detalhes do artigo
- Parâmetros:
-
fetch_paper_details: Recupera informações detalhadas de um artigo específico- Parâmetros:
paper_id(str): Identificador do artigo (DOI ou ID do Semantic Scholar)source(str, opcional): Fonte de dados ("crossref" ou "semantic_scholar", padrão: "crossref")
- Retorna: String formatada com metadados abrangentes do artigo, incluindo:
- Título, autores, ano, DOI
- Local de publicação, status de acesso aberto, URL do PDF (somente Semantic Scholar)
- Resumo e resumo TL;DR (quando disponíveis)
- Parâmetros:
-
search_by_topic: Busca artigos por tópico com filtro opcional de intervalo de datas- Parâmetros:
topic(str): Texto da consulta de busca (limitado a 300 caracteres)year_start(int, opcional): Ano inicial para o intervalo de datasyear_end(int, opcional): Ano final para o intervalo de dataslimit(int, opcional): Número máximo de resultados a retornar (padrão: 10)
- Retorna: String formatada contendo resultados da busca, incluindo:
- Títulos dos artigos, autores e anos
- Resumos e resumos TL;DR quando disponíveis
- Informações de local de publicação e acesso aberto
- Parâmetros:
Configuração
Instalação via Smithery
Para instalar o Servidor de Busca de Artigos Acadêmicos para Claude Desktop automaticamente via Smithery:
npx -y @smithery/cli install @afrise/academic-search-mcp-server --client claude
nota este método é amplamente não testado, pois o servidor deles parece estar com problemas. Você pode seguir as instruções autônomas até que o Smithery seja corrigido.
Instalação via uv (instalação manual):
- Instale as dependências:
uv add "mcp[cli]" httpx
- Configure as chaves de API necessárias no seu ambiente ou no arquivo
.env:
# These are not actually implemented
SEMANTIC_SCHOLAR_API_KEY=your_key_here
CROSSREF_API_KEY=your_key_here # Optional but recommended
- Execute o servidor:
uv run server.py
Uso com Claude Desktop
- Adicione o servidor à sua configuração do Claude Desktop (
claude_desktop_config.json):
{
"mcpServers": {
"academic-search": {
"command": "uv",
"args": ["run ", "/path/to/server/server.py"],
"env": {
"SEMANTIC_SCHOLAR_API_KEY": "your_key_here",
"CROSSREF_API_KEY": "your_key_here"
}
}
}
}
- Reinicie o Claude Desktop
Desenvolvimento
Este servidor é construído usando:
- Python MCP SDK
- FastMCP para implementação simplificada do servidor
- httpx para requisições de API
Fontes de API
- API do Semantic Scholar
- API do Crossref
Licença
Este projeto é licenciado sob a GNU Affero General Public License v3.0 (AGPL-3.0). Esta licença garante que:
- Você pode usar, modificar e distribuir este software livremente
- Quaisquer modificações devem ser de código aberto sob a mesma licença
- Qualquer pessoa que forneça serviços de rede usando este software deve disponibilizar o código-fonte
- O uso comercial é permitido, mas o software e quaisquer derivados devem permanecer livres e de código aberto
Consulte o arquivo LICENSE para o texto completo da licença.
Contribuindo
Contribuições são bem-vindas! Veja como você pode ajudar:
- Faça um fork do repositório
- Crie um branch de funcionalidade (
git checkout -b feature/amazing-feature) - Faça commit das suas alterações (
git commit -m 'Add amazing feature') - Envie para o branch (
git push origin feature/amazing-feature) - Abra um Pull Request
Por favor, observe:
- Siga o estilo de código e as convenções existentes
- Adicione testes para qualquer nova funcionalidade
- Atualize a documentação conforme necessário
- Garanta que suas alterações respeitem os termos da licença AGPL-3.0
Ao contribuir para este projeto, você concorda que suas contribuições serão licenciadas sob a licença AGPL-3.0.