protogrid

Search / io.github.cyanheads/cern-inspire-mcp-server

cern-inspire-mcp-server

R0· no sign-in

Search INSPIRE-HEP papers, authors, experiments, HEPData records; get citation metrics and BibTeX.

v0.1.3 · active · repository · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality89good
Trust94of 100
Uptime, 30 days100%
Latency p50206 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "cern-inspire-mcp-server": {
      "type": "http",
      "url": "https://cern-inspire.caseyjhand.com/mcp"
    }
  }
}
claude mcp add --transport http cern-inspire-mcp-server https://cern-inspire.caseyjhand.com/mcp
[mcp_servers.cern-inspire-mcp-server]
url = "https://cern-inspire.caseyjhand.com/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "cern-inspire-mcp-server": {
      "type": "remote",
      "url": "https://cern-inspire.caseyjhand.com/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "cern-inspire-mcp-server": {
      "type": "http",
      "url": "https://cern-inspire.caseyjhand.com/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=cern-inspire-mcp-server&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vY2Vybi1pbnNwaXJlLmNhc2V5amhhbmQuY29tL21jcCJ9"
}
{
  "servers": {
    "cern-inspire-mcp-server": {
      "type": "http",
      "url": "https://cern-inspire.caseyjhand.com/mcp"
    }
  }
}
{
  "mcpServers": {
    "cern-inspire-mcp-server": {
      "httpUrl": "https://cern-inspire.caseyjhand.com/mcp"
    }
  }
}
extensions:
  "cern-inspire-mcp-server":
    enabled: true
    name: "cern-inspire-mcp-server"
    type: streamable_http
    uri: "https://cern-inspire.caseyjhand.com/mcp"
    timeout: 300

Quality 89 / 100good

protocol88 · weight 25
  • pass
    protocol.modernsupports 2026-07-28 (server/discover)
  • pass
    protocol.statelessanswers without a session
  • pass
    protocol.transportstreamable HTTP
  • warn
    protocol.list_ttltools/list declares ttlMs 0, so clients re-fetch it on every use
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene86 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations8 of 8 tools declare readOnlyHint or destructiveHint
  • fail
    tools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: cern_inspire_search_literature (destructiveHint); cern_inspire_export_citations (destructiveHint); cern_inspire_search_hepdata (destructiveHint); …
  • pass
    tools.token_costabout 4,664 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability100 · weight 15
  • pass
    stability.changes4 tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
dependenciesn/a · weight 15

8 tools, about 4,664 tokens to load them all · tool set 9d4d3d80fdca · tools last changed 2026-10-16 · checked 2026-10-19 15:15 UTC

Tool changes

  • cern_inspire_get_citation_summarychangedinput schema, output schema
  • cern_inspire_export_citationschangedinput schema, output schema
  • cern_inspire_get_paperchangedinput schema, output schema
  • cern_inspire_search_literaturechangeddescription, input schema, output schema
    before

    Search INSPIRE-HEP papers with INSPIRE query syntax or free text, filtered by document type, subject, and year, sorted by relevance, recency, or citations. Returns one page of papers with recid, title, first author, date, citation counts, arXiv ID, DOI, publication, and an abstract snippet; pass a recid to cern_inspire_get_paper for the full record or to cern_inspire_export_citations ("recid:N") for BibTeX. INSPIRE never rejects malformed syntax: an unparsed operator widens or empties the match, so a very broad or empty result usually means the query needs fixing (cern_inspire_list_reference topic search_syntax). Only the first 10,000 results of a query are reachable.

    after · 76% of words in common

    Search INSPIRE-HEP papers with INSPIRE query syntax or free text, filtered by document type, subject, and year, sorted by relevance, recency, or citations. Returns one page of papers with recid, title, first author, date, citation counts, arXiv ID, DOI, publication, and an abstract snippet; pass a recid to cern_inspire_get_paper for the full record or to cern_inspire_export_citations ("recid:N") for BibTeX. Empty recognized field clauses are invalid; other malformed syntax can widen or empty the match, so check an unexpectedly broad or empty result against cern_inspire_list_reference topic search_syntax. Only the first 10,000 results of a query are reachable.

Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 94 / 100

