Skip to main content
Glama

cern-inspire-mcp-server

Export INSPIRE citations

cern_inspire_export_citations
Read-onlyIdempotent

Export INSPIRE-HEP's citation entries for the papers a literature query selects, as BibTeX or LaTeX \bibitem entries (EU or US style), keyed by INSPIRE texkeys and ready to paste into a bibliography. Name specific papers with "recid:451647 or arxiv:1207.7214 or doi:10.1016/…", or export a topic, author, or citing set with any query cern_inspire_search_literature accepts. Up to 50 entries per page; page through larger sets (only the first 10,000 matches are reachable). Entries are INSPIRE's verbatim text (long author lists arrive abbreviated as "First, Name and others").

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "query": "<query>"
    },
    "name": "cern_inspire_export_citations"
  }
}

Input Schema

NameRequiredDescriptionDefault
pageNoPage number, starting at 1. page × effective size (after clamping) may not exceed 10,000.
sizeNoEntries per page (positive integer, default 10; above 50 uses 50).
sortNoEntry order: relevance (default), mostrecent, or mostcited.relevance
queryYesLiterature query selecting the papers to cite, narrowed by the same document_types, subjects, year_from and year_to filters as search. Named papers: "recid:451647 or arxiv:1207.7214 or doi:10.1016/j.physletb.2012.08.020". Or a topic ("t higgs and topcite 500+"), an author ("a Edward.Witten.1"), or citing papers ("refersto:recid:451647"). Empty recognized field clauses such as a: or a:"" (including whitespace-only quoted values) are invalid; other syntax is passed through without complete grammar validation. See cern_inspire_list_reference topic search_syntax.
formatNoEntry format: bibtex (default), latex-eu, or latex-us (\bibitem entries in European or US style).bibtex
year_toNoLatest year to include (1900–2100, inclusive), matched on the earliest date INSPIRE records for the paper. Omit for no upper bound.
subjectsNoRestrict to INSPIRE subject categories (up to 4). Multiple values must ALL hold, not either. Values: Astrophysics, Phenomenology-HEP, Theory-HEP, Quantum Physics, Unknown, Gravitation and Cosmology, Experiment-HEP, Theory-Nucl, Accelerators, Instrumentation, General Physics, Experiment-Nucl, Math and Math Physics, Condensed Matter, Computing, Lattice, Other, Data Analysis and Statistics.
year_fromNoEarliest year to include (1900–2100, inclusive), matched on the earliest date INSPIRE records for the paper. Omit for no lower bound.
document_typesNoRestrict to INSPIRE document types (up to 4). Multiple values must ALL hold (published + review = published reviews), not either. Values: article, published, conference paper, thesis, review, note, proceedings, lectures, book chapter, book, introductory, activity report, report.

Output Schema

