search_dois

Pack: datacite · Endpoint: https://gateway.pipeworx.io/datacite/mcp

Search DataCite-registered DOIs (research datasets, software, etc.). Filter by free-text query, resource type, year, publisher, or affiliation, and SORT by relevance, recency, citations, downloads, or views — e.g. “most-downloaded climate datasets” (sort=downloads), “newest genomics datasets” (sort=recent), “most-cited datasets on X” (sort=citations). Returns DOI, title, creators, publisher, type, year, and citation/download/view counts.

Parameters

NameTypeRequiredDescription
querystringnoFree-text query (titles, descriptions, creators)
resource_typestringnoDataset | Software | Text | Image | Sound | Other (case-sensitive)
yearnumbernoPublication year
publisherstringnoPublisher name filter
affiliationstringnoCreator affiliation
sortstringnoResult ordering: relevance (default), recent (newest registered), oldest, published (newest publication year), citations (most-cited), downloads (most-downloaded), views (most-viewed).
page_sizenumberno1-1000 (default 25)
pagenumberno1-based page (default 1)

Example call

Arguments

{
  "query": "climate change temperature anomaly",
  "resource_type": "Dataset",
  "year": 2023
}

curl

curl -X POST https://gateway.pipeworx.io/datacite/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_dois","arguments":{"query":"climate change temperature anomaly","resource_type":"Dataset","year":2023}}}'

TypeScript (@pipeworx/sdk)

import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();

const result = await pipeworx.call('search_dois', {
  "query": "climate change temperature anomaly",
  "resource_type": "Dataset",
  "year": 2023
});

More examples

{
  "query": "machine learning",
  "resource_type": "Software",
  "publisher": "Zenodo",
  "page_size": 50,
  "page": 1
}

Response shape

Always returns: total, total_pages, returned, results

FieldTypeDescription
totalnumberTotal number of DOIs matching the query
total_pagesnumberTotal number of pages available
returnednumberNumber of results returned in this page
resultsarrayArray of DOI summary records
Full JSON Schema
{
  "type": "object",
  "properties": {
    "total": {
      "type": "number",
      "description": "Total number of DOIs matching the query"
    },
    "total_pages": {
      "type": "number",
      "description": "Total number of pages available"
    },
    "returned": {
      "type": "number",
      "description": "Number of results returned in this page"
    },
    "results": {
      "type": "array",
      "description": "Array of DOI summary records",
      "items": {
        "type": "object",
        "properties": {
          "doi": {
            "type": [
              "string",
              "null"
            ],
            "description": "Digital Object Identifier"
          },
          "title": {
            "type": [
              "string",
              "null"
            ],
            "description": "Primary title of the resource"
          },
          "creators": {
            "type": "array",
            "description": "List of creator names",
            "items": {
              "type": "string"
            }
          },
          "publisher": {
            "type": [
              "string",
              "null"
            ],
            "description": "Publisher name"
          },
          "year": {
            "type": [
              "number",
              "null"
            ],
            "description": "Publication year"
          },
          "resource_type": {
            "type": [
              "string",
              "null"
            ],
            "description": "General resource type (Dataset, Software, etc.)"
          },
          "url": {
            "type": [
              "string",
              "null"
            ],
            "description": "URL to the resource"
          },
          "citation_count": {
            "type": [
              "number",
              "null"
            ],
            "description": "Number of citations"
          },
          "download_count": {
            "type": [
              "number",
              "null"
            ],
            "description": "Number of downloads"
          },
          "view_count": {
            "type": [
              "number",
              "null"
            ],
            "description": "Number of views"
          },
          "datacite_url": {
            "type": [
              "string",
              "null"
            ],
            "description": "URL to DataCite commons page for this DOI"
          }
        },
        "required": [
          "doi",
          "title",
          "creators",
          "publisher",
          "year",
          "resource_type",
          "url",
          "citation_count",
          "download_count",
          "view_count",
          "datacite_url"
        ]
      }
    }
  },
  "required": [
    "total",
    "total_pages",
    "returned",
    "results"
  ]
}

Connect

Add this to your MCP client config, or use one-click install buttons:

{
  "mcpServers": {
    "datacite": {
      "url": "https://gateway.pipeworx.io/datacite/mcp"
    }
  }
}

See Getting Started for client-specific install steps.

Regenerated from source · build June 26, 2026