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) |
Capabilities
Features and capabilities supported by this server
| 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
- 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