Ieee Research
FreeNot checkedMCP server for searching IEEE Xplore, arXiv, ACM (via CrossRef), and a local PDF library — for use with Copilot CLI, Claude Desktop, and other MCP clients.
About
MCP server for searching IEEE Xplore, arXiv, ACM (via CrossRef), and a local PDF library — for use with Copilot CLI, Claude Desktop, and other MCP clients.
README
A Model Context Protocol server that lets LLM agents search academic literature across IEEE Xplore, arXiv, ACM Digital Library (via CrossRef), and a local PDF library of papers you've already downloaded.
Designed to plug into MCP clients like the GitHub Copilot CLI, Claude Desktop, Cursor, Zed, and others.
⚠️ This server only uses official, sanctioned APIs and your local files. It does not bypass paywalls. For paywalled full text you still need a subscription (institutional or personal); the server returns metadata and abstracts, plus URLs/DOIs you can resolve through your own access.
Features
| Tool | Source | Auth |
|---|---|---|
search_arxiv |
arXiv (Atom API) | none |
search_acm |
ACM Digital Library metadata via CrossRef (member 320) | none |
search_crossref |
All of CrossRef | none |
search_ieee |
IEEE Xplore Metadata API | free API key |
search_all |
Fan-out across IEEE + arXiv + ACM | optional IEEE key |
get_doi_metadata |
DOI lookup via CrossRef | none |
index_pdf_library |
Walks a folder, extracts text from PDFs, caches index | local |
search_pdf_library |
Substring search with snippets across indexed PDFs | local |
read_pdf_text |
Extracts text from a single PDF | local |
Install
git clone https://github.com/kevinzhao-tech/ieee-research-mcp
cd ieee-research-mcp
uv sync # installs into .venv
cp .env.example .env
$EDITOR .env # set IEEE_XPLORE_API_KEY (optional) and CONTACT_EMAIL
Requires Python 3.12+ and uv.
Getting an IEEE Xplore API key
The IEEE Xplore Metadata API is free but gated. Approval typically takes a few business days.
Create an account at https://developer.ieee.org/.
Click Get a free API key and request Xplore Metadata API access. Briefly describe your use case ("personal research assistant tooling" is fine).
Once approved, copy the API key into your
.env:IEEE_XPLORE_API_KEY=your_key_here
Without a key, every other tool still works; search_ieee and the IEEE
section of search_all will return a structured error explaining how to set
the key.
Running the server
uv run ieee-research-mcp
The server speaks MCP over stdio. You normally won't run it manually — your MCP client will spawn it.
Connecting to MCP clients
GitHub Copilot CLI
copilot mcp add ieee-research \
--command "uv" \
--args "--directory" "/absolute/path/to/ieee-research-mcp" "run" "ieee-research-mcp"
Or, in your Copilot CLI MCP config JSON:
{
"mcpServers": {
"ieee-research": {
"command": "uv",
"args": [
"--directory", "/absolute/path/to/ieee-research-mcp",
"run", "ieee-research-mcp"
]
}
}
}
Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"ieee-research": {
"command": "uv",
"args": [
"--directory", "/absolute/path/to/ieee-research-mcp",
"run", "ieee-research-mcp"
]
}
}
}
Restart Claude Desktop and the tools will appear under the 🔌 menu.
Anything else
Any MCP client that can launch a stdio server will work — point it at
uv --directory <repo> run ieee-research-mcp.
Example agent prompts
- "Find recent IEEE papers on federated learning differential privacy."
- "Index
~/papers/distributed-systemsand find passages discussing vector clocks." - "Look up DOI 10.1145/3650200 and summarize the abstract."
- "Compare what arXiv and ACM say about retrieval-augmented generation in 2024."
Local PDF library
The index_pdf_library tool scans a folder recursively, extracts text from
each PDF with pypdf, and writes a cache to
<folder>/.pdf_index.json. Re-running skips files whose mtime hasn't changed.
search_pdf_library does case-insensitive substring search and returns ranked
snippets with surrounding context.
This is intentionally simple and offline — no embeddings, no external service. Ideal for keeping your downloaded subscription papers searchable without re-hitting the publisher.
Development
uv sync --extra dev
uv run pytest -q
Tests use respx to mock HTTP and reportlab (optional dev dep) to build text PDFs for the indexer tests; PDF tests are skipped if reportlab is not present.
Project layout
src/ieee_research_mcp/
├── server.py # FastMCP server + tool registration
├── config.py # Env loading (IEEE_XPLORE_API_KEY, CONTACT_EMAIL)
├── models.py # Normalized Paper dataclass
├── sources/
│ ├── arxiv.py
│ ├── crossref.py # also covers ACM via member filter
│ └── ieee.py
└── pdfs/
└── library.py # index, search, read
Scope and limitations
- Metadata only for IEEE / ACM / CrossRef sources. Full text requires your own subscription and is outside the scope of this server.
- No paywall bypass of any kind. Use your institution's proxy / personal subscription to download PDFs, then index them locally.
- Substring search for the PDF library — not semantic / vector search. Pull requests adding an embedding-backed index are welcome.
License
MIT — see LICENSE.
Install Ieee Research in Claude Desktop, Claude Code & Cursor
unyly install ieee-researchInstalls into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add ieee-research -- uvx --from git+https://github.com/kevinzhao-tech/ieee-research-mcp ieee-research-mcpStep-by-step: how to install Ieee Research
FAQ
Is Ieee Research MCP free?
Yes, Ieee Research MCP is free — one-click install via Unyly at no cost.
Does Ieee Research need an API key?
No, Ieee Research runs without API keys or environment variables.
Is Ieee Research hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Ieee Research in Claude Desktop, Claude Code or Cursor?
Open Ieee Research on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Fetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
by modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
by xuzexin-hzMCP-Agent
A simple, composable framework to build agents using Model Context Protocol by [LastMile AI](https://www.lastmileai.dev)
by lastmile-aiSpring AI MCP Client
Provides auto-configuration for MCP client functionality in Spring Boot applications.
mcp.natoma.ai
A Hosted MCP Platform to discover, install, manage and deploy MCP servers by [Natoma Labs](https://www.natoma.ai)
MCPHub
Website to list high quality MCP servers and reviews by real users. Also provide online chatbot for popular LLM models with MCP server support.
MCP Servers Rating and User Reviews
Website to rate MCP servers, write authentic user reviews, and [search engine for agent & mcp](http://www.deepnlp.org/search/agent)
mkinf
An Open Source registry of hosted MCP Servers to accelerate AI agent workflows.
Compare Ieee Research with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All ai MCPs
