Crossref MCP — Academic DOI & Literature Metadata avatar

Crossref MCP — Academic DOI & Literature Metadata

Pricing

Pay per usage

Go to Apify Store
Crossref MCP — Academic DOI & Literature Metadata

Crossref MCP — Academic DOI & Literature Metadata

AI agent access to 120M+ academic papers, books, and conference proceedings via Crossref API. Search works, get detailed metadata, fetch references, and export BibTeX.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

AutomateLab

AutomateLab

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

9 hours ago

Last modified

Categories

Share

Type: Apify MCP Actor (JavaScript)
Purpose: AI agent access to 120M+ academic papers, books, and conference proceedings via Crossref API
Stack: Apify SDK, Node.js 20+, MCP protocol, standby mode

Quick Start

cd ~/Projects/apify-actors/crossref-mcp
apify run # Local development
apify push # Deploy to Apify

Key Files

  • src/main.js — MCP handler entry point with handleTool export
  • .actor/actor.json — Standby mode enabled (usesStandbyMode: true)
  • Dockerfile — Node.js 24 runtime
  • package.json — Dependencies (apify ^3.6.0)

Architecture

  • Standby MCP via handleRequest export
  • Readiness probe at GET / (checks x-apify-container-server-readiness-probe header)
  • PPE (Pay-Per-Event) charging for each tool invocation
  • ERROR_RETRY with exponential backoff (3 retries, 2s base delay)
  • Crossref API at https://api.crossref.org/works

Tools

ToolDescriptionPPE
searchWorksSearch academic works by query, author, DOI, ISSN, date range$0.03
getWorkDetailsGet full metadata for a work by DOI (authors, abstract, funding)$0.02
getReferencesGet bibliography/reference list for a work by DOI$0.04
exportBibTeXExport works as BibTeX, RIS, or JSON citation format$0.01

API Operations

searchWorks

Search for academic works by keyword, author, or filters.

{
"operation": "searchWorks",
"parameters": {
"query": "machine learning",
"author": "Hinton",
"type": "journal-article",
"from_date": "2020-01-01",
"max_results": 20
}
}

Returns: Array of works with title, authors, DOI, publication date, journal, abstract, and citation counts.

getWorkDetails

Get full metadata for a specific work by DOI.

{
"operation": "getWorkDetails",
"parameters": {
"doi": "10.1038/nature12373",
"include_references": true
}
}

Returns: Complete metadata including authors with ORCIDs, abstract, funding info, license, references, and more.

getReferences

Get the reference list (bibliography) for a work.

{
"operation": "getReferences",
"parameters": {
"doi": "10.1038/nature12373",
"max_references": 50
}
}

Returns: Array of references with DOI, title, author, year, journal, pages.

exportBibTeX

Export one or more works as citation strings.

{
"operation": "exportBibTeX",
"parameters": {
"dois": ["10.1038/nature12373", "10.1126/science.1259856"],
"format": "bibtex"
}
}

Returns: Formatted citation string(s) in BibTeX, RIS, or JSON format.

Input Schema

The actor accepts an INPUT JSON with operation and parameters:

{
"operation": "searchWorks",
"parameters": {
"query": "deep learning",
"max_results": 10
}
}

PPE Pricing

This actor uses Apify's Pay-Per-Event pricing model. Each tool invocation incurs a small charge to cover Crossref API costs:

EventCharge
searchWorks$0.03
getWorkDetails$0.02
getReferences$0.04
exportBibTeX$0.01

Error Handling & Retry

The actor implements automatic retry with exponential backoff:

  • 3 retries on API failure
  • Base delay: 2 seconds, doubling each retry (2s → 4s → 8s)
  • Rate limit handling: Detects 429 responses, waits for Retry-After header

Data Sources

  • Crossref API: The official REST API for Crossref metadata
  • Coverage: 120M+ works from 90,000+ publishers
  • Types: Journal articles, books, conference proceedings, datasets, preprints, etc.

MCP Protocol

This actor implements the Model Context Protocol (MCP) for AI agent integration:

  • initialize — Returns server capabilities
  • tools/list — Returns available tools and schemas
  • tools/call — Executes a tool by name with parameters
  • handleRequest — Legacy operation handler (operation + parameters)

Deployed Actor

The actor runs at: crossref-mcp.apify.actor

Rate Limits

The Crossref API has rate limits:

  • Polite pool: 50 requests/second (with email)
  • Default: 25 requests/second
  • Unauthenticated: Heavily rate limited

The actor uses the polite pool (mailto=apify@example.com) and implements retry on 429 responses.

Notes

  • All dates are in ISO format (YYYY-MM-DD)
  • DOIs are cleaned automatically (handles https://doi.org/ prefixes)
  • Abstracts are stripped of HTML tags
  • BibTeX output escapes LaTeX special characters
  • References are capped at 100 per request to avoid timeouts