Skip to main content
Glama
czwziy

scholar-toolkit-mcp

by czwziy

download_paper

Retrieve academic papers by source and identifier, automatically falling back to open access repositories, Unpaywall, and Sci-Hub for successful download.

Instructions

Try source-native download, OA repositories, Unpaywall, then optional Sci-Hub.

Args: source: Source name (arxiv, medrxiv, semantic, crossref, pubmed, pmc, dblp, openalex). paper_id: Source-native paper identifier. doi: Optional DOI used for repository/unpaywall/Sci-Hub fallback. title: Optional title used for repository/Sci-Hub fallback when DOI is unavailable. save_path: Directory to save downloaded files. use_scihub: Whether to fallback to Sci-Hub after OA attempts fail. scihub_base_url: Sci-Hub mirror URL for fallback. Returns: Download path on success or explanatory error message.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
doiNo
titleNo
sourceYes
paper_idYes
save_pathNo
use_scihubNo
scihub_base_urlNohttps://sci-hub.se

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It discloses the multi-source fallback, optional Sci-Hub, and the return value (path or error). It could add details on error types or side effects (e.g., file writing).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured with Args and Returns sections, front-loaded with the core purpose. Slightly verbose but each sentence is informative; no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 7 parameters and no annotations, the description covers purpose, parameters, and return. It mentions the output is a path or error, which aligns with the output schema. Missing guidance on prerequisites or potential side effects like overwriting files.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description adds meaning for all 7 parameters: it explains that doi/title are optional fallback keys, save_path is a directory, use_scihub enables a fallback, and scihub_base_url sets the mirror. This fully compensates for the lack of schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description specifically states 'Try source-native download, OA repositories, Unpaywall, then optional Sci-Hub', providing a clear verb+resource with a defined fallback chain. This distinguishes it from siblings like 'download_by_cite_key' which uses a different identifier.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the fallback strategy and parameter roles (e.g., doi/title for fallback) but does not explicitly state when not to use this tool or mention alternatives. It implies a broad downloading use case.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/czwziy/paper-toolkit-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server