DataCite MCP Server
Provides read-only access to DataCite's index of 125M+ research DOIs, enabling full-text search, metadata retrieval, citation formatting (APA, MLA, Chicago, etc.), and exploration of relationships like citations and references.
Allows searching for DOIs associated with a researcher by ORCID iD or name, enabling discovery of a researcher's works indexed by DataCite.
Supports obtaining repository summaries and metadata quality reports for Zenodo (and other DataCite member repositories), with automatic resolution of repository names to DataCite client IDs.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@DataCite MCP Serverfind top 10 datasets about climate change"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
DataCite MCP Server
A Model Context Protocol (MCP) server that wraps the DataCite REST API, giving Claude and other MCP clients read-only access to DataCite's index of 125M+ research DOIs. No API key is required. The server runs as a local stdio process and communicates with Claude Desktop via the MCP protocol, enabling natural-language queries against the full DataCite catalogue: searching by keyword, person, funder, or repository; retrieving full metadata records; and exploring relationships between research outputs.
Claude Desktop Configuration
Add the following to your claude_desktop_config.json (found at ~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"datacite": {
"command": "node",
"args": ["/Users/[user_name]/Claude/projects/datacite/dist/index.js"]
}
}
}Related MCP server: OpenAIRE MCP Server
Build Instructions
cd [path-to-project]
npm install
npm run buildTo inspect the server interactively:
npm run inspectorAvailable Tools
Tool | Description |
| Full-text search across DataCite's 125M+ DOI index with filters for resource type, funder, year, repository, and more. Supports cursor-based pagination. |
| Retrieve complete metadata for a single DOI. Accepts any common DOI format (bare, URL, |
| Format a DOI as a formatted citation string. Supports APA, MLA, Chicago, Harvard, IEEE, Vancouver, BibTeX, and CSL JSON. |
| Retrieve view, download, and citation counts for a DOI. Optionally include time-series arrays. |
| Explore the relationship graph for a DOI — citations, references, versions, and parts. |
| Find all DOIs associated with a researcher by ORCID iD or name. |
| Browse DataCite member repositories (clients) with optional search and filtering. |
| Fetch the raw DataCite Metadata Schema XML for a DOI (base64-decoded). |
Available Prompts
Prompts are pre-built workflows invocable from Claude Desktop's prompt menu (⌘K → "Use a prompt").
Prompt | Arguments | Description |
|
| Find the top 10 most relevant DataCite records for a resource type and subject area. Returns a ranked table with repository/year observations and a suggested follow-up. |
|
| Full metadata quality and activity report for a repository. Pass a common name like |
|
| Researcher profile from DataCite records. Pass an ORCID iD ( |
Available Resources
Resource URI | Description |
| The complete DataCite |
| All DataCite member providers (organisations). |
| All DataCite repository clients. |
| Full metadata record for a given DOI as JSON. |
| Works that cite the given DOI. |
| Works cited by the given DOI. |
| Metadata for a specific DataCite provider. |
| Metadata for a specific DataCite repository client. |
Environment Variables
Copy .env.example to .env and adjust as needed. All variables are optional — defaults work out of the box.
Variable | Default | Description |
|
| URL included in the HTTP User-Agent header |
| (empty) | Contact email for DataCite's polite pool |
|
| Max API requests per second |
|
| DOI cache TTL (1 hour) |
|
| Search cache TTL (5 minutes) |
|
| Static data cache TTL (24 hours) |
Available Tools
9 toolsformat_citationB
Format a DOI as a citation string. Supports APA, MLA, Chicago, Harvard, IEEE, Vancouver, BibTeX, and CSL JSON styles.
| Name | Required | Description | Default |
|---|---|---|---|
| doi | Yes | ||
| style | No | apa | |
| locale | No | en-US |
get_doiA
Retrieve complete metadata for a single DOI. Accepts any common DOI format (bare, URL, doi: prefix). Optionally includes the raw DataCite Schema XML.
| Name | Required | Description | Default |
|---|---|---|---|
| doi | Yes | ||
| include_xml | No |
get_doi_metricsA
Retrieve view, download, and citation counts for a DOI. Optionally include monthly time-series arrays.
| Name | Required | Description | Default |
|---|---|---|---|
| doi | Yes | ||
| include_time_series | No |
get_doi_schema_xmlA
Fetch the raw DataCite Metadata Schema XML for a DOI (base64-decoded). Useful for inspecting the complete, canonical metadata record.
| Name | Required | Description | Default |
|---|---|---|---|
| doi | Yes |
get_repositoryA
Retrieve full metadata for a single DataCite repository (client) by its ID. Returns name, symbol, alternateName, clientType, isActive, re3data, opendoar, issn, prefixes, language, year, created, updated, and more. Pass includeStats:true to add doiCount (fetched via a secondary /dois call). Note: per-client view/download/citation counts are not exposed by the DataCite API.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | DataCite client ID (e.g. 'cern.zenodo', 'dryad.dryad'). Use list_repositories to discover IDs. | |
| includeStats | No | When true, adds doiCount fetched via /dois?client-id={id}&page[size]=0. Returns doiCount:null if the secondary call fails. Note: viewCount/downloadCount/citationCount are not available from the DataCite API. |
list_repositoriesA
Browse DataCite-registered repositories and data centers. Supports full-text search (Elasticsearch, matches name/alternateName/description) and filtering by clientType or providerId. Returns id, name, symbol, alternateName, clientType, isActive, re3data, prefixes, language, year, created/updated timestamps, and more. Pass includeStats:true to add doiCount (fetched via secondary /dois calls, one per result). Note: viewCount/downloadCount/citationCount are not available from the DataCite API and will not appear even when includeStats:true.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | ||
| clientType | No | repository | periodical | service | igsnCatalog | raidAgency | |
| providerId | No | ||
| includeStats | No | ||
| page_size | No |
search_by_personC
Find all DOIs associated with a researcher by ORCID iD or name.
| Name | Required | Description | Default |
|---|---|---|---|
| orcid | No | ||
| name | No | ||
| role | No | any | |
| resource_type | No | ||
| page_size | No |
search_doisA
Search DataCite's index of 125M+ research DOIs. Supports full-text queries and filters by resource type, funder, year, repository, and more.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | ||
| resource_type | No | ||
| funder_ror_id | No | ||
| affiliation_ror_id | No | ||
| client_id | No | ||
| provider_id | No | ||
| prefix | No | ||
| published_year | No | ||
| sort | No | ||
| page_size | No | ||
| page_cursor | No |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
9 tool updates
v0.4.0- First observed
format_citation - First observed
get_doi - First observed
get_doi_metrics - First observed
get_doi_schema_xml - First observed
get_related_works - First observed
get_repository - First observed
list_repositories - First observed
search_by_person - First observed
search_dois
TDQS
Scored across 9 tools
Each tool has a clearly distinct purpose: formatting citations, retrieving metadata, metrics, schema XML, related works, repository info, listing, and searching by person or general query. No overlap in functionality.
All tool names follow a consistent verb_noun pattern (e.g., format_citation, get_doi, list_repositories, search_dois). The naming is uniform and predictable.
9 tools is well within the ideal range for a focused server. Each tool serves a specific purpose without redundancy, and the count feels appropriate for the scope of DataCite access.
The tool set covers all major read operations for DataCite DOIs: retrieval, search, metrics, citation formatting, schema, related works, and repository info. Minor gaps exist (e.g., no write/update operations, no per-repository stats), but these are consistent with a read-only API focus.
Maintenance
Related MCP Connectors
Search DataCite datasets and software, fetch DOI metadata, trace relations, format citations.
Search 150M+ academic works, journals, and funders via Crossref API.
Search 250M+ academic works, citation graphs, DOIs, and institutional research via OpenAlex.
Search and resolve Zenodo datasets, software, and publications by DOI; trace versions and funding.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to search academic literature and retrieve detailed metadata for papers, journals, and funding organizations via the Crossref database. It supports DOI-based lookups and keyword searches to facilitate programmatic access to scholarly research data.7-
- AlicenseAqualityDmaintenanceEnables AI assistants to explore the OpenAIRE Research Graph and ScholExplorer citation index, discovering citation relationships and retrieving metadata for publications, datasets, and software.21Apache 2.0
- FlicenseAqualityDmaintenanceEnables searching and retrieving scholarly metadata from Crossref's public REST API, including works, journals, funders, and members, without requiring an API key.101-
- AlicenseNot gradedqualityBmaintenanceProvides access to DataCite DOIs for research datasets, enabling searching and retrieval of dataset metadata.99 npmMIT