Search biomedical papers, inspect publication records, and traverse citation or semantic graphs.
The Noodle MCP server (io.github.helena-bioinformatics/noodle) provides tools to search biomedical papers, inspect publication records, and traverse citation or semantic graphs. It is part of the Model Context Protocol ecosystem and is described with 7 tools. Topics include bioinformatics, biomedical-literature, pubmed, citation-graph, and semantic-search.
🛠️ Key Features
Search biomedical papers
Inspect publication records
Traverse citation graphs
Traverse semantic graphs
Model Context Protocol (MCP) server
🚀 Use Cases
Biomedical literature discovery
Exploring publication histories via records
Navigating relationships through citation or semantic graphs
⚡ Developer Benefits
Exposes 7 tools for querying and traversal workflows
Supports common biomedical-literature data sources/topics (e.g., PubMed)
Organized around citation-graph and semantic-search patterns
⚠️ Limitations
No additional tool details, APIs, or input/output schemas are provided in the available source excerpt.
Semantically search Noodle's public PubMed-derived biomedical corpus. Include known PMID, DOI, or PMCID identifiers in the query so they can act as exact anchors. Results are for literature discovery and professional review, not diagnosis or treatment.
Parameters4
query
string
required
Natural-language literature question or exact PMID, DOI, PMCID, gene, variant, phenotype, HPO, or OMIM query. Include every known publication identifier when comparing or finding related papers.
limit
integer
optional
Maximum number of publications to return, from 1 to 25.
sort
string
optional
Result ordering: relevance-ranked, newest publication first, or oldest publication first.
cursor
any
optional
Opaque continuation cursor from the preceding response for the same query and sort order; omit for the first page.
Raw schema
{
"type": "object",
"properties": {
"query": {
"description": "Natural-language literature question or exact PMID, DOI, PMCID, gene, variant, phenotype, HPO, or OMIM query. Include every known publication identifier when comparing or finding related papers.",
"maxLength": 200,
"minLength": 3,
"title": "Query",
"type": "string"
},
"limit": {
"default": 20,
"description": "Maximum number of publications to return, from 1 to 25.",
"maximum": 25,
"minimum": 1,
"title": "Limit",
"type": "integer"
},
"sort": {
"default": "relevance",
"description": "Result ordering: relevance-ranked, newest publication first, or oldest publication first.",
"enum": [
"relevance",
"newest",
"oldest"
],
"title": "Sort",
"type": "string"
},
"cursor": {
"anyOf": [
{
"maxLength": 128,
"minLength": 8,
"pattern": "^[A-Za-z0-9_-]+$",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Opaque continuation cursor from the preceding response for the same query and sort order; omit for the first page.",
"title": "Cursor"
}
},
"required": [
"query"
],
"additionalProperties": false,
"title": "SearchCorpusArguments"
}
get_publication_details
Retrieve one complete public bibliographic record by PMID after search. Results are for literature discovery and professional review, not diagnosis or treatment.
Parameters1
pmid
string
required
One PubMed identifier to look up in Noodle's current public corpus, as 1 to 12 digits without a PMID prefix.
Raw schema
{
"type": "object",
"properties": {
"pmid": {
"description": "One PubMed identifier to look up in Noodle's current public corpus, as 1 to 12 digits without a PMID prefix.",
"pattern": "^[0-9]{1,12}$",
"title": "Pmid",
"type": "string"
}
},
"required": [
"pmid"
],
"additionalProperties": false,
"title": "GetPublicationDetailsArguments"
}
get_work_details
Retrieve one complete public bibliographic record by Noodle work identifier. Results are for literature discovery and professional review, not diagnosis or treatment.
Parameters1
work_id
string
required
Canonical Noodle Literature Corpus work identifier.
Retrieve the bounded citation and semantic neighborhood around one PMID. Results are for literature discovery and professional review, not diagnosis or treatment.
Parameters2
pmid
string
required
One PubMed identifier, as 1 to 12 digits.
from_work_id
any
optional
Optional prior work ID for a reversible graph path.
Raw schema
{
"type": "object",
"properties": {
"pmid": {
"description": "One PubMed identifier, as 1 to 12 digits.",
"pattern": "^[0-9]{1,12}$",
"title": "Pmid",
"type": "string"
},
"from_work_id": {
"anyOf": [
{
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Optional prior work ID for a reversible graph path.",
"title": "From Work Id"
}
},
"required": [
"pmid"
],
"additionalProperties": false,
"title": "GetPublicationNeighborhoodArguments"
}
get_work_neighborhood
Retrieve the bounded citation and semantic neighborhood around one Noodle work identifier. Results are for literature discovery and professional review, not diagnosis or treatment.
Parameters2
work_id
string
required
Canonical work identifier to place at the graph center.
from_work_id
any
optional
Optional prior work ID for a reversible graph path.
Raw schema
{
"type": "object",
"properties": {
"work_id": {
"description": "Canonical work identifier to place at the graph center.",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$",
"title": "Work Id",
"type": "string"
},
"from_work_id": {
"anyOf": [
{
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Optional prior work ID for a reversible graph path.",
"title": "From Work Id"
}
},
"required": [
"work_id"
],
"additionalProperties": false,
"title": "GetWorkNeighborhoodArguments"
}
get_corpus_summary
Return public corpus coverage, source, freshness, and count metadata. Results are for literature discovery and professional review, not diagnosis or treatment.
The official public, read-only Model Context Protocol adapter for biomedical
literature discovery from Helena Bioinformatics.
Agents can select it from a user task even when the user does not know the
Noodle brand.
Public endpoint: https://api.helena.bio/noodle/v1/mcp
Official Registry identity: io.github.helena-bioinformatics/noodle
No account, API key, patient data, or private content is required or accepted.
What agents can do
search a public PubMed-derived biomedical corpus by natural language, PMID,
DOI, or PMCID;
retrieve source-linked publication records by PMID or Noodle work ID;
traverse bounded citation and semantic neighborhoods from a publication;
continue graph exploration through returned work identifiers while
preserving edge types and graph provenance;
inspect corpus size, sources, freshness, coverage, and active graph metadata.
The seven published tools are search_biomedical_literature,
get_publication_details, get_work_details,
get_publication_neighborhood, get_work_neighborhood,
get_corpus_summary, and the separate explicit opt-in support_helena
information action.
Connect
Any MCP client that supports remote Streamable HTTP can use the endpoint. Exact
recipes for ChatGPT, Claude, Codex, VS Code, Cursor, Windsurf, Gemini CLI,
Grok, Perplexity, Microsoft Copilot Studio, Biomni, and Biorouter live under
registry/platforms and integrations.
The companion Agent Skill is in
skills/noodle-biomedical-literature-discovery. It enables implicit,
task-first selection for requests such as:
“Find source-linked papers about BRCA1 homologous recombination.”
“What publication is PMID 35008774?”
“Show papers related to this article through citations and semantic
similarity.”
“Walk two bounded hops from this work ID and preserve the edge types.”
Build the deterministic skill archive with:
bash
python3 ops/package_agent_skill.py
Graph boundary
Start from a resolved PMID or work ID and request one bounded neighborhood at a
time. Report edges exactly as returned, keep a visited-ID set, and stop at a
missing neighborhood. Search rank, citation proximity, semantic similarity,
co-mention, and graph distance are discovery signals. They do not establish
causality, scientific validity, diagnosis, or treatment.
The benchmark contains 60 prompts that omit Noodle, Helena, and MCP.
It covers all six scientific routes plus negative and safety controls.
Agent Plugin and Kiro Power
This repository is also a portable Agent Plugin and Kiro Power. plugin.json
provides brand-blind activation keywords, the existing Agent Skill supplies the
scientific routing and safety boundary, and mcp.json connects directly to the
canonical hosted Streamable HTTP endpoint. The Power does not proxy, repackage,
or reimplement Noodle.
The persistent Research Resource Identifier is
RRID:SCR_028920. Cite the resource in a
methods section as Noodle (RRID:SCR_028920). Use the
version DOI when a version-specific
software citation is also needed. The RRID identifies the resource across
publications, while the DOI identifies the archived 0.2.0 release.
Apache License 2.0. Report vulnerabilities privately as described in
SECURITY.md. Do not submit patient, private case, clinical-record, credential,
or private uploaded content to the public service or issue tracker.