Search Zenodo Records
zenodo/search-records
Searches Zenodo records (datasets, software, papers, presentations and more) by text, best match or most recently created first: title, DOI, resource type, licence, creators, keywords, plain-text description, file names and sizes, views and downloads. Metadata only; no file links. Metadata from Zenodo, https://zenodo.org, released under CC0 (e-mail addresses excluded; none are returned). Files are not included and follow each record's own licence. Modified by Eden Engine (fields renamed and reduced; descriptions reduced to plain text). Served by Eden Engine; not an official Zenodo or CERN product.
Price
$0.0026 per call
You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $0.50.
Data source
Metadata from Zenodo, https://zenodo.org, released under CC0 (e-mail addresses excluded; none are returned). Files are not included and follow each record's own licence. Modified by Eden Engine (fields renamed and reduced; descriptions reduced to plain text). Served by Eden Engine; not an official Zenodo or CERN product.
Use it
Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.
Connect once and your AI can find and run this tool, and any other it needs.
// 1. search: find the tool
omnial_search({ query: "what you need" })
// 2. inspect: price and input schema
omnial_inspect({ tool: "zenodo/search-records" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "zenodo/search-records" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "zenodo/search-records", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "zenodo/search-records", input: { /* ... */ } })
// 5. settle: the call is charged when it finishes, nothing to doNot connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.
Pricing
Every charge this tool can incur.
| Charge | Price |
|---|---|
Per call | $0.0026 |
- Updated
- Oct 26, 2026
Input and output schemas
Input schema
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"maxLength": 300,
"minLength": 1,
"description": "Search text or Elasticsearch query string, for example gravitational waves or creators.name:\"Smith, J*\"."
},
"page": {
"type": "integer",
"default": 1,
"maximum": 400,
"minimum": 1,
"description": "Page number, starting at 1."
},
"size": {
"type": "integer",
"default": 10,
"maximum": 25,
"minimum": 1,
"description": "Results per page, 1 to 25, default 10."
},
"sort": {
"enum": [
"bestmatch",
"mostrecent"
],
"type": "string",
"default": "bestmatch",
"description": "bestmatch (default) or mostrecent, which orders by when the record was created on Zenodo, newest first (not by publication date)."
},
"type": {
"enum": [
"publication",
"poster",
"presentation",
"dataset",
"image",
"video",
"software",
"lesson",
"other"
],
"type": "string",
"description": "Restrict to one resource type. Leave out for all."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "Zenodo record id, the id get-record takes."
},
"doi": {
"type": [
"string",
"null"
],
"description": "DOI of this version."
},
"files": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": [
"string",
"null"
],
"description": "File name."
},
"checksum": {
"type": [
"string",
"null"
],
"description": "Checksum, md5:..."
},
"size_bytes": {
"type": [
"integer",
"null"
],
"description": "Size in bytes."
}
},
"description": "A file.",
"additionalProperties": true
},
"description": "The first 50 files; names and sizes only, no download links."
},
"title": {
"type": [
"string",
"null"
],
"description": "Title."
},
"views": {
"type": [
"integer",
"null"
],
"description": "Page views of this version."
},
"license": {
"type": [
"string",
"null"
],
"description": "Licence id of the record's files, for example cc-by-4.0."
},
"version": {
"type": [
"string",
"null"
],
"description": "Version label."
},
"creators": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": [
"string",
"null"
],
"description": "Name."
},
"orcid": {
"type": [
"string",
"null"
],
"description": "ORCID iD."
},
"affiliation": {
"type": [
"string",
"null"
],
"description": "Affiliation."
}
},
"description": "A creator.",
"additionalProperties": true
},
"description": "The first 20 creators."
},
"keywords": {
"type": "array",
"items": {
"type": "string",
"description": "A keyword."
},
"description": "Keywords."
},
"language": {
"type": [
"string",
"null"
],
"description": "Language code."
},
"page_url": {
"type": [
"string",
"null"
],
"description": "Record page on zenodo.org."
},
"downloads": {
"type": [
"integer",
"null"
],
"description": "File downloads of this version."
},
"file_count": {
"type": "integer",
"description": "Number of files."
},
"concept_doi": {
"type": [
"string",
"null"
],
"description": "DOI that always resolves to the latest version."
},
"description": {
"type": [
"string",
"null"
],
"description": "Description as plain text, cut to 2000 characters."
},
"access_right": {
"type": [
"string",
"null"
],
"description": "open, embargoed, restricted or closed."
},
"creator_count": {
"type": "integer",
"description": "Number of creators."
},
"resource_type": {
"type": [
"string",
"null"
],
"description": "For example dataset, software, publication, presentation."
},
"publication_date": {
"type": [
"string",
"null"
],
"description": "Publication date, YYYY-MM-DD."
}
},
"description": "A record.",
"additionalProperties": true
},
"description": "Matching records."
},
"total": {
"type": [
"integer",
"null"
],
"description": "Records matching."
}
},
"additionalProperties": true
}