Paper Research Helper
FreeNot checkedEnables searching, ingesting, and querying academic papers using natural language, with integration to arXiv and Semantic Scholar.
About
Enables searching, ingesting, and querying academic papers using natural language, with integration to arXiv and Semantic Scholar.
README
A LangChain + LangGraph research assistant that ingests academic papers and answers questions about them, exposed as an MCP server compatible with Cursor and Claude Desktop.
Features
- Paper ingestion — fetch PDFs from arXiv by ID, extract text, chunk and embed into a local FAISS vector store.
- Semantic search — search arXiv and Semantic Scholar for papers by keyword.
- QA over papers — ask natural-language questions answered with retrieved passages from ingested papers.
- MCP server — expose all capabilities as tools consumable by any MCP-compatible client.
Project Structure
paper_research_helper/
├── main.py # CLI entry point (serve / ingest / ask)
├── requirements.txt
├── .env.example
├── docs/
│ ├── architecture.md # System design & data flow
│ └── getting_started.md # Step-by-step setup guide
└── src/
├── adapters/ # External service connectors
│ ├── arxiv.py # arXiv API
│ ├── semantic_scholar.py # Semantic Scholar API
│ └── pdf.py # PDF text extraction
├── tools/ # LangChain tools used by agents
│ ├── search.py # Paper search tool
│ ├── retrieval.py # Vector store retrieval tool
│ └── summarize.py # LLM summarization tool
├── agents/ # LangGraph agent nodes
│ ├── research_agent.py # Discovers & summarises papers
│ └── qa_agent.py # RAG question-answering agent
├── graphs/ # LangGraph state graphs
│ └── research_graph.py # Full research pipeline graph
├── pipeline/ # Ingestion orchestration
│ └── ingestion.py # Fetch → chunk → embed → index
└── mcp/ # MCP server
└── server.py # FastMCP server with 3 tools
Quick Start
1. Install dependencies
uv sync # creates .venv and installs all dependencies
2. Configure environment
cp .env.example .env
# edit .env and set OPENAI_API_KEY at minimum
3. Ingest a paper
python main.py ingest --arxiv-id 2301.07041 # Attention Is All You Need (example)
4. Ask a question
python main.py ask "What problem does the transformer architecture solve?"
5. Start the MCP server
python main.py serve
Then add the server to your Cursor or Claude Desktop MCP config:
{
"mcpServers": {
"paper-research-helper": {
"command": "python",
"args": ["main.py", "serve"],
"cwd": "/path/to/paper_research_helper"
}
}
}
MCP Tools
| Tool | Description |
|---|---|
search_papers |
Search arXiv or Semantic Scholar by keyword |
ingest_paper |
Ingest an arXiv paper into the local vector store |
ask_question |
Answer a research question using the QA graph |
License
MIT
Install Paper Research Helper in Claude Desktop, Claude Code & Cursor
unyly install paper-research-helperInstalls 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 paper-research-helper -- uvx --from git+https://github.com/Gunnar-Stunnar/Paper_Research_Helper paper-research-helperFAQ
Is Paper Research Helper MCP free?
Yes, Paper Research Helper MCP is free — one-click install via Unyly at no cost.
Does Paper Research Helper need an API key?
No, Paper Research Helper runs without API keys or environment variables.
Is Paper Research Helper hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Paper Research Helper in Claude Desktop, Claude Code or Cursor?
Open Paper Research Helper 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
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare Paper Research Helper with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
