Paper Search Mcp Cf
БесплатноНе проверенCloudflare Workers MCP server for academic paper search
Описание
Cloudflare Workers MCP server for academic paper search
README
A remote MCP server for academic paper search, deployed on Cloudflare Workers. Also works locally via stdio.
Ported from openags/paper-search-mcp.
Searches 8 academic sources concurrently and returns standardized paper metadata. PDF URLs are returned in results — your agent can fetch them using its own tools (fetch, firecrawl, browser, etc.).
Tools
Per-Source Search (8 tools)
| Tool | Source | API Type | API Key Required? |
|---|---|---|---|
search_arxiv |
arXiv | Atom XML | No |
search_semantic |
Semantic Scholar | JSON | Optional (better rate limits) |
search_pubmed |
PubMed | JSON | No |
search_crossref |
CrossRef | JSON | No |
search_biorxiv |
bioRxiv | JSON | No |
search_medrxiv |
medRxiv | JSON | No |
search_openalex |
OpenAlex | JSON | No |
search_google_scholar |
Google Scholar | HTML | No (may be blocked from cloud) |
Utility Tools (2 tools)
| Tool | Description |
|---|---|
get_crossref_paper_by_doi |
Lookup a paper by DOI via CrossRef |
get_semantic_paper_by_id |
Lookup a paper by ID via Semantic Scholar |
Unified Search (1 tool)
| Tool | Description |
|---|---|
search_papers |
Fans out to all selected sources, merges and deduplicates results |
Prompts (2 prompts)
| Prompt | Description |
|---|---|
literature-review |
Search multiple sources and generate a research summary |
paper-lookup |
Find a specific paper by DOI or title across all sources |
🚀 Running on Cloudflare (Remote)
Authentication
Layer 1 — Bearer Token (Server Gate)
Set these as Cloudflare Worker secrets:
wrangler secret put OWNER_API_KEY # Your personal token
wrangler secret put TEAM_API_KEY # Shared token for colleagues
Generate keys with openssl rand -base64 32.
Layer 2 — Per-User API Key (Optional)
The X-Semantic-Scholar-Api-Key header is optional. Semantic Scholar works without a key but with lower rate limits (100 req/5min vs 1000 req/5min with a key).
Client Configuration
You (owner):
{
"paper-search": {
"command": "npx",
"args": [
"mcp-remote",
"https://paper-search-mcp-cf.<your-account>.workers.dev/mcp",
"--header",
"Authorization:Bearer <YOUR_OWNER_API_KEY>",
"--header",
"X-Semantic-Scholar-Api-Key:<your-semantic-key>"
]
}
}
Colleagues (team):
{
"paper-search": {
"command": "npx",
"args": [
"mcp-remote",
"https://paper-search-mcp-cf.<your-account>.workers.dev/mcp",
"--header",
"Authorization:Bearer <SHARED_TEAM_API_KEY>",
"--header",
"X-Semantic-Scholar-Api-Key:<their-own-semantic-key>"
]
}
}
Deploy
# 1. Set secrets
wrangler secret put OWNER_API_KEY
wrangler secret put TEAM_API_KEY
# (Optional) Set Google Scholar proxy
wrangler secret put GOOGLE_SCHOLAR_PROXY_URL
# 2. Deploy
npm run deploy
💻 Running Locally (Stdio)
No Cloudflare account needed. Runs on any machine with Node.js.
# 1. Clone
git clone https://github.com/cmdaltctr/paper-search-mcp-cf.git
cd paper-search-mcp-cf
# 2. Install
npm install
# 3. Run (optionally with Semantic Scholar key)
SEMANTIC_SCHOLAR_API_KEY=your-key npm run local
MCP Client Configuration
After cloning, configure your MCP client using the absolute path to the repo (replace /path/to/paper-search-mcp-cf below):
Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"paper-search": {
"command": "npx",
"args": ["tsx", "/path/to/paper-search-mcp-cf/src/local.ts"],
"env": {
"SEMANTIC_SCHOLAR_API_KEY": "your-key-here"
}
}
}
}
Claude Code (CLI)
Add to your project or global config:
# Project-level
claude mcp add paper-search -- npx tsx /path/to/paper-search-mcp-cf/src/local.ts
claude mcp set paper-search --env SEMANTIC_SCHOLAR_API_KEY=your-key-here
# Or global (user-level)
claude mcp add --scope user paper-search -- npx tsx /path/to/paper-search-mcp-cf/src/local.ts
claude mcp set --scope user paper-search --env SEMANTIC_SCHOLAR_API_KEY=your-key-here
Or add directly to .claude/settings.json or ~/.claude/settings.json:
{
"mcpServers": {
"paper-search": {
"command": "npx",
"args": ["tsx", "/path/to/paper-search-mcp-cf/src/local.ts"],
"env": {
"SEMANTIC_SCHOLAR_API_KEY": "your-key-here"
}
}
}
}
OpenCode
Add to ~/.config/opencode/opencode.json or project-level opencode.json:
{
"mcp": {
"paper-search": {
"type": "stdio",
"command": "npx",
"args": ["tsx", "/path/to/paper-search-mcp-cf/src/local.ts"],
"env": {
"SEMANTIC_SCHOLAR_API_KEY": "your-key-here"
}
}
}
}
Cursor / Other MCP Clients
Use the same stdio pattern:
{
"paper-search": {
"command": "npx",
"args": ["tsx", "/path/to/paper-search-mcp-cf/src/local.ts"],
"env": {
"SEMANTIC_SCHOLAR_API_KEY": "your-key-here"
}
}
}
For Your AI - One-Click Setup Prompt
Copy the entire block below and paste it to your AI coding agent (Claude, OpenCode, Cursor, etc.). The AI will handle everything automatically.
Instructions: Replace
<path-to-project>with the folder where you want it installed (e.g.,~/projectsorC:\Users\You\projects).
You are installing the paper-search-mcp-cf project. This is an MCP server that searches academic papers from 8 sources (arXiv, PubMed, CrossRef, Semantic Scholar, OpenAlex, bioRxiv, medRxiv, Google Scholar).
INSTALLATION DIRECTORY: <path-to-project>/paper-search-mcp-cf
STEPS:
1. Clone the repo: git clone https://github.com/cmdaltctr/paper-search-mcp-cf.git <path-to-project>/paper-search-mcp-cf
2. cd into the directory
3. Run: npm install
4. Run: npx tsc --noEmit (verify type check passes)
5. Create a test file or run: SEMANTIC_SCHOLAR_API_KEY=demo npm run local
(kill it after 3 seconds to confirm it starts)
After installation, configure the MCP client. Use the ABSOLUTE path to src/local.ts:
For Claude Desktop (edit claude_desktop_config.json):
{
"mcpServers": {
"paper-search": {
"command": "npx",
"args": ["tsx", "ABSOLUTE_PATH/src/local.ts"],
"env": { "SEMANTIC_SCHOLAR_API_KEY": "<optional-api-key>" }
}
}
}
For Claude Code (run in terminal):
claude mcp add paper-search -- npx tsx ABSOLUTE_PATH/src/local.ts
claude mcp set paper-search --env SEMANTIC_SCHOLAR_API_KEY=<optional-api-key>
For OpenCode (edit opencode.json):
{
"mcp": {
"paper-search": {
"type": "stdio",
"command": "npx",
"args": ["tsx", "ABSOLUTE_PATH/src/local.ts"],
"env": { "SEMANTIC_SCHOLAR_API_KEY": "<optional-api-key>" }
}
}
}
To test it works, ask the user to try: "search for papers about AI hallucination using the search_papers tool"
NOTES:
- No Cloudflare account needed for local setup
- Semantic Scholar API key is optional (provides better rate limits)
- All 11 tools + 2 prompts will be available after restarting the MCP client
- PDF URLs are returned in results — the AI agent can fetch them with its own tools
Development
# Install dependencies
npm install
# Start local stdio server (standalone, no Cloudflare)
SEMANTIC_SCHOLAR_API_KEY=your-key npm run local
# Start Cloudflare dev server (requires .env with OWNER_API_KEY and TEAM_API_KEY)
npm run dev
# Deploy to Cloudflare
npm run deploy
# Type check
npm run type-check
# Test with MCP Inspector
npx @modelcontextprotocol/inspector
Architecture
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ MCP Client │────▶│ Cloudflare │────▶│ Academic APIs │
│ (Claude, etc.) │ │ Worker │ │ (arXiv, PubMed,│
│ Bearer + Key │ │ createMcpHandler │ │ CrossRef, etc)│
└─────────────────┘ └──────────────────┘ └─────────────────┘
│
┌────┴────┐
│ Auth │
│ Bearer │
│ Check │
└─────────┘
Or locally via stdio:
┌─────────────────┐ ┌──────────────────┐
│ MCP Client │────▶│ StdioServer │
│ (stdio config) │ │ Transport │
│ │ │ src/local.ts │
└─────────────────┘ └──────────────────┘
Notes
Google Scholar Limitations
Google Scholar actively blocks automated access, especially from cloud/data-center IPs. The MCP gracefully degrades: if Google Scholar fails (blocked, CAPTCHA), the error is isolated — all other sources still work. For better reliability, you can set a proxy via the GOOGLE_SCHOLAR_PROXY_URL secret.
PDF Access
Search results include pdf_url and url fields. The MCP does NOT download or read PDFs — it returns the URLs so your agent can fetch them using its own tools (fetch, firecrawl MCP, browser, etc.).
IACR ePrint Archive
Not included in v1. The IACR search tool (for cryptography papers) can be added in a future update.
bioRxiv / medRxiv
These APIs filter by category within a 30-day window and may return empty results depending on the query. Try category names like bioinformatics, neuroscience, infectious_diseases, oncology.
Semantic Scholar Cloudflare Block
Semantic Scholar's API blocks Cloudflare egress IPs. The remote Cloudflare Worker version cannot access Semantic Scholar, but the local stdio version works fine. Use the local version if you need Semantic Scholar results.
Sources Not Ported
The paper-search-mcp supports more sources than this version. The following were intentionally omitted for v1:
- IACR (mentioned in README)
- PMC / CORE / EuropePMC / dblp / OpenAIRE / CiteSeerX / DOAJ / BASE / Zenodo / HAL / SSRN / Unpaywall / IEEE / ACM
These can be added as needed. PRs welcome!
Установка Paper Search Mcp Cf
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/cmdaltctr/paper-search-mcp-cfFAQ
Paper Search Mcp Cf MCP бесплатный?
Да, Paper Search Mcp Cf MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Paper Search Mcp Cf?
Нет, Paper Search Mcp Cf работает без API-ключей и переменных окружения.
Paper Search Mcp Cf — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить Paper Search Mcp Cf в Claude Desktop, Claude Code или Cursor?
Открой Paper Search Mcp Cf на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
GitHub
PRs, issues, code search, CI status
автор: 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
автор: mcpdotdirectAmap Maps Mcp Server
MCP server for using the AMap Maps API
автор: duxiaohuiSupabase
Database, auth and storage
автор: 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 Paper Search Mcp Cf with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории development
