Research area
Literature
Namespace
genereviews
Listed tools
13
Upstream source
GeneReviews

Research tasks

  • Find a chapter by gene symbol
  • Read a passage with its section and chapter citation

Start with tool discovery

The catalog lists genereviews_search_genereviews as a representative tool. After connecting your client, inspect the tools and input requirements returned by the service before submitting a query.

Identifiers to prepare

  • Gene symbol
  • NCBI Bookshelf NBK accession
  • Passage identifier returned by the integration

All available tools (13)

The router surfaces these tools namespaced under genereviews_*:

search_genereviewsSearch GeneReviews by gene symbol using the indexed corpus first when available, then fallback to live NCBI E-utils. If resolver links are unavailable or no PubMed ID is found, use search_passages(gene=<symbol>) for indexed chapter evidence. Pass fresh=true to bypass the corpus and query live NCBI.

Search GeneReviews by gene symbol using the indexed corpus first when available, then fallback to live NCBI E-utils. If resolver links are unavailable or no PubMed ID is found, use search_passages(gene=<symbol>) for indexed chapter evidence. Pass fresh=true to bypass the corpus and query live NCBI.

Input parameters

  • fresh(boolean) — Bypass index; fetch live from NCBI
  • gene_symbol(string) [required] — HGNC gene symbol to resolve, e.g. 'BRCA1'.
  • retmax(integer) — Maximum number of results to return
get_abstractLive NCBI E-utils abstract wrapper that always calls live NCBI. Adds normalized response shape, structured error envelopes, and corpus-version stamping over a raw efetch call (structured errors and version metadata are part of the value-add). Default responses may carry active _meta.corpus_version context; fresh=true labels the response version as live:<timestamp>.

Live NCBI E-utils abstract wrapper that always calls live NCBI. Adds normalized response shape, structured error envelopes, and corpus-version stamping over a raw efetch call (structured errors and version metadata are part of the value-add). Default responses may carry active _meta.corpus_version context; fresh=true labels the response version as live:<timestamp>.

Input parameters

  • fresh(boolean) — Retained for backward compatibility; no longer affects versioning. Retrieval is ALWAYS a live PubMed E-utils fetch, so the response version is always live:<timestamp>.
  • pmid(string) [required] — PubMed ID (numeric), e.g. '20301425'.
get_linksLive NCBI E-utils link wrapper that always calls live NCBI and returns categorized/normalized links. Adds structured error envelopes and corpus-version stamping over a raw elink call. Default responses may carry active _meta.corpus_version context; fresh=true labels the response version as live:<timestamp>.

Live NCBI E-utils link wrapper that always calls live NCBI and returns categorized/normalized links. Adds structured error envelopes and corpus-version stamping over a raw elink call. Default responses may carry active _meta.corpus_version context; fresh=true labels the response version as live:<timestamp>.

Input parameters

  • fresh(boolean) — Retained for backward compatibility; no longer affects versioning. Retrieval is ALWAYS a live NCBI E-utils call, so the response version is always live:<timestamp>.
  • pmid(string) [required] — PubMed ID (numeric), e.g. '20301425'.
get_fulltextPerform a live Bookshelf scrape when corpus passages are insufficient. Use sections='management,diagnosis' to narrow the scrape; prefer corpus passage tools for indexed retrieval and citations. Returns structured errors/version stamping, with _meta.corpus_version for corpus context; fresh=true labels the response version as live:<timestamp>.

Perform a live Bookshelf scrape when corpus passages are insufficient. Use sections='management,diagnosis' to narrow the scrape; prefer corpus passage tools for indexed retrieval and citations. Returns structured errors/version stamping, with _meta.corpus_version for corpus context; fresh=true labels the response version as live:<timestamp>.

Input parameters

  • fresh(boolean) — Retained for backward compatibility; no longer affects versioning. Retrieval is ALWAYS a live Bookshelf scrape, so the response version is always live:<timestamp>.
  • nbk_id(string) [required] — Bare NCBI Bookshelf ID, e.g. 'NBK1247'.
  • sections(any) — Optional comma-separated list of section keys to return (e.g. 'summary,diagnosis,management'). Matching is fuzzy: tokens match exact keys or any key containing the token as a substring. When omitted, all sections are returned.
get_genereview_summaryConvenience orchestration tool. Default response is lean: include_fulltext defaults to False; opt in for full chapter prose. max_chars (default 16000) truncates fulltext to keep responses context-budget friendly; truncated responses set _meta.truncated=true and surface next_commands -> get_chapter_section. Resolves the gene to its DEFINING corpus chapter (the chapter that gene's GeneReview is about); a gene only mentioned in a multi-gene chapter, or absent from the corpus, returns not_found (use search_passages(gene=<symbol>) for mention-level evidence). Pass fresh=true to re-fetch the resolved chapter's content live from NCBI (resolution stays corpus-authoritative). Corpus-backed responses carry _meta.corpus_version; fresh responses stamp live provenance.

Convenience orchestration tool. Default response is lean: include_fulltext defaults to False; opt in for full chapter prose. max_chars (default 16000) truncates fulltext to keep responses context-budget friendly; truncated responses set _meta.truncated=true and surface next_commands -> get_chapter_section. Resolves the gene to its DEFINING corpus chapter (the chapter that gene's GeneReview is about); a gene only mentioned in a multi-gene chapter, or absent from the corpus, returns not_found (use search_passages(gene=<symbol>) for mention-level evidence). Pass fresh=true to re-fetch the resolved chapter's content live from NCBI (resolution stays corpus-authoritative). Corpus-backed responses carry _meta.corpus_version; fresh responses stamp live provenance.

Input parameters

  • fresh(boolean) — Bypass index; fetch live from NCBI
  • gene_symbol(string) [required] — HGNC gene symbol to resolve, e.g. 'CFTR'.
  • include_abstract(boolean) — Include PubMed abstract and metadata
  • include_fulltext(boolean) — Default False: response is lean. Opt in for chapter prose. Truncation is governed by max_chars.
  • include_links(boolean) — Include all available links
  • max_chars(integer) — Cap fulltext payload size in characters when include_fulltext=true. Pass 0 to disable the cap. Truncated responses set _meta.truncated=true and surface next_commands -> get_chapter_section.
search_passagesSearch the active GeneReviews corpus. For intervention/treatment queries, pass sections=["management"]; for diagnostic criteria, pass sections=["diagnosis", "clinical_features"]. This is the main precision filter.

Search the active GeneReviews corpus. For intervention/treatment queries, pass sections=["management"]; for diagnostic criteria, pass sections=["diagnosis", "clinical_features"]. This is the main precision filter. Rerank with `rrf` (default) for hybrid retrieval, `lexical` for exact terms, or `off` for raw repository order when debugging. Use `brief` (default) for triage snippets, `full` for passage text, or `ids_only` for identifiers and ranks. Filter by `gene`, `nbk_id`, or `sections`. In `brief`/`full`, use `include` and `exclude` for field projection; include/exclude do not apply to `ids_only`, and `ids_only` omits `recommended_citation`.

Input parameters

  • exclude(any) — Optional field projection. Values: "score_breakdown" (drops the opt-in score_breakdown field), "heading_path" (drops heading_path from every row). Use when you only need text + passage_id.
  • gene(any) — Filter to a single HGNC gene symbol (e.g. 'BRCA1'). Matches any chapter whose gene_symbols array contains this value.
  • heading_path_contains(any) — Case-insensitive substring filter on heading_path. Applied pre-rerank.
  • include(any) — Opt into default-off response fields. Values: "score_breakdown" (returns raw lexical/dense ranks and populates _meta.dense_model_id + embedding_dim), "table_data" (for table passages: populates v1.1-fenced header + rows cells; narrative passages remain unaffected).
  • limit(integer) — Number of rows to return. Default 5 keeps the brief-mode payload <= ~3 KB.
  • mode(string) — Values: "brief" (default; snippet + IDs, ~3 KB), "full" (full text), "ids_only" (lean rows: `passage_id` + `rrf_score` + `lexical_rank_position` + `chapter_section`).
  • nbk_id(any) — Restrict results to one chapter, e.g. 'NBK1247'.
  • q(any) [required] — Query string (canonical). Either q or query is required; the MCP schema advertises q as required and the ``query`` alias is accepted at runtime for cross-MCP convention.
  • query(any) — Alias for q (cross-MCP convention); must equal q if both are set.
  • rerank(string) — Values: "rrf" (default; reciprocal-rank fusion), "lexical" (weighted lexical score), "off" (raw repository order; debugging only).
  • sections(any) — Restrict to one or more canonical sections. Values: "summary", "diagnosis", "clinical_features", "management", "genetic_counseling", "molecular_genetics", "resources", "other", "references".
  • snippet_chars(integer) — Approximate snippet length in characters (brief mode only; ignored for full/ids_only). Default 400. Maps to ts_headline MaxFragments and MaxWords.
get_passageReturns the focal passage wrapped in a ``PassageWindowResponse`` envelope. Use ``neighbors`` (0-5) to fetch adjacent chunks before and after the focal passage within the same section. Set ``cross_sections=true`` to allow neighbors to span section boundaries within the same chapter.

Returns the focal passage wrapped in a ``PassageWindowResponse`` envelope. Use ``neighbors`` (0-5) to fetch adjacent chunks before and after the focal passage within the same section. Set ``cross_sections=true`` to allow neighbors to span section boundaries within the same chapter. The ``_meta`` field carries attribution and the active corpus version. Latency: ~1ms p50 (neighbors=0), ~1ms p50 (neighbors=3).

Input parameters

  • cross_sections(boolean) — If true, neighbors may span across section boundaries within the same chapter. Default false keeps neighbors within the same section.
  • include(any) — Opt into table_data (v1.1-fenced header + rows cells for table passages).
  • neighbors(integer) — Fetch this many adjacent chunks before and after the focal passage. Default 0 returns only the focal passage with empty neighbor lists.
  • passage_id(string) [required] — Globally unique passage identifier of the form 'NBKxxxx:NNNN' (e.g. 'NBK1247:0022'). NBKxxxx is the chapter; NNNN is the 4-digit chunk index within the chapter.
get_passages_batchReturns the requested passages in the same order as the input ``ids`` list.

Returns the requested passages in the same order as the input ``ids`` list. Returns 200 even with partial misses; ``missing_ids`` lists unresolved ids. Returns 422 on empty list or per-id regex failure (FastAPI/Pydantic validation). Returns 413 with ``code='batch_size_exceeded'`` when the list has more than 20 ids.

Input parameters

  • ids(array) [required] — Passage ids to fetch (1-20), each of the form 'NBKxxxx:NNNN'.
  • include(any) — Opt into table_data (v1.1-fenced header + rows cells for table passages).
search_passages_batchAccepts 1-5 search specs, each with its own ``q``, ``sections``, ``nbk_id``, ``gene``, ``mode``, ``rerank``, etc. (mirrors the query parameters of ``GET /passages/search``). Executes all specs concurrently via ``asyncio.gather`` and returns a flat envelope.

Accepts 1-5 search specs, each with its own ``q``, ``sections``, ``nbk_id``, ``gene``, ``mode``, ``rerank``, etc. (mirrors the query parameters of ``GET /passages/search``). Executes all specs concurrently via ``asyncio.gather`` and returns a flat envelope. **When to use:** when a clinical-report workflow issues several related but independent queries (e.g. one scoped to ``management``, one to ``genetic_counseling``, one open-section exploratory) — batching cuts N round-trip latencies to ~1x the slowest query. **Response shape:** ``results[i].query_index`` matches the zero-based position of the spec in the request. ``results[i].hits`` mirrors the shape of ``GET /passages/search`` results for that spec's ``mode``. **Deduplication:** when the same ``passage_id`` appears in hits for multiple specs, every occurrence except the one from the lowest ``query_index`` carries ``also_matched_query_indices`` (a list of the other indices). Hits are never removed — the annotation signals redundancy without discarding evidence. **Cap:** requests with more than 5 specs are rejected with 422. **MCP:** registered as the ``search_passages_batch`` MCP tool via the FastMCP OpenAPI proxy. Latency: p95 <= 1.5x the slowest single-query latency for a 3-spec batch (concurrent execution).

Input parameters

  • specs(array) [required] — 1-5 independent search specs, each mirroring search_passages params.
get_chapter_sectionFetch all passages for a section. For keyword search within this section, use search_passages(q, nbk_id=..., sections=[...]). ``content`` carries the full joined section text (v1.1 untrusted_text; overlap stripped by default). Pass dedupe=false only for literal chunk text.

Fetch all passages for a section. For keyword search within this section, use search_passages(q, nbk_id=..., sections=[...]). ``content`` carries the full joined section text (v1.1 untrusted_text; overlap stripped by default). Pass dedupe=false only for literal chunk text.

Input parameters

  • dedupe(boolean) — Strip overlapping text between adjacent chunks (longest-common-suffix/prefix heuristic). Default True for LLM-ready joined text in ``content``. Pass false only when you need the literal stored chunk concatenation.
  • heading_path_contains(any) — Optional substring match on passage heading_path (case-insensitive). Use to narrow a section to a specific subsection. Example: heading_path_contains='Risk-Reducing Surgery' on section=management returns only the surgery subsection's passages instead of all 10.
  • nbk_id(string) [required] — Bare NCBI Bookshelf ID, e.g. 'NBK1247'.
  • section(string) [required] — Canonical section name. Values: "summary", "diagnosis", "clinical_features", "management", "genetic_counseling", "molecular_genetics", "resources", "other", "references".
get_chapter_metadataThe chapter outline tool.

The chapter outline tool. Returns chapter title, dates, gene symbols, per-section passage_count, and the full tables[] list with table_id, caption, section, and heading_path.

Input parameters

  • nbk_id(string) [required] — Bare NCBI Bookshelf ID, e.g. 'NBK1247'.
get_tableFetch a known GeneReviews table_id as structured rows. Call get_chapter_metadata first to discover tables[] entries and avoid guessing numeric table labels. caption and every header/row cell are upstream table prose, emitted as v1.1 untrusted_text objects.

Fetch a known GeneReviews table_id as structured rows. Call get_chapter_metadata first to discover tables[] entries and avoid guessing numeric table labels. caption and every header/row cell are upstream table prose, emitted as v1.1 untrusted_text objects.

Input parameters

  • nbk_id(string) [required] — Bare NCBI Bookshelf ID, e.g. 'NBK1247'.
  • table_id(string) [required] — Table identifier, e.g. 'brca1.molgen.TA'. Discoverable via get_chapter_metadata.
get_licenseGet attribution and citation terms for the GeneReviews corpus.

Get attribution and citation terms for the GeneReviews corpus. Use this tool when emitting a citation block, compiling a research-use disclosure, or verifying redistribution terms before exporting passages. Returns the same content as the genereview://license resource.

Database & release provenance

Data mode
restored-database
Attestation
attested-reference
Data release tag
corpus-data-2026-07-13-r1
Release version
v5.2.4
sha256:4486e499337e9f816a2aa0741f2a0e51ca38cda52f96fb57564cfc36f4b3c5bc
ghcr.io/berntpopp/genereviews-link@sha256:49e5156f6de85fb59ecf8efdbad0982057a6bbe91fa3a6b3ee78088b269b314c

Review the response

Keep the source record link and submitted identifiers with your notes. Record the dataset version and retrieval date when available. This page does not contain a captured GeneReviews response.