provenance80
liveness100
freshness100
hygiene100

+repository +namespace-matches-repo +reachable +uptime-100% +updated-3d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Dependencies

@cyanheads/[email protected] npmthis version is not known to the dependency resolver

@cyanheads/[email protected] npmthis version is not known to the dependency resolver

Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0. The graph is what a clean install of this version resolves today; nothing was installed or run. How it is checked.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://cern-inspire.caseyjhand.com/mcp streamable-httpnoneyes100%206 ms2026-07-282026-10-19
packageregistryversionruntimesecrets
@cyanheads/cern-inspire-mcp-servernpm0.1.3npx
@cyanheads/cern-inspire-mcp-servernpm0.1.3npx

Tools (8)

cern_inspire_export_citationsread-onlyExport 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").
cern_inspire_get_citation_summaryread-onlyCompute INSPIRE-HEP's citation summary for one author or for any literature query: h-index, citation totals, average citations per paper, and paper counts per citation bucket (0, 1–9, 10–49, 50–99, 100–249, 250–499, 500+), each for all citeable papers and for published papers, plus citations received per year. Pass exactly one of author (a BAI, ORCID, INSPIRE ID, or author recid — resolve a name with cern_inspire_search_authors first) or query (any INSPIRE literature query: a topic, collaboration, institution, or "a <BAI>"). Document type and subject filters narrow every figure. year_from and year_to narrow the summary to papers from those years, and exclude_self_citations recounts it without self-citations; any of them leaves out citations per year, which INSPIRE cannot narrow that way.
cern_inspire_get_paperread-onlyFetch one paper's full INSPIRE-HEP record by recid, arXiv ID, or DOI: authors with affiliations and identifiers, abstract, publication references, arXiv and DOI identifiers, keywords, subjects, citation counts, linked experiments, texkeys, and whether HEPData holds its numerical tables (record DOI, latest version, table count, hepdata.net link). Also returns ready-made literature queries for the papers citing it and for its references. Large collaboration papers can list thousands of authors; max_authors caps the list while authorCount gives the full number.
cern_inspire_list_referenceread-onlyDecode the vocabulary the other cern_inspire tools take: INSPIRE search syntax (field operators, boolean logic, sort orders, the 10,000-result window, and how malformed queries behave), identifier forms (recid, arXiv, DOI, BAI, ORCID, INSPIRE ID, institution recid, texkey, HEPData DOIs), the document_types and subjects filter values, citation-summary buckets, and HEPData record versions and DOIs. Static content with no upstream call; use it to build a query or to recover from an empty or unexpectedly broad result.
cern_inspire_search_authorsread-onlyFind physicist profiles in INSPIRE-HEP by name, INSPIRE BAI, ORCID, INSPIRE ID, or author recid. Each profile carries its recid, BAI, ORCID, current and past positions, advisors, arXiv categories, links, awards, and a literatureQuery that selects the person's papers in cern_inspire_search_literature. A name returns ranked candidates (a bare surname can match tens of thousands of profiles, and a less-cited namesake can rank first), so confirm the person from positions and categories before passing a bai or recid to cern_inspire_get_citation_summary. An identifier matches exactly.
cern_inspire_search_experimentsread-onlyFind experiments, collaborations, and facilities in INSPIRE-HEP (ATLAS, CMS, DUNE, Belle II, …) by name, accelerator, or INSPIRE legacy name (CERN-LHC-CMS); digits alone look up an experiment recid. Each record carries the accelerator, host institutions, collaboration and subgroups, classification, lifecycle dates (proposed, approved, started, completed, ongoing), INSPIRE's paper count, a description, and a literatureQuery to pass to cern_inspire_search_literature or cern_inspire_get_citation_summary for the experiment's papers.
cern_inspire_search_hepdataread-onlyFind HEPData measurement records by physics content — process, observable, energy, collaboration — when the paper is unknown, through INSPIRE-HEP's index of every HEPData submission. Each hit carries the paper recids (pass to cern_inspire_get_paper), collaborations, keywords (reactions such as "P P --> TOP TOPBAR X", observables, centre-of-mass energies), the HEPData record DOI (recordDoi, the citation for the data), latest version, table count, and hepdataUrl, the hepdata.net record page that holds the table values; this tool does not return the values themselves. Only the first 10,000 results of a query are reachable.
cern_inspire_search_literatureread-onlySearch INSPIRE-HEP papers with INSPIRE query syntax or free text, filtered by document type, subject, and year, sorted by relevance, recency, or citations. Returns one page of papers with recid, title, first author, date, citation counts, arXiv ID, DOI, publication, and an abstract snippet; pass a recid to cern_inspire_get_paper for the full record or to cern_inspire_export_citations ("recid:N") for BibTeX. Empty recognized field clauses are invalid; other malformed syntax can widen or empty the match, so check an unexpectedly broad or empty result against cern_inspire_list_reference topic search_syntax. Only the first 10,000 results of a query are reachable.