NameRequiredDescriptionDefault
capNoThe page size applied.
pageNoThe page returned.
errorNoPresent when the call failed. Absent on success.
shownNoNumber of entries on this page.
formatNoThe entry format returned.
noticeNoGuidance when size was reduced, nothing matched, the page is past the last or came back empty inside the match count, or more papers follow.
entriesNoCitation entries, in the requested order.
nextPageNoThe page number to request next, when more papers follow within the 10,000-result window.
truncatedNoTrue when more matched papers follow this page.
appliedFiltersNoSort and filters applied, or "none".

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changed
    • changedInput schema / properties / page / description
      Previous value: -"Page number, starting at 1. page × size may not exceed 10,000."New value: +"Page number, starting at 1. page × effective size (after clamping) may not exceed 10,000."
    • changedInput schema / properties / query / description
      Previous value: -"Literature query selecting the papers to cite, narrowed by the same document_types, subjects, year_from and year_to filters as search. Named papers: \"recid:451647 or arxiv:1207.7214 or doi:10.1016/j.physletb.2012.08.020\". Or a topic (\"t higgs and topcite 500+\"), an author (\"a Edward.Witten.1\"), or citing papers (\"refersto:recid:451647\"). Empty recognized field clauses such as \"a:\" are invalid; other syntax is passed through without complete grammar validation. See cern_inspire_list_reference topic search_syntax."New value: +"Literature query selecting the papers to cite, narrowed by the same document_types, subjects, year_from and year_to filters as search. Named papers: \"recid:451647 or arxiv:1207.7214 or doi:10.1016/j.physletb.2012.08.020\". Or a topic (\"t higgs and topcite 500+\"), an author (\"a Edward.Witten.1\"), or citing papers (\"refersto:recid:451647\"). Empty recognized field clauses such as a: or a:\"\" (including whitespace-only quoted values) are invalid; other syntax is passed through without complete grammar validation. See cern_inspire_list_reference topic search_syntax."
    • changedInput schema / properties / size / description
      Previous value: -"Entries per page (1–50, default 10)."New value: +"Entries per page (positive integer, default 10; above 50 uses 50)."
    • changedInput schema / properties / size / maximum
      Previous value: -50New value: +9007199254740991
    • changedOutput schema / properties / error / properties / data / properties / reason / description
      Previous value: -"Machine-readable failure mode. Declared by this tool: `invalid_year_range`: year_from is later than year_to. `beyond_result_window`: page × size exceeds the 10,000 results INSPIRE serves for one query. `invalid_query`: A recognized field clause has no value, or INSPIRE answered 400 to a parameter value it refuses. `inspire_rate_limited`: INSPIRE returned 429 after the pacer and retries. `pacer_shed`: The server's outbound INSPIRE queue could not start the request within the call's remaining budget. `upstream_unreadable`: The INSPIRE body exceeded the byte ceiling, or was JSON or HTML where citation text was expected. Other values are possible when a failure originates below the handler."New value: +"Machine-readable failure mode. Declared by this tool: `invalid_year_range`: year_from is later than year_to. `beyond_result_window`: page × effective size (after clamping) exceeds the 10,000 results INSPIRE serves for one query. `invalid_query`: A recognized field clause has no value, or INSPIRE answered 400 to a parameter value it refuses. `inspire_rate_limited`: INSPIRE returned 429 after the pacer and retries. `pacer_shed`: The server's outbound INSPIRE queue could not start the request within the call's remaining budget. `upstream_unreadable`: The INSPIRE body exceeded the byte ceiling, the citation page was JSON or HTML instead of citation text, or selection verification returned unreadable JSON. Other values are possible when a failure originates below the handler."
    • changedOutput schema / properties / notice / description
      Previous value: -"Guidance when nothing matched, the page is past the last or came back empty inside the match count, more papers follow, or the page could not be checked against the match count."New value: +"Guidance when size was reduced, nothing matched, the page is past the last or came back empty inside the match count, or more papers follow."
  2. Changed9 schema fields changed
    • addedInput schema / properties / document_types
      Added value: +{
      +  "description": "Restrict to INSPIRE document types (up to 4). Multiple values must ALL hold (published + review = published reviews), not either. Values: article, published, conference paper, thesis, review, note, proceedings, lectures, book chapter, book, introductory, activity report, report.",
      +  "items": {
      +    "description": "An INSPIRE document type.",
      +    "enum": [
      +      "article",
      +      "published",
      +      "conference paper",
      +      "thesis",
      +      "review",
      +      "note",
      +      "proceedings",
      +      "lectures",
      +      "book chapter",
      +      "book",
      +      "introductory",
      +      "activity report",
      +      "report"
      +    ],
      +    "type": "string"
      +  },
      +  "maxItems": 4,
      +  "type": "array"
      +}
    • changedInput schema / properties / query / description
      Previous value: -"Literature query selecting the papers to cite. Named papers: \"recid:451647 or arxiv:1207.7214 or doi:10.1016/j.physletb.2012.08.020\". Or any INSPIRE query: a topic (\"t higgs and topcite 500+\"), an author (\"a Edward.Witten.1\"), or the papers citing a record (\"refersto:recid:451647\"). See cern_inspire_list_reference topic search_syntax."New value: +"Literature query selecting the papers to cite, narrowed by the same document_types, subjects, year_from and year_to filters as search. Named papers: \"recid:451647 or arxiv:1207.7214 or doi:10.1016/j.physletb.2012.08.020\". Or a topic (\"t higgs and topcite 500+\"), an author (\"a Edward.Witten.1\"), or citing papers (\"refersto:recid:451647\"). Empty recognized field clauses such as \"a:\" are invalid; other syntax is passed through without complete grammar validation. See cern_inspire_list_reference topic search_syntax."
    • addedInput schema / properties / subjects
      Added value: +{
      +  "description": "Restrict to INSPIRE subject categories (up to 4). Multiple values must ALL hold, not either. Values: Astrophysics, Phenomenology-HEP, Theory-HEP, Quantum Physics, Unknown, Gravitation and Cosmology, Experiment-HEP, Theory-Nucl, Accelerators, Instrumentation, General Physics, Experiment-Nucl, Math and Math Physics, Condensed Matter, Computing, Lattice, Other, Data Analysis and Statistics.",
      +  "items": {
      +    "description": "An INSPIRE subject category.",
      +    "enum": [
      +      "Astrophysics",
      +      "Phenomenology-HEP",
      +      "Theory-HEP",
      +      "Quantum Physics",
      +      "Unknown",
      +      "Gravitation and Cosmology",
      +      "Experiment-HEP",
      +      "Theory-Nucl",
      +      "Accelerators",
      +      "Instrumentation",
      +      "General Physics",
      +      "Experiment-Nucl",
      +      "Math and Math Physics",
      +      "Condensed Matter",
      +      "Computing",
      +      "Lattice",
      +      "Other",
      +      "Data Analysis and Statistics"
      +    ],
      +    "type": "string"
      +  },
      +  "maxItems": 4,
      +  "type": "array"
      +}
    • addedInput schema / properties / year_from
      Added value: +{
      +  "description": "Earliest year to include (1900–2100, inclusive), matched on the earliest date INSPIRE records for the paper. Omit for no lower bound.",
      +  "maximum": 2100,
      +  "minimum": 1900,
      +  "type": "integer"
      +}
    • addedInput schema / properties / year_to
      Added value: +{
      +  "description": "Latest year to include (1900–2100, inclusive), matched on the earliest date INSPIRE records for the paper. Omit for no upper bound.",
      +  "maximum": 2100,
      +  "minimum": 1900,
      +  "type": "integer"
      +}
    • changedOutput schema / anyOf
      Previous value: -[
      -  {
      -    "not": {
      -      "required": [
      -        "error"
      -      ]
      -    },
      -    "required": [
      -      "format",
      -      "page",
      -      "entries",
      -      "truncated",
      -      "shown",
      -      "cap"
      -    ]
      -  },
      -  {
      -    "required": [
      -      "error"
      -    ]
      -  }
      -]New value: +[
      +  {
      +    "not": {
      +      "required": [
      +        "error"
      +      ]
      +    },
      +    "required": [
      +      "format",
      +      "page",
      +      "entries",
      +      "appliedFilters",
      +      "truncated",
      +      "shown",
      +      "cap"
      +    ]
      +  },
      +  {
      +    "required": [
      +      "error"
      +    ]
      +  }
      +]
    • addedOutput schema / properties / appliedFilters
      Added value: +{
      +  "description": "Sort and filters applied, or \"none\".",
      +  "type": "string"
      +}
    • changedOutput schema / properties / error / properties / data / properties / reason / description
      Previous value: -"Machine-readable failure mode. Declared by this tool: `beyond_result_window`: page × size exceeds the 10,000 results INSPIRE serves for one query. `invalid_query`: INSPIRE answered 400 to a parameter value it refuses. `inspire_rate_limited`: INSPIRE returned 429 after the pacer and retries. `pacer_shed`: The server's outbound INSPIRE queue could not start the request within the call's remaining budget. `upstream_unreadable`: The INSPIRE body exceeded the byte ceiling, or was JSON or HTML where citation text was expected. Other values are possible when a failure originates below the handler."New value: +"Machine-readable failure mode. Declared by this tool: `invalid_year_range`: year_from is later than year_to. `beyond_result_window`: page × size exceeds the 10,000 results INSPIRE serves for one query. `invalid_query`: A recognized field clause has no value, or INSPIRE answered 400 to a parameter value it refuses. `inspire_rate_limited`: INSPIRE returned 429 after the pacer and retries. `pacer_shed`: The server's outbound INSPIRE queue could not start the request within the call's remaining budget. `upstream_unreadable`: The INSPIRE body exceeded the byte ceiling, or was JSON or HTML where citation text was expected. Other values are possible when a failure originates below the handler."
    • changedOutput schema / properties / error / properties / data / properties / reason / examples
      Previous value: -[
      -  "beyond_result_window",
      -  "invalid_query",
      -  "inspire_rate_limited",
      -  "pacer_shed",
      -  "upstream_unreadable"
      -]New value: +[
      +  "invalid_year_range",
      +  "beyond_result_window",
      +  "invalid_query",
      +  "inspire_rate_limited",
      +  "pacer_shed",
      +  "upstream_unreadable"
      +]
  3. First observed

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds meaningful behavior beyond annotations: pagination max of 50 entries, only first 10,000 matches reachable, and entries are INSPIRE's verbatim text with long author lists abbreviated. This is useful operational context, though it does not discuss auth or output delivery details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded: it first states what is exported, then how to select papers, then pagination and text quirks. Every sentence carries useful information without repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given an output schema exists, the description does not need to explain return structure. It covers query selection, format, pagination limits, and verbatim-entry behavior sufficiently for an agent to invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description still adds value by giving concrete query syntax examples and clarifying the output format choices, including EU/US \bibitem styles.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: exporting INSPIRE-HEP citation entries for selected papers as BibTeX or LaTeX \bibitem entries. It distinguishes the operation from sibling search tools by emphasizing export-ready bibliography output keyed by texkeys.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explains that users can name specific papers via recid/arxiv/doi or export a topic, author, or citing set using any query accepted by cern_inspire_search_literature. It gives clear selection guidance but does not explicitly contrast when to use this versus cern_inspire_get_citation_summary or other citation-related siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.