omnisearch-mcp
Enables LLM agents to search academic literature across multiple sources (IEEE, arXiv, ACM, Semantic Scholar, CORE, Scite, Consensus) and index/search local PDFs.
README
Omnisearch MCP (based on ieee-research-mcp)
Um servidor Model Context Protocol (MCP) projetado para que agentes LLM (como Claude, Copilot, Cursor, etc.) possam pesquisar literatura acadêmica de forma unificada através de múltiplas fontes, além de permitir indexação local de PDFs.
🚀 Fontes Suportadas
Atualmente, o servidor busca simultaneamente em 7 bases de dados:
- IEEE Xplore
- arXiv
- ACM Digital Library (via CrossRef)
- Semantic Scholar
- CORE (core.ac.uk)
- Scite.ai
- Consensus.app
Além disso, possui ferramentas para ler e pesquisar dentro da sua biblioteca local de PDFs.
🛠 Instalação
O projeto requer Python 3.12+ e o gerenciador de pacotes uv.
git clone https://github.com/all3yp/omnisearch-mcp
cd omnisearch-mcp
# 1. Instalar dependências (incluindo o Playwright)
uv sync
# 2. Instalar navegadores necessários para a automação de login
uv run playwright install chromium
# 3. Preparar o arquivo de ambiente
cp .env.example .env
🔐 Configuração e Login Automático
Muitas plataformas cobram por acesso a APIs oficiais ou barram o conteúdo completo. Para contornar isso e buscar metadados de forma eficiente, este projeto utiliza as próprias sessões logadas do seu navegador para injetar cookies nas ferramentas de busca (Scite, Consensus e IEEE via proxy CAPES CAFe).
Usando os Scripts de Login (Cookies)
Disponibilizamos comandos interativos para você fazer login facilmente e salvar os cookies de acesso automaticamente no seu arquivo .env:
- Todas as Plataformas (CAPES + Scite + Consensus em sequência):
uv run omnisearch-login-all - CAPES / IEEE Xplore:
uv run omnisearch-capes-login - Scite.ai:
uv run omnisearch-scite-login - Consensus.app:
uv run omnisearch-consensus-login
Execução do servidor
uv run omnisearch-mcp
Execução dos testes unitários
uv run pytest --cov=src/omnisearch_mcp --cov-report=term-missing
Como funciona: O script abrirá uma janela do navegador. Basta realizar o seu login normalmente na plataforma. Assim que você for autenticado, a janela será fechada sozinha e o seu arquivo
.envserá atualizado com os cookies capturados da sessão!
Dica: Após o primeiro login, caso deseje automatizar em segundo plano, você pode tentar passar a flag --headless no comando.
APIs Oficiais (Tokens)
Para as ferramentas que possuem APIs abertas e oficiais, você pode adicionar a chave diretamente editando o arquivo .env:
SEMANTIC_SCHOLAR_API_KEY: Chave da API do Semantic Scholar (opcional, mas evita rate-limit).CORE_API_KEY: Chave da API v3 do CORE (obtida gratuitamente no site deles).IEEE_XPLORE_API_KEY: Chave oficial do IEEE (opcional caso esteja utilizando o login da CAPES/proxy).
🤖 Ferramentas MCP (Tools) Disponíveis
| Ferramenta | Descrição | Requisitos de Autenticação |
|---|---|---|
search_all |
Busca simultânea em todas as 7 bases (IEEE, arXiv, ACM, S2, CORE, Scite, Consensus). | Recomendado rodar os scripts de login |
search_ieee |
Busca no IEEE Xplore. | Login CAPES (omnisearch-capes-login) ou API Key |
search_scite |
Busca smart citations no Scite.ai. | Login Scite (omnisearch-scite-login) |
search_consensus |
Busca de papers no Consensus.app. | Login Consensus (omnisearch-consensus-login) |
search_semantic_scholar |
Busca no Semantic Scholar (Graph API). | Opcional API Key |
search_core |
Busca no CORE v3. | Necessário CORE API Key |
search_arxiv |
Busca aberta no arXiv. | Nenhum |
search_acm / search_crossref |
Busca de metadados no CrossRef/ACM. | Nenhum |
index_pdf_library |
Lê seus PDFs locais e extrai textos para cache. | Caminho Local |
search_pdf_library |
Pesquisa por trechos dentro dos seus PDFs locais. | Caminho Local |
💻 Uso com Clientes (Cursor, Claude, etc.)
Adicione o servidor nas configurações do seu cliente MCP apontando para o comando de inicialização deste diretório:
{
"mcpServers": {
"omnisearch-mcp": {
"command": "uv",
"args": ["run", "omnisearch-mcp"],
"env": {},
"cwd": "/caminho/absoluto/para/este/projeto/omnisearch-mcp"
}
}
}
📜 Créditos
Este projeto é um fork ampliado e modificado do projeto original ieee-research-mcp criado por Kevin Zhao. A base do servidor e as integrações originais com IEEE, arXiv e CrossRef são creditadas ao trabalho inicial dele.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.