Schemas: list_tools.

Similar MCP servers

More from io.github.cyanheads

And 136 more from this publisher.

Official server.json
{
  "name": "io.github.cyanheads/cern-inspire-mcp-server",
  "title": "cern-inspire-mcp-server",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://cern-inspire.caseyjhand.com/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "0.1.3",
  "packages": [
    {
      "version": "0.1.3",
      "transport": {
        "type": "stdio"
      },
      "identifier": "@cyanheads/cern-inspire-mcp-server",
      "runtimeHint": "npx",
      "registryType": "npm",
      "registryBaseUrl": "https://registry.npmjs.org",
      "environmentVariables": [
        {
          "name": "MCP_LOG_LEVEL",
          "format": "string",
          "default": "info",
          "description": "Sets the minimum log level for output (e.g., 'debug', 'info', 'warn')."
        }
      ]
    },
    {
      "version": "0.1.3",
      "transport": {
        "url": "http://localhost:3010/mcp",
        "type": "streamable-http"
      },
      "identifier": "@cyanheads/cern-inspire-mcp-server",
      "runtimeHint": "npx",
      "registryType": "npm",
      "registryBaseUrl": "https://registry.npmjs.org",
      "environmentVariables": [
        {
          "name": "MCP_TRANSPORT_TYPE",
          "value": "http",
          "format": "string",
          "description": "Selects the HTTP transport."
        },
        {
          "name": "MCP_HTTP_HOST",
          "format": "string",
          "default": "127.0.0.1",
          "description": "The hostname for the HTTP server."
        },
        {
          "name": "MCP_HTTP_PORT",
          "format": "string",
          "default": "3010",
          "description": "The port to run the HTTP server on."
        },
        {
          "name": "MCP_HTTP_ENDPOINT_PATH",
          "format": "string",
          "default": "/mcp",
          "description": "The endpoint path for the MCP server."
        },
        {
          "name": "MCP_AUTH_MODE",
          "format": "string",
          "default": "none",
          "description": "Authentication mode to use: 'none', 'jwt', or 'oauth'."
        },
        {
          "name": "MCP_LOG_LEVEL",
          "format": "string",
          "default": "info",
          "description": "Sets the minimum log level for output (e.g., 'debug', 'info', 'warn')."
        }
      ]
    }
  ],
  "repository": {
    "url": "https://github.com/cyanheads/cern-inspire-mcp-server",
    "source": "github"
  },
  "description": "Search INSPIRE-HEP papers, authors, experiments, HEPData records; get citation metrics and BibTeX."
}