zenodo-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SSE_HOST | No | Bind address for SSE mode | 127.0.0.1 |
| SSE_PORT | No | Port for SSE mode | 8000 |
| LOG_LEVEL | No | Level of logging (outputs to stderr to protect transport channel) | INFO |
| TRANSPORT | No | Transport protocol: stdio (local subprocess) or sse (network) | stdio |
| CACHE_ENABLED | No | Enables in-memory TTL cache | true |
| ZENODO_API_URL | No | API URL (use https://sandbox.zenodo.org/api for sandbox) | https://zenodo.org/api |
| REQUEST_TIMEOUT | No | Network request timeout in seconds | 30 |
| ZENODO_ACCESS_TOKEN | No | Optional token for higher rate limits (100 vs 25 results/page) |
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 |
|---|---|
| cite_recordA | Generate a citation for a Zenodo record in a given style. Provide either Parametersrecord_id : int, optional The Zenodo record ID. doi : str, optional The DOI of the record. style : str Citation style: apa, bibtex, ris, mla, chicago, harvard (default: apa). Returnsdict Citation text, style used, and DOI. |
| export_metadataA | Export record metadata in a structured format. Parametersrecord_id : int The Zenodo record ID. format : str Output format: json, yaml, bibtex, ris (default: json). Returnsstr Formatted metadata string. |
| find_training_datasetsA | Find and evaluate datasets suitable for training ML models. Parameterstask : str Machine learning task description (e.g. "image classification", "ner"). modality : str, optional Filter by modality: image, text, audio, tabular, video. license_filter : str License requirements: permissive (MIT, Apache, CC-BY, CC0), copyleft (GPL, CC-BY-SA), any. min_size_mb : float, optional Minimum total file size. max_size_mb : float, optional Maximum total file size. Returnslist[dict] Ranked dataset recommendations tailored for machine learning. |
| generate_data_cardA | Produce a concise, structured AI-friendly summary ("data card") of a dataset. Extracts modality, file formats, license, citations, intended use, and limitations. Parametersrecord_id : int The Zenodo record ID. Returnsdict Structured data card. |
| evaluate_reusabilityB | Evaluate and score a Zenodo record's reusability. Grades license quality, metadata completeness, documentation length, file format openness, and versioning. Parametersrecord_id : int The Zenodo record ID. Returnsdict Reusability score (0-100), detailed breakdown, and recommendations. |
| build_research_bundleA | Assemble a reproducible bundle of related scientific items. Traverses relationships to group the paper, dataset, source code, and citations into a unified reproducibility package. Parametersrecord_id : int The Zenodo record ID. Returnsdict Research bundle metadata containing linked items, all citations, and a reproducibility score. |
| compare_recordsA | Compare metadata, stats, and sizes of two Zenodo records side-by-side. Parametersrecord_id_a : int First record ID. record_id_b : int Second record ID. Returnsdict Structured comparison of differences in resource type, license, date, size, stats, and file counts. |
| recommend_datasetA | Provide ranked dataset recommendations for a natural language request. Finds datasets, processes metadata details, and scores them on completeness, popularity, and documentation. Parametersquery : str Natural language prompt (e.g. "I need an image dataset for object detection"). page : int Page of results. size : int Number of recommendations. Returnslist[dict] List of dataset recommendations with matching reasons. |
| resolve_doiA | Resolve a DOI to its Zenodo record metadata. Supports full DOIs ( Parametersdoi : str The DOI to resolve. Returnsdict Record summary with title, DOI, creators, date, type, license, and URL. Raises an error if the DOI is invalid or not found on Zenodo. |
| search_by_licenseA | Find records under a specific license. Parameterslicense : str License identifier (e.g. "MIT", "Apache-2.0", "CC-BY-4.0", "cc0-1.0"). query : str, optional Additional search query parameters. sort : str Sort order. page : int Page number. size : int Results per page. Returnslist[dict] List of matching record summaries. |
| inspect_licenseA | Analyze the properties of a license. Provide either Parametersrecord_id : int, optional Zenodo record ID to inspect. license_id : str, optional SPDX license identifier (e.g. "MIT"). Returnsdict License info properties (commercial use, open access, attribution, etc.). |
| get_recordB | Retrieve complete metadata for a Zenodo record. Parametersrecord_id : int The numeric Zenodo record ID. Returnsdict Full record metadata including abstract, authors, keywords, license, funding, communities, files, related identifiers, and version info. |
| list_filesA | List all files in a Zenodo record with metadata and download URLs. The agent receives URLs and can use them as needed. No files are written to disk by this tool. Parametersrecord_id : int The numeric Zenodo record ID. Returnslist[dict] List of files with filename, size, type, checksum, and download URL. |
| related_recordsA | Find records related to the given record. Extracts related identifiers from the record metadata and groups them by relationship type (e.g. isSupplementTo, cites, isPartOf). Parametersrecord_id : int The numeric Zenodo record ID. Returnsdict Related records grouped by relationship type. |
| search_recordsA | Search Zenodo records with rich filtering. Parametersquery : str Free-text search query (supports Elasticsearch syntax). communities : str, optional Filter by community ID (e.g. "zenodo", "openaire"). creators : str, optional Filter by creator name. license : str, optional Filter by license (e.g. "MIT", "CC-BY-4.0"). keywords : str, optional Filter by keyword. resource_type : str, optional Filter by type: dataset, publication, software, image, video, lesson, poster, presentation. access_right : str, optional Filter by access: open, closed, embargoed, restricted. date_from : str, optional Start date (YYYY-MM-DD). date_to : str, optional End date (YYYY-MM-DD). sort : str Sort order: "bestmatch" (default) or "mostrecent". page : int Page number (default 1). size : int Results per page (default 10, max 100). Returnslist[dict] List of record summaries with title, DOI, creators, date, type, license, and URL. |
| search_by_communityA | Search for records within a specific Zenodo community. Parameterscommunity : str Community ID (e.g. "zenodo", "openaire", "cern"). query : str, optional Additional search query to filter within the community. sort : str Sort order: "bestmatch" or "mostrecent". page : int Page number. size : int Results per page. Returnslist[dict] List of matching record summaries. |
| search_by_funderA | Search for records funded by a specific organization. Parametersfunder : str Funder name (e.g. "NSF", "European Commission", "NIH"). query : str, optional Additional search query. sort : str Sort order. page : int Page number. size : int Results per page. Returnslist[dict] List of matching record summaries. |
| latest_versionA | Get the latest version and full version timeline of a record. Parametersrecord_id : int Any version's record ID — the tool finds all versions automatically. Returnsdict Latest version summary, list of all versions with dates and DOIs, and total version count. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Agostynah/Zenodo-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server