Crossref

liveResearchScience

Search and retrieve academic paper metadata — DOIs, authors, citations, and journals via Crossref

3tools
0msauth
free tier50 calls/day

Tools

search_worksrequired: query

Search academic papers, books, and datasets via Crossref. For "search works titled X" / finding a SPECIFIC paper by its title, pass `title` (title-scoped — ranks the exact paper first). Beyond keyword

Parameters
NameTypeDescription
queryreqstringSearch query (e.g., "climate change machine learning")
limitoptnumberNumber of results to return (1-100, default 10)
▶Try it
get_workrequired: doi

Get full metadata for a publication by DOI (e.g., "10.1038/nature12373"). Returns title, authors, abstract, journal, publisher, citations, and subjects.

Parameters
NameTypeDescription
doireqstringDOI of the work (e.g., "10.1038/nature12373")
▶Try it
get_journalrequired: issn

Get the 5 most recent works from a journal by ISSN (e.g., "2041-1723"). Returns titles, authors, DOIs, and publication dates.

Parameters
NameTypeDescription
issnreqstringJournal ISSN (e.g., "1476-4687" for Nature)
▶Try it

Test with curl

The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.

List available tools
bash
curl -X POST https://gateway.pipeworx.io/crossref/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Call a tool
bash
curl -X POST https://gateway.pipeworx.io/crossref/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"search_works","arguments":{"query": "hello"}}}'

Use with the SDK

Install @pipeworx/sdk to call tools from any TypeScript/Node project.

TypeScript
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("search_works", {"query":"example"});
ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("search and retrieve academic paper metadata — dois, authors, citations, and journals via crossref");