Noodle Biomedical Literature Discovery MCP
A public read-only MCP server enabling biomedical literature search, publication inspection, and traversal of citation or semantic graphs. It supports paper search, PMID/DOI/PMCID lookup, and corpus questions without requiring authentication.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://api.helena.bio/noodle/v1/mcpWhat its tools do
7 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Warning Advertises resources/templates/list but does not implement it
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Search biomedical publications
- Inspect publication records
- Traverse citation graphs
- Discover related papers
Source and maintenance
- Maintenance checked
Protocol and capabilities
- Server
- noodle 0.2.1
- MCP protocol negotiated in check
- 2025-11-25
- Tools
- 7 advertised
- Resources
- 1 advertised
- Resource templates
- Not advertised
- Prompts
- 4 advertised
{
"tools": {
"listChanged": false
},
"prompts": {
"listChanged": false
},
"resources": {
"subscribe": false,
"listChanged": false
},
"experimental": {}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
7 advertised
search_biomedical_literature — Search biomedical literature
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.
{
"type": "object",
"title": "SearchCorpusArguments",
"required": [
"query"
],
"properties": {
"sort": {
"enum": [
"relevance",
"newest",
"oldest"
],
"type": "string",
"title": "Sort",
"default": "relevance",
"description": "Result ordering: relevance-ranked, newest publication first, or oldest publication first."
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 20,
"maximum": 25,
"minimum": 1,
"description": "Maximum number of publications to return, from 1 to 25."
},
"query": {
"type": "string",
"title": "Query",
"maxLength": 200,
"minLength": 3,
"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."
},
"cursor": {
"anyOf": [
{
"type": "string",
"pattern": "^[A-Za-z0-9_-]+$",
"maxLength": 128,
"minLength": 8
},
{
"type": "null"
}
],
"title": "Cursor",
"default": null,
"description": "Opaque continuation cursor from the preceding response for the same query and sort order; omit for the first page."
}
},
"additionalProperties": false
}{
"type": "object",
"$defs": {
"PublicCorpusSearchResult": {
"type": "object",
"title": "PublicCorpusSearchResult",
"required": [
"work_id",
"pmid",
"title",
"abstract_excerpt",
"journal",
"publication_date",
"doi",
"pmc_id",
"source_url",
"pubmed_url",
"match_types",
"structured_score"
],
"properties": {
"doi": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Doi"
},
"pmid": {
"anyOf": [
{
"type": "string",
"pattern": "^[0-9]{1,12}$"
},
{
"type": "null"
}
],
"title": "Pmid"
},
"title": {
"type": "string",
"title": "Title"
},
"pmc_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Pmc Id"
},
"authors": {
"type": "array",
"items": {
"type": "string"
},
"title": "Authors"
},
"journal": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Journal"
},
"work_id": {
"type": "string",
"title": "Work Id"
},
"pubmed_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Pubmed Url"
},
"rank_score": {
"type": "number",
"title": "Rank Score",
"default": 0
},
"source_url": {
"type": "string",
"title": "Source Url"
},
"graph_score": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Graph Score",
"default": null
},
"match_types": {
"type": "array",
"items": {
"enum": [
"pmid",
"doi",
"pmcid",
"title",
"abstract",
"gene",
"variant",
"phenotype",
"hpo",
"omim",
"semantic",
"graph"
],
"type": "string"
},
"title": "Match Types"
},
"semantic_score": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Semantic Score",
"default": null
},
"abstract_excerpt": {
"type": "string",
"title": "Abstract Excerpt"
},
"article_entities": {
"type": "array",
"items": {
"$ref": "#/$defs/PublicCorpusArticleEntity"
},
"title": "Article Entities"
},
"publication_date": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Publication Date"
},
"structured_score": {
"type": "number",
"title": "Structured Score"
},
"graph_anchor_pmid": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Graph Anchor Pmid",
"default": null
}
},
"additionalProperties": false
},
"PublicCorpusArticleEntity": {
"type": "object",
"title": "PublicCorpusArticleEntity",
"required": [
"entity_type",
"identifier",
"label",
"source_field",
"normalization_state"
],
"properties": {
"label": {
"type": "string",
"title": "Label"
},
"identifier": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Identifier"
},
"entity_type": {
"enum": [
"gene",
"variant",
"phenotype",
"pmid",
"doi",
"pmcid",
"omim"
],
"type": "string",
"title": "Entity Type"
},
"source_field": {
"enum": [
"work_identifiers.normalized_value",
"gene_mentions.gene_symbol",
"variant_mentions.normalized_variant",
"phenotype_mentions.hpo_id",
"phenotype_mentions.omim_id",
"phenotype_mentions.mesh_term",
"phenotype_mentions.phenotype_name"
],
"type": "string",
"title": "Source Field"
},
"normalization_state": {
"enum": [
"normalized",
"source_indexed"
],
"type": "string",
"title": "Normalization State"
}
},
"additionalProperties": false
}
},
"title": "PublicCorpusSearchResponse",
"required": [
"contract_version",
"query",
"returned_count",
"results",
"searchable_fields",
"usage_boundary"
],
"properties": {
"query": {
"type": "string",
"title": "Query"
},
"results": {
"type": "array",
"items": {
"$ref": "#/$defs/PublicCorpusSearchResult"
},
"title": "Results"
},
"has_more": {
"type": "boolean",
"title": "Has More",
"default": false
},
"graph_used": {
"type": "boolean",
"title": "Graph Used",
"default": false
},
"next_cursor": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Next Cursor",
"default": null
},
"graph_version": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Graph Version",
"default": null
},
"returned_count": {
"type": "integer",
"title": "Returned Count"
},
"usage_boundary": {
"type": "object",
"title": "Usage Boundary",
"additionalProperties": true
},
"contract_version": {
"type": "string",
"const": "1.0",
"title": "Contract Version"
},
"searchable_fields": {
"type": "array",
"items": {
"type": "string"
},
"title": "Searchable Fields"
},
"semantic_index_used": {
"type": "boolean",
"title": "Semantic Index Used",
"default": false
},
"graph_degraded_reason": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Graph Degraded Reason",
"default": null
},
"semantic_degraded_reason": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Semantic Degraded Reason",
"default": null
}
},
"additionalProperties": false
}{
"title": "Search biomedical literature",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_publication_details — Get publication details by PMID
Retrieve one complete public bibliographic record by PMID after search. Results are for literature discovery and professional review, not diagnosis or treatment.
{
"type": "object",
"title": "GetPublicationDetailsArguments",
"required": [
"pmid"
],
"properties": {
"pmid": {
"type": "string",
"title": "Pmid",
"pattern": "^[0-9]{1,12}$",
"description": "One PubMed identifier to look up in Noodle's current public corpus, as 1 to 12 digits without a PMID prefix."
}
},
"additionalProperties": false
}{
"type": "object",
"$defs": {
"PublicGeneMention": {
"type": "object",
"title": "PublicGeneMention",
"required": [
"gene_symbol",
"association_type",
"mention_count"
],
"properties": {
"gene_symbol": {
"type": "string",
"title": "Gene Symbol"
},
"mention_count": {
"type": "integer",
"title": "Mention Count"
},
"association_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Association Type"
}
},
"additionalProperties": false
},
"PublicVariantMention": {
"type": "object",
"title": "PublicVariantMention",
"required": [
"gene_symbol",
"hgvs_cdna",
"hgvs_protein",
"normalized_variant",
"clinical_significance",
"evidence_type",
"sentence_text",
"confidence_score"
],
"properties": {
"hgvs_cdna": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Hgvs Cdna"
},
"gene_symbol": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Gene Symbol"
},
"hgvs_protein": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Hgvs Protein"
},
"evidence_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Evidence Type"
},
"sentence_text": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Sentence Text"
},
"confidence_score": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Confidence Score"
},
"normalized_variant": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Normalized Variant"
},
"clinical_significance": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Clinical Significance"
}
},
"additionalProperties": false
},
"PublicPublicationDetails": {
"type": "object",
"title": "PublicPublicationDetails",
"required": [
"pmid",
"title",
"abstract",
"authors",
"journal",
"publication_date",
"publication_types",
"mesh_terms",
"doi",
"pmc_id",
"is_retracted",
"pubmed_url",
"full_text_url",
"gene_mentions",
"variant_mentions"
],
"properties": {
"doi": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Doi"
},
"pmid": {
"type": "string",
"title": "Pmid",
"pattern": "^[0-9]{1,12}$"
},
"title": {
"type": "string",
"title": "Title"
},
"pmc_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Pmc Id"
},
"authors": {
"type": "array",
"items": {
"type": "string"
},
"title": "Authors"
},
"journal": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Journal"
},
"abstract": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Abstract"
},
"mesh_terms": {
"type": "array",
"items": {
"type": "string"
},
"title": "Mesh Terms"
},
"pubmed_url": {
"type": "string",
"title": "Pubmed Url"
},
"is_retracted": {
"type": "boolean",
"title": "Is Retracted"
},
"full_text_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Full Text Url"
},
"gene_mentions": {
"type": "array",
"items": {
"$ref": "#/$defs/PublicGeneMention"
},
"title": "Gene Mentions"
},
"publication_date": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Publication Date"
},
"variant_mentions": {
"type": "array",
"items": {
"$ref": "#/$defs/PublicVariantMention"
},
"title": "Variant Mentions"
},
"publication_types": {
"type": "array",
"items": {
"type": "string"
},
"title": "Publication Types"
}
},
"additionalProperties": false
}
},
"title": "PublicationDetailsResponse",
"required": [
"contract_version",
"publication",
"usage_boundary"
],
"properties": {
"publication": {
"$ref": "#/$defs/PublicPublicationDetails"
},
"usage_boundary": {
"type": "object",
"title": "Usage Boundary",
"additionalProperties": true
},
"contract_version": {
"type": "string",
"const": "1.0",
"title": "Contract Version"
}
},
"additionalProperties": false
}{
"title": "Get publication details by PMID",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_work_details — Get publication details by work ID
Retrieve one complete public bibliographic record by Noodle work identifier. Results are for literature discovery and professional review, not diagnosis or treatment.
{
"type": "object",
"title": "GetWorkDetailsArguments",
"required": [
"work_id"
],
"properties": {
"work_id": {
"type": "string",
"title": "Work Id",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$",
"description": "Canonical Noodle Literature Corpus work identifier."
}
},
"additionalProperties": false
}{
"type": "object",
"$defs": {
"PublicGeneMention": {
"type": "object",
"title": "PublicGeneMention",
"required": [
"gene_symbol",
"association_type",
"mention_count"
],
"properties": {
"gene_symbol": {
"type": "string",
"title": "Gene Symbol"
},
"mention_count": {
"type": "integer",
"title": "Mention Count"
},
"association_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Association Type"
}
},
"additionalProperties": false
},
"PublicWorkDetails": {
"type": "object",
"title": "PublicWorkDetails",
"required": [
"work_id",
"title",
"abstract",
"authors",
"journal",
"publication_date",
"publication_types",
"mesh_terms",
"doi",
"pmc_id",
"is_retracted",
"pubmed_url",
"doi_url",
"full_text_url",
"gene_mentions",
"variant_mentions"
],
"properties": {
"doi": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Doi"
},
"pmid": {
"anyOf": [
{
"type": "string",
"pattern": "^[0-9]{1,12}$"
},
{
"type": "null"
}
],
"title": "Pmid",
"default": null
},
"title": {
"type": "string",
"title": "Title"
},
"pmc_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Pmc Id"
},
"authors": {
"type": "array",
"items": {
"type": "string"
},
"title": "Authors"
},
"doi_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Doi Url"
},
"journal": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Journal"
},
"work_id": {
"type": "string",
"title": "Work Id",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"
},
"abstract": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Abstract"
},
"mesh_terms": {
"type": "array",
"items": {
"type": "string"
},
"title": "Mesh Terms"
},
"pubmed_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Pubmed Url"
},
"is_retracted": {
"type": "boolean",
"title": "Is Retracted"
},
"full_text_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Full Text Url"
},
"gene_mentions": {
"type": "array",
"items": {
"$ref": "#/$defs/PublicGeneMention"
},
"title": "Gene Mentions"
},
"publication_date": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Publication Date"
},
"variant_mentions": {
"type": "array",
"items": {
"$ref": "#/$defs/PublicVariantMention"
},
"title": "Variant Mentions"
},
"publication_types": {
"type": "array",
"items": {
"type": "string"
},
"title": "Publication Types"
}
},
"additionalProperties": false
},
"PublicVariantMention": {
"type": "object",
"title": "PublicVariantMention",
"required": [
"gene_symbol",
"hgvs_cdna",
"hgvs_protein",
"normalized_variant",
"clinical_significance",
"evidence_type",
"sentence_text",
"confidence_score"
],
"properties": {
"hgvs_cdna": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Hgvs Cdna"
},
"gene_symbol": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Gene Symbol"
},
"hgvs_protein": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Hgvs Protein"
},
"evidence_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Evidence Type"
},
"sentence_text": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Sentence Text"
},
"confidence_score": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Confidence Score"
},
"normalized_variant": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Normalized Variant"
},
"clinical_significance": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Clinical Significance"
}
},
"additionalProperties": false
}
},
"title": "WorkDetailsResponse",
"required": [
"contract_version",
"publication",
"usage_boundary"
],
"properties": {
"publication": {
"$ref": "#/$defs/PublicWorkDetails"
},
"usage_boundary": {
"type": "object",
"title": "Usage Boundary",
"additionalProperties": true
},
"contract_version": {
"type": "string",
"const": "1.0",
"title": "Contract Version"
}
},
"additionalProperties": false
}{
"title": "Get publication details by work ID",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_publication_neighborhood — Explore a PMID literature neighborhood
Retrieve the bounded citation and semantic neighborhood around one PMID. Results are for literature discovery and professional review, not diagnosis or treatment.
{
"type": "object",
"title": "GetPublicationNeighborhoodArguments",
"required": [
"pmid"
],
"properties": {
"pmid": {
"type": "string",
"title": "Pmid",
"pattern": "^[0-9]{1,12}$",
"description": "One PubMed identifier, as 1 to 12 digits."
},
"from_work_id": {
"anyOf": [
{
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"
},
{
"type": "null"
}
],
"title": "From Work Id",
"default": null,
"description": "Optional prior work ID for a reversible graph path."
}
},
"additionalProperties": false
}{
"type": "object",
"$defs": {
"ArticleNeighborhoodEdge": {
"type": "object",
"title": "ArticleNeighborhoodEdge",
"required": [
"id",
"source_id",
"target_id",
"reasons"
],
"properties": {
"id": {
"type": "string",
"title": "Id",
"pattern": "^[A-Za-z0-9][A-Za-z0-9:._/-]{0,159}$"
},
"reasons": {
"type": "array",
"items": {
"$ref": "#/$defs/ArticleNeighborhoodReason"
},
"title": "Reasons",
"maxItems": 7,
"minItems": 1
},
"source_id": {
"type": "string",
"title": "Source Id",
"pattern": "^[A-Za-z0-9][A-Za-z0-9:._/-]{0,159}$"
},
"target_id": {
"type": "string",
"title": "Target Id",
"pattern": "^[A-Za-z0-9][A-Za-z0-9:._/-]{0,159}$"
}
},
"additionalProperties": false
},
"ArticleNeighborhoodNode": {
"type": "object",
"title": "ArticleNeighborhoodNode",
"required": [
"id",
"kind",
"label",
"canonical_path"
],
"properties": {
"id": {
"type": "string",
"title": "Id",
"pattern": "^[A-Za-z0-9][A-Za-z0-9:._/-]{0,159}$"
},
"kind": {
"enum": [
"publication",
"gene",
"variant",
"phenotype",
"disease"
],
"type": "string",
"title": "Kind"
},
"label": {
"type": "string",
"title": "Label",
"maxLength": 500,
"minLength": 1
},
"canonical_path": {
"type": "string",
"title": "Canonical Path",
"pattern": "^/[A-Za-z0-9._~/-]{1,300}$"
},
"publication_doi": {
"anyOf": [
{
"type": "string",
"maxLength": 255,
"minLength": 3
},
{
"type": "null"
}
],
"title": "Publication Doi",
"default": null
},
"publication_pmid": {
"anyOf": [
{
"type": "string",
"pattern": "^[0-9]{1,12}$"
},
{
"type": "null"
}
],
"title": "Publication Pmid",
"default": null
},
"publication_pmcid": {
"anyOf": [
{
"type": "string",
"pattern": "^PMC[0-9]+$"
},
{
"type": "null"
}
],
"title": "Publication Pmcid",
"default": null
},
"publication_work_id": {
"anyOf": [
{
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"
},
{
"type": "null"
}
],
"title": "Publication Work Id",
"default": null
}
},
"additionalProperties": false
},
"ArticleNeighborhoodReason": {
"type": "object",
"title": "ArticleNeighborhoodReason",
"required": [
"kind",
"label",
"score",
"model_version",
"provenance"
],
"properties": {
"kind": {
"enum": [
"shared_gene",
"shared_variant",
"shared_phenotype",
"shared_disease",
"cites",
"cited_by",
"semantic_relatedness"
],
"type": "string",
"title": "Kind"
},
"label": {
"type": "string",
"title": "Label",
"maxLength": 500,
"minLength": 1
},
"score": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Score"
},
"provenance": {
"$ref": "#/$defs/ArticleNeighborhoodProvenance"
},
"model_version": {
"anyOf": [
{
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"
},
{
"type": "null"
}
],
"title": "Model Version"
}
},
"additionalProperties": false
},
"ArticleNeighborhoodProvenance": {
"type": "object",
"title": "ArticleNeighborhoodProvenance",
"required": [
"source",
"record_id",
"canonical_url",
"retrieved_at"
],
"properties": {
"source": {
"type": "string",
"title": "Source",
"maxLength": 160,
"minLength": 1
},
"record_id": {
"type": "string",
"title": "Record Id",
"pattern": "^[A-Za-z0-9][A-Za-z0-9:._/-]{0,159}$"
},
"retrieved_at": {
"type": "string",
"title": "Retrieved At",
"pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\\.[0-9]{3}Z$"
},
"canonical_url": {
"anyOf": [
{
"type": "string",
"maxLength": 2048
},
{
"type": "null"
}
],
"title": "Canonical Url"
}
},
"additionalProperties": false
},
"ArticleNeighborhoodUsageBoundary": {
"type": "object",
"title": "ArticleNeighborhoodUsageBoundary",
"required": [
"review_required",
"patient_context_evaluated",
"semantic_similarity_is_evidence"
],
"properties": {
"review_required": {
"type": "boolean",
"const": true,
"title": "Review Required"
},
"patient_context_evaluated": {
"type": "boolean",
"const": false,
"title": "Patient Context Evaluated"
},
"semantic_similarity_is_evidence": {
"type": "boolean",
"const": false,
"title": "Semantic Similarity Is Evidence"
}
},
"additionalProperties": false
}
},
"title": "ArticleNeighborhoodResponse",
"required": [
"contract_version",
"anchor_node_id",
"graph_version",
"release_channel",
"policy_version",
"generated_at",
"stale_after",
"freshness",
"nodes",
"edges",
"usage_boundary"
],
"properties": {
"edges": {
"type": "array",
"items": {
"$ref": "#/$defs/ArticleNeighborhoodEdge"
},
"title": "Edges",
"maxItems": 64,
"minItems": 8
},
"nodes": {
"type": "array",
"items": {
"$ref": "#/$defs/ArticleNeighborhoodNode"
},
"title": "Nodes",
"maxItems": 25,
"minItems": 9
},
"freshness": {
"type": "string",
"const": "CURRENT",
"title": "Freshness"
},
"anchor_pmid": {
"anyOf": [
{
"type": "string",
"pattern": "^[0-9]{1,12}$"
},
{
"type": "null"
}
],
"title": "Anchor Pmid",
"default": null
},
"stale_after": {
"type": "string",
"title": "Stale After",
"pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\\.[0-9]{3}Z$"
},
"generated_at": {
"type": "string",
"title": "Generated At",
"pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\\.[0-9]{3}Z$"
},
"graph_version": {
"type": "string",
"title": "Graph Version",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"
},
"anchor_node_id": {
"type": "string",
"title": "Anchor Node Id",
"pattern": "^[A-Za-z0-9][A-Za-z0-9:._/-]{0,159}$"
},
"anchor_work_id": {
"anyOf": [
{
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"
},
{
"type": "null"
}
],
"title": "Anchor Work Id",
"default": null
},
"policy_version": {
"type": "string",
"title": "Policy Version",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"
},
"usage_boundary": {
"$ref": "#/$defs/ArticleNeighborhoodUsageBoundary"
},
"release_channel": {
"type": "string",
"title": "Release Channel",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"
},
"contract_version": {
"enum": [
"0.1",
"0.2"
],
"type": "string",
"title": "Contract Version"
}
},
"additionalProperties": false
}{
"title": "Explore a PMID literature neighborhood",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_work_neighborhood — Explore a work literature 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.
{
"type": "object",
"title": "GetWorkNeighborhoodArguments",
"required": [
"work_id"
],
"properties": {
"work_id": {
"type": "string",
"title": "Work Id",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$",
"description": "Canonical work identifier to place at the graph center."
},
"from_work_id": {
"anyOf": [
{
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"
},
{
"type": "null"
}
],
"title": "From Work Id",
"default": null,
"description": "Optional prior work ID for a reversible graph path."
}
},
"additionalProperties": false
}{
"type": "object",
"$defs": {
"ArticleNeighborhoodEdge": {
"type": "object",
"title": "ArticleNeighborhoodEdge",
"required": [
"id",
"source_id",
"target_id",
"reasons"
],
"properties": {
"id": {
"type": "string",
"title": "Id",
"pattern": "^[A-Za-z0-9][A-Za-z0-9:._/-]{0,159}$"
},
"reasons": {
"type": "array",
"items": {
"$ref": "#/$defs/ArticleNeighborhoodReason"
},
"title": "Reasons",
"maxItems": 7,
"minItems": 1
},
"source_id": {
"type": "string",
"title": "Source Id",
"pattern": "^[A-Za-z0-9][A-Za-z0-9:._/-]{0,159}$"
},
"target_id": {
"type": "string",
"title": "Target Id",
"pattern": "^[A-Za-z0-9][A-Za-z0-9:._/-]{0,159}$"
}
},
"additionalProperties": false
},
"ArticleNeighborhoodNode": {
"type": "object",
"title": "ArticleNeighborhoodNode",
"required": [
"id",
"kind",
"label",
"canonical_path"
],
"properties": {
"id": {
"type": "string",
"title": "Id",
"pattern": "^[A-Za-z0-9][A-Za-z0-9:._/-]{0,159}$"
},
"kind": {
"enum": [
"publication",
"gene",
"variant",
"phenotype",
"disease"
],
"type": "string",
"title": "Kind"
},
"label": {
"type": "string",
"title": "Label",
"maxLength": 500,
"minLength": 1
},
"canonical_path": {
"type": "string",
"title": "Canonical Path",
"pattern": "^/[A-Za-z0-9._~/-]{1,300}$"
},
"publication_doi": {
"anyOf": [
{
"type": "string",
"maxLength": 255,
"minLength": 3
},
{
"type": "null"
}
],
"title": "Publication Doi",
"default": null
},
"publication_pmid": {
"anyOf": [
{
"type": "string",
"pattern": "^[0-9]{1,12}$"
},
{
"type": "null"
}
],
"title": "Publication Pmid",
"default": null
},
"publication_pmcid": {
"anyOf": [
{
"type": "string",
"pattern": "^PMC[0-9]+$"
},
{
"type": "null"
}
],
"title": "Publication Pmcid",
"default": null
},
"publication_work_id": {
"anyOf": [
{
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"
},
{
"type": "null"
}
],
"title": "Publication Work Id",
"default": null
}
},
"additionalProperties": false
},
"ArticleNeighborhoodReason": {
"type": "object",
"title": "ArticleNeighborhoodReason",
"required": [
"kind",
"label",
"score",
"model_version",
"provenance"
],
"properties": {
"kind": {
"enum": [
"shared_gene",
"shared_variant",
"shared_phenotype",
"shared_disease",
"cites",
"cited_by",
"semantic_relatedness"
],
"type": "string",
"title": "Kind"
},
"label": {
"type": "string",
"title": "Label",
"maxLength": 500,
"minLength": 1
},
"score": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Score"
},
"provenance": {
"$ref": "#/$defs/ArticleNeighborhoodProvenance"
},
"model_version": {
"anyOf": [
{
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"
},
{
"type": "null"
}
],
"title": "Model Version"
}
},
"additionalProperties": false
},
"ArticleNeighborhoodProvenance": {
"type": "object",
"title": "ArticleNeighborhoodProvenance",
"required": [
"source",
"record_id",
"canonical_url",
"retrieved_at"
],
"properties": {
"source": {
"type": "string",
"title": "Source",
"maxLength": 160,
"minLength": 1
},
"record_id": {
"type": "string",
"title": "Record Id",
"pattern": "^[A-Za-z0-9][A-Za-z0-9:._/-]{0,159}$"
},
"retrieved_at": {
"type": "string",
"title": "Retrieved At",
"pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\\.[0-9]{3}Z$"
},
"canonical_url": {
"anyOf": [
{
"type": "string",
"maxLength": 2048
},
{
"type": "null"
}
],
"title": "Canonical Url"
}
},
"additionalProperties": false
},
"ArticleNeighborhoodUsageBoundary": {
"type": "object",
"title": "ArticleNeighborhoodUsageBoundary",
"required": [
"review_required",
"patient_context_evaluated",
"semantic_similarity_is_evidence"
],
"properties": {
"review_required": {
"type": "boolean",
"const": true,
"title": "Review Required"
},
"patient_context_evaluated": {
"type": "boolean",
"const": false,
"title": "Patient Context Evaluated"
},
"semantic_similarity_is_evidence": {
"type": "boolean",
"const": false,
"title": "Semantic Similarity Is Evidence"
}
},
"additionalProperties": false
}
},
"title": "ArticleNeighborhoodResponse",
"required": [
"contract_version",
"anchor_node_id",
"graph_version",
"release_channel",
"policy_version",
"generated_at",
"stale_after",
"freshness",
"nodes",
"edges",
"usage_boundary"
],
"properties": {
"edges": {
"type": "array",
"items": {
"$ref": "#/$defs/ArticleNeighborhoodEdge"
},
"title": "Edges",
"maxItems": 64,
"minItems": 8
},
"nodes": {
"type": "array",
"items": {
"$ref": "#/$defs/ArticleNeighborhoodNode"
},
"title": "Nodes",
"maxItems": 25,
"minItems": 9
},
"freshness": {
"type": "string",
"const": "CURRENT",
"title": "Freshness"
},
"anchor_pmid": {
"anyOf": [
{
"type": "string",
"pattern": "^[0-9]{1,12}$"
},
{
"type": "null"
}
],
"title": "Anchor Pmid",
"default": null
},
"stale_after": {
"type": "string",
"title": "Stale After",
"pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\\.[0-9]{3}Z$"
},
"generated_at": {
"type": "string",
"title": "Generated At",
"pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\\.[0-9]{3}Z$"
},
"graph_version": {
"type": "string",
"title": "Graph Version",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"
},
"anchor_node_id": {
"type": "string",
"title": "Anchor Node Id",
"pattern": "^[A-Za-z0-9][A-Za-z0-9:._/-]{0,159}$"
},
"anchor_work_id": {
"anyOf": [
{
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"
},
{
"type": "null"
}
],
"title": "Anchor Work Id",
"default": null
},
"policy_version": {
"type": "string",
"title": "Policy Version",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"
},
"usage_boundary": {
"$ref": "#/$defs/ArticleNeighborhoodUsageBoundary"
},
"release_channel": {
"type": "string",
"title": "Release Channel",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"
},
"contract_version": {
"enum": [
"0.1",
"0.2"
],
"type": "string",
"title": "Contract Version"
}
},
"additionalProperties": false
}{
"title": "Explore a work literature neighborhood",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_corpus_summary — Get corpus summary
Return public corpus coverage, source, freshness, and count metadata. Results are for literature discovery and professional review, not diagnosis or treatment.
{
"type": "object",
"title": "GetCorpusSummaryArguments",
"properties": {},
"additionalProperties": false
}{
"type": "object",
"$defs": {
"PublicCorpusCounts": {
"type": "object",
"title": "PublicCorpusCounts",
"required": [
"source_records",
"unique_works",
"gene_mentions",
"variant_mentions",
"phenotype_mentions",
"evidence_links"
],
"properties": {
"unique_works": {
"type": "integer",
"title": "Unique Works"
},
"gene_mentions": {
"type": "integer",
"title": "Gene Mentions"
},
"evidence_links": {
"type": "integer",
"title": "Evidence Links"
},
"source_records": {
"type": "integer",
"title": "Source Records"
},
"variant_mentions": {
"type": "integer",
"title": "Variant Mentions"
},
"phenotype_mentions": {
"type": "integer",
"title": "Phenotype Mentions"
}
},
"additionalProperties": false
},
"PublicCorpusSource": {
"type": "object",
"title": "PublicCorpusSource",
"required": [
"source_id",
"display_name",
"source_type",
"source_records",
"unique_works",
"evidence_links"
],
"properties": {
"source_id": {
"type": "string",
"title": "Source Id"
},
"source_type": {
"type": "string",
"title": "Source Type"
},
"display_name": {
"type": "string",
"title": "Display Name"
},
"unique_works": {
"type": "integer",
"title": "Unique Works"
},
"evidence_links": {
"type": "integer",
"title": "Evidence Links"
},
"source_records": {
"type": "integer",
"title": "Source Records"
}
},
"additionalProperties": false
}
},
"title": "PublicCorpusSummaryResponse",
"required": [
"contract_version",
"generated_at",
"counts",
"sources",
"deduplication_keys",
"scope"
],
"properties": {
"scope": {
"type": "string",
"title": "Scope"
},
"counts": {
"$ref": "#/$defs/PublicCorpusCounts"
},
"sources": {
"type": "array",
"items": {
"$ref": "#/$defs/PublicCorpusSource"
},
"title": "Sources"
},
"generated_at": {
"type": "string",
"title": "Generated At"
},
"contract_version": {
"type": "string",
"const": "1.0",
"title": "Contract Version"
},
"deduplication_keys": {
"type": "array",
"items": {
"type": "string"
},
"title": "Deduplication Keys"
}
},
"additionalProperties": false
}{
"title": "Get corpus summary",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}support_helena — Support Helena's free scientific infrastructure
Learn about the separate Helena Good MCP. This opt-in information action initiates no payment or outreach and changes no scientific result.
{
"type": "object",
"properties": {},
"additionalProperties": false
}{
"type": "object",
"additionalProperties": true
}{
"title": "Support Helena's free scientific infrastructure",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}Prompts
4 advertised
search_biomedical_literature — Search biomedical literature
Form a source-linked biomedical literature search.
- question
- A public, non-sensitive question with every known PMID, DOI, or PMCID. (required)
review_publication — Review a publication
Retrieve and critically review one public PMID.
- pmid
- One PubMed identifier. (required)
explore_publication_graph — Explore a PMID neighborhood
Explore source-linked literature around one PMID.
- pmid
- One PubMed identifier. (required)
explore_work_graph — Explore a work neighborhood
Explore source-linked literature around one Noodle work ID.
- work_id
- One Noodle work identifier. (required)
Resources
1 advertised
noodle-literature-methodology — Noodle literature methodology
Scope, evidence boundaries, and safe-use guidance for Noodle.
noodle://methodology/v130-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 1363 ms
- 95th percentile latency
- 1363 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 1363 ms · metadata changed · 7 tool(s), 1 resource(s), 4 prompt(s); warnings: Advertises resources/templates/list but does not implement it
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http noodle-biomedical-literature-discovery-mcp https://api.helena.bio/noodle/v1/mcpCodex
codex mcp add noodle-biomedical-literature-discovery-mcp --url https://api.helena.bio/noodle/v1/mcpCursor
{
"mcpServers": {
"noodle-biomedical-literature-discovery-mcp": {
"url": "https://api.helena.bio/noodle/v1/mcp"
}
}
}Cline
{
"mcpServers": {
"noodle-biomedical-literature-discovery-mcp": {
"type": "streamableHttp",
"url": "https://api.helena.bio/noodle/v1/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"noodle-biomedical-literature-discovery-mcp": {
"type": "http",
"url": "https://api.helena.bio/noodle/v1/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http noodle-biomedical-literature-discovery-mcp https://api.helena.bio/noodle/v1/mcpClaude Desktop
https://api.helena.bio/noodle/v1/mcpWindsurf
{
"mcpServers": {
"noodle-biomedical-literature-discovery-mcp": {
"serverUrl": "https://api.helena.bio/noodle/v1/mcp"
}
}
}Let your agent find its tools
Find servers like Noodle Biomedical Literature Discovery MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.