Paperwithcode
FreeNot checkedMCP server that brings AI paper reading and code repository discovery from Hugging Face Papers into any MCP-compatible client.
About
MCP server that brings AI paper reading and code repository discovery from Hugging Face Papers into any MCP-compatible client.
README
MCP server that brings AI paper reading and code repository discovery from Hugging Face Papers into any MCP-compatible client (Claude Desktop, IDE plugins, etc.). Supports both stdio and SSE transports.
Overview
Keeping up with AI research means reading papers, finding code implementations, and tracking daily new releases. This server bridges Hugging Face Papers' rich metadata — AI summaries, GitHub star counts, full paper markdown, and daily trending lists — directly into your AI assistant's toolset. Instead of switching between browser tabs, you query papers conversationally.
What you can do:
- Paste an arXiv ID and get the corresponding GitHub repo (with star count)
- Ask for a paper's details: title, authors, abstract, AI summary, keywords
- Read a paper's full text as markdown in your conversation
- List today's trending papers on Hugging Face Papers
Quick Start
pip install git+https://github.com/GtJerry111/paperwithcode-hf-mcp.git
paperwithcode-mcp
The server starts in stdio mode, ready to connect to Claude Desktop or any MCP host. Add it to your claude_desktop_config.json (see Claude Desktop Integration) and you're done.
Tools
resolve_code_link
Resolve an arXiv ID to its GitHub repository URL.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
arxiv_id |
string |
Yes | The arXiv paper ID (e.g. 2508.02739) |
Returns: { "github_url": "https://github.com/shiyu-coder/Kronos" }
Returns null if no GitHub repository is found for the given paper.
get_paper_details
Get detailed paper metadata from Hugging Face Papers.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
arxiv_id |
string |
Yes | The arXiv paper ID (e.g. 2508.02739) |
Returns: JSON object with:
id— arXiv IDtitle— paper titleauthors— list of author namespublishedAt— publication datesummary— abstract textupvotes— upvote count on Hugging FacegithubRepo— linked GitHub repository URL (if any)githubStars— GitHub star count (if repo exists)ai_summary— AI-generated summaryai_keywords— list of AI-extracted keywordsdiscussionId— Hugging Face discussion thread IDmarkdownContentUrl— URL to the full paper markdown
Returns null if the paper is not found.
read_paper
Fetch the full text of a paper as markdown.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
arxiv_id |
string |
Yes | The arXiv paper ID (e.g. 2508.02739) |
Returns: A markdown string containing the complete paper text (abstract, introduction, method, results, etc.). Returns null if the paper cannot be found or has no markdown source.
list_daily_papers
List papers featured on Hugging Face Papers for a given date.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
date |
string |
No | Date in YYYY-MM-DD format. Defaults to today if omitted. |
Returns: A list of papers, each containing:
id— arXiv IDtitle— paper titleauthors— list of author namespublishedAt— publication datesummary— abstractupvotes— upvote countnumComments— number of comments on Hugging Face
Deployment
pip
pip install git+https://github.com/GtJerry111/paperwithcode-hf-mcp.git
paperwithcode-mcp # stdio (default)
paperwithcode-mcp --transport sse --host 0.0.0.0 --port 8787 # SSE
uv
uv tool install git+https://github.com/GtJerry111/paperwithcode-hf-mcp.git
paperwithcode-mcp # stdio
# Update later
uv tool upgrade paperwithcode-mcp
Docker
docker build -t paperwithcode-mcp .
docker run -i --rm paperwithcode-mcp # stdio
docker run -i --rm -p 8787:8787 paperwithcode-mcp \
--transport sse --host 0.0.0.0 --port 8787 # SSE
Claude Desktop Integration
Add to your claude_desktop_config.json:
{
"mcpServers": {
"paperwithcode": {
"command": "paperwithcode-mcp",
"args": []
}
}
}
If paperwithcode-mcp is not in your PATH after pip install, use the full Python module path or the uvx launcher:
{
"mcpServers": {
"paperwithcode": {
"command": "uvx",
"args": ["paperwithcode-mcp"]
}
}
}
Development
git clone https://github.com/GtJerry111/paperwithcode-hf-mcp.git
cd paperwithcode-hf-mcp
# pip
pip install -e ".[dev]"
# uv
uv sync --group dev
Architecture
The server has a simple data flow:
MCP tool call -> mcp_server.py (FastMCP) -> resolver.py (business logic)
-> client.py (curl/network) + parser.py (HTML extraction)
- mcp_server.py — FastMCP instance with 4 tool definitions and the CLI entry point
- resolver.py — orchestrates calls between client and parser, returns typed results
- client.py —
PaperPageClientwraps curl subprocess, handles proxy and retries - parser.py — extracts structured data from Hugging Face paper pages
Data Sources
https://huggingface.co/papers/{arxiv_id}— individual paper page (embedded JSON indata-props)https://huggingface.co/api/daily_papers?date=YYYY-MM-DD— daily papers API (no auth)markdownContentUrl— full paper text as markdown from the arXiv HTML conversion
Environment Variables
| Variable | Default | Description |
|---|---|---|
HTTPS_PROXY / HTTP_PROXY / ALL_PROXY |
— | Proxy for outgoing HTTP requests |
PWC_TIMEOUT |
15.0 |
Request timeout in seconds |
Limitations
This project uses Hugging Face Papers as its data source, NOT the paperswithcode.com API (which is no longer available). As a result:
- No paper search by keyword or title
- No conference, proceedings, or author browsing
- No benchmark results or dataset listings
License
MIT
Installing Paperwithcode
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/GtJerry111/paperwithcode-hf-mcpFAQ
Is Paperwithcode MCP free?
Yes, Paperwithcode MCP is free — one-click install via Unyly at no cost.
Does Paperwithcode need an API key?
No, Paperwithcode runs without API keys or environment variables.
Is Paperwithcode hosted or self-hosted?
A hosted option is available: Unyly runs the server in the cloud, no local setup required.
How do I install Paperwithcode in Claude Desktop, Claude Code or Cursor?
Open Paperwithcode 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 mcpdotdirectAmap Maps Mcp Server
MCP server for using the AMap Maps API
by duxiaohuiSupabase
Database, auth and storage
by SupabaseEverything
Reference / test server with prompts, resources, and tools.
Git
Tools to read, search, and manipulate Git repositories.
Sequential Thinking
Dynamic and reflective problem-solving through thought sequences.
Time
Time and timezone conversion capabilities.
Compare Paperwithcode with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
