Research Papers MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
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 |
|---|---|
| search_papersA | General purpose search for academic papers from sources like arXiv. Best for complex queries. Args: query: Search query using arXiv syntax (e.g., 'ti:"quantum computing" AND au:"John Preskill"'). max_results: Max number of papers to return. sort_by: Sort order ('relevance', 'lastUpdatedDate', 'submittedDate'). sort_order: Sort direction ('ascending', 'descending'). |
| find_papers_by_authorA | Finds recent academic papers by a specific author's name from sources like arXiv. Args: author_name: The full name of the author to search for (e.g., "Geoffrey Hinton"). max_results: Max number of papers to return. |
| get_latest_from_categoryA | Gets the most recently submitted papers from a specific arXiv category. Args: category: The category code to search (e.g., 'cs.LG', 'astro-ph.CO'). max_results: Max number of papers to return. |
| get_paper_by_idB | Retrieves full details for a single paper using its arXiv ID. |
| get_papers_by_idsA | Retrieves full details for a list of papers using their arXiv IDs from sources like arXiv. Args: arxiv_ids: A list of arXiv IDs (e.g., ['2307.09288', '1706.03762']). |
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 5 tools
Tools are mostly distinct: search, get by ID, get by author, get latest by category, and batch get by IDs. There is some overlap between search_papers and find_papers_by_author (since search can query by author), and between get_paper_by_id and get_papers_by_ids (single vs multiple), but descriptions help clarify the intended use.
Names follow a verb-first snake_case pattern (search, get, find). However, there is inconsistency in how the object is specified: some include 'papers' (search_papers, get_papers_by_ids), one uses the singular 'paper' (get_paper_by_id), and one omits the object entirely (get_latest_from_category). This minor variation is still readable and predictable.
With 5 tools, the set is well-scoped for a research paper retrieval server. Each tool addresses a distinct access pattern (search, single lookup, author lookup, category listing, batch retrieval) without unnecessary bloat.
The core retrieval needs are covered: general search, paper details, author-based lookup, category-based listing, and batch retrieval. Minor gaps exist, such as no way to list all papers in a category (only latest) or search by title specifically, but search_papers can work around these. Overall, the surface is reasonably complete for a read-only academic paper API.