paperwithcode-mcp
MCP server that brings AI paper reading and code repository discovery from Hugging Face Papers into any MCP-compatible client.
README
paperwithcode-mcp
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
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.