Awesome Paper MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MINERU_API_KEY | No | MinerU API key. Enables PDF-to-markdown parsing for the papers_helper backend. | |
| OPENREVIEW_PASSWORD | No | OpenReview password. Enables non-anonymous OpenReview queries for the openreview and openreview_classic backends. | |
| OPENREVIEW_USERNAME | No | OpenReview username. Enables non-anonymous OpenReview queries for the openreview and openreview_classic backends. | |
| SEMANTIC_SCHOLAR_API_KEY | No | Semantic Scholar API key. Removes Semantic Scholar 429 rate limits for the scholar, multisearch, and resp backends. | |
| PAPER_SEARCH_MCP_CORE_API_KEY | No | CORE API key. Enables CORE full-text search for the multisearch backend. | |
| PAPER_SEARCH_MCP_IEEE_API_KEY | No | IEEE API key. Enables IEEE Xplore metadata for the multisearch backend. | |
| PAPER_SEARCH_MCP_UNPAYWALL_EMAIL | No | Email for Unpaywall. Enables Unpaywall open-access PDF fallback for the multisearch backend. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_sourcesA | List every paper source available through this server, with its capabilities, tool names and any missing credentials. Call this first to decide which backend to use. |
| search_papersA | Search for papers across one or many sources at once. Default sources are the ones that need no credentials: arxiv, multisearch (Semantic Scholar / Crossref / OpenAlex / DBLP / PubMed ...), resp and google_scholar. Args: query: Keywords or a paper title. sources: Backend names from list_sources(). Omit for the default set. max_results: Results per source. year_from: Only papers from this year onwards (where supported). |
| get_paperA | Fetch metadata / abstract for one paper by its id. Args: paper_id: arXiv id (2401.04088), DOI (10.1234/xyz), OpenReview forum id, or a Semantic Scholar paper id. source: Force a specific backend. Omit to auto-detect. |
| get_paper_textA | Download a paper and return its readable text. Args:
paper_id: arXiv id, DOI, or backend-specific id.
source: Backend to use. |
| call_source_toolA | Call any tool from any backend by name. This is the escape hatch for backend-specific features that have no
cross-source wrapper (e.g. Args: backend: Backend name from list_sources(). tool: Tool name as listed by list_sources(). arguments: Tool arguments as a JSON object. |
| run_research_pipelineB | Run the full academic research pipeline on a research question. Stages: refine the question into a hypothesis, generate analysis code, execute it, then compose a structured report. Uses the sercantas Academic-Research-MCP-Suite backends. Args: question: A vague or broad research question. output_style: APA, ASA or generic. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 6 tools
The core wrappers (list_sources, search_papers, get_paper, get_paper_text) target clearly distinct steps, and the metadata-vs-full-text split is explicitly documented. However, call_source_tool is a generic escape hatch that can perform the same operations as every wrapper, so an agent could plausibly misselect it instead of search_papers or get_paper without reading carefully.
All six tools use snake_case with a leading verb (list_, search_, get_, call_, run_), giving a predictable verb_noun pattern throughout. The paired get_paper / get_paper_text naming even signals their relationship clearly.
Six tools is lean for a multi-backend aggregation server and each has a distinct role: discovery, search, metadata, full text, escape hatch, and pipeline. Nothing feels redundant or padded.
The surface covers the full lifecycle: discover backends, search across them, fetch metadata, retrieve full text, and reach any backend-specific feature (reviews, LaTeX, conference listings) via call_source_tool. Citation-graph traversal is not a dedicated wrapper but is reachable through the escape hatch, so there are no real dead ends.