Crossref Journal by ISSN (Publisher, DOI Counts and Metadata Coverage)
crossref/journal-by-issn
Returns Crossref's record for one journal, found by any of its ISSNs (print or electronic): title, publisher, ISSNs with their types, DOI counts (total, current meaning the last three calendar years, and older back file), DOIs per year, and the share of its works that carry licences, references, ORCIDs, funders, abstracts and similar metadata, current and back file separately. The dois-by-issued-year list is ordered by count, not by year, and the coverage-type.all block can hold values above 1, so use the current and backfile figures. An ISSN Crossref does not hold is a validation error. Metadata from Crossref (api.crossref.org); bibliographic metadata is facts reusable without restriction.
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 $5.
Data source
Metadata from Crossref (api.crossref.org). Crossref's bibliographic metadata is facts, not subject to copyright, and its own data is released as CC0; abstracts are publisher or author copyright and are never returned. Served by Eden Engine; not an official Crossref 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: "crossref/journal-by-issn" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "crossref/journal-by-issn" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "crossref/journal-by-issn", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "crossref/journal-by-issn", 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 20, 2026
Input and output schemas
Input schema
{
"type": "object",
"required": [
"issn"
],
"properties": {
"issn": {
"type": "string",
"pattern": "^\\d{4}-?\\d{3}[\\dXx]$",
"description": "A journal ISSN, print or electronic, with or without the hyphen: 0028-0836 or 00280836. Case of a final X does not matter."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"required": [
"status",
"message"
],
"properties": {
"status": {
"type": "string",
"description": "ok on success."
},
"message": {
"type": "object",
"required": [
"title",
"counts"
],
"properties": {
"ISSN": {
"type": "array",
"items": {
"type": "string"
},
"description": "Every ISSN of the journal."
},
"flags": {
"type": "object",
"description": "Booleans: whether the publisher deposits each kind of metadata at all, current and backfile.",
"additionalProperties": true
},
"title": {
"type": "string",
"description": "The journal title."
},
"counts": {
"type": "object",
"description": "total-dois, current-dois (published in the current calendar year or the two before) and backfile-dois (older). current plus backfile equals total.",
"additionalProperties": true
},
"coverage": {
"type": "object",
"description": "Shares between 0 and 1 of the journal's works that carry each kind of metadata, as <kind>-current and <kind>-backfile.",
"additionalProperties": true
},
"subjects": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Subject classification. Empty on every journal checked; do not rely on it."
},
"issn-type": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Each ISSN with its type: print, electronic or link."
},
"publisher": {
"type": "string",
"description": "The publisher as deposited."
},
"breakdowns": {
"type": "object",
"description": "dois-by-issued-year: [year, count] pairs ordered by count, highest first, not by year; they sum to total-dois.",
"additionalProperties": true
},
"coverage-type": {
"type": "object",
"description": "The same shares as current and backfile objects, plus an all object that can hold values above 1 and must not be used.",
"additionalProperties": true
},
"last-status-check-time": {
"type": "integer",
"description": "When Crossref last refreshed these figures, Unix milliseconds."
}
},
"additionalProperties": true
},
"message-type": {
"type": "string",
"description": "journal."
}
},
"description": "Crossref's journal response: status ok, message-type journal, and the journal record in message.",
"additionalProperties": true
}