Skip to main content
Glama

fetch_records

Fetch full records for a list of UIDs from NCBI databases like PubMed or Protein, with options for rettype and retmode.

Instructions

Fetch full records (EFetch) for a list of UIDs. USE SPARINGLY: records can be large.

rettype/retmode combinations are database-specific, e.g.: pubmed: rettype="abstract"|"medline", retmode="text"|"xml" pmc: rettype="full" (retmode="xml") protein/nuccore: rettype="fasta"|"gb"|"gp", retmode="text" Response is truncated to max_chars characters; check the "truncated" flag.

Examples: fetch_records(db="pubmed", ids="34523456", rettype="abstract") fetch_records(db="protein", ids="NP_000509.1", rettype="fasta")

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
dbYes
idsYes
retmodeNotext
rettypeYes
max_charsNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Behavior3/5

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

Discloses truncation with max_chars and the 'truncated' flag, and mentions records can be large. However, with no annotations, it does not explicitly state that the tool is read-only or address authentication/rate limits, which are common behavioral concerns.

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

Conciseness4/5

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

Description is concise, front-loads purpose and warning, uses bullet points and examples efficiently. Every sentence contributes value without redundancy.

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

Completeness3/5

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

Covers key aspects like database-specific formats and truncation, but lacks details on ids format (e.g., comma-separated) and does not explain the full output schema despite its existence. Adequate but with gaps.

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 description coverage is 0%, so description compensates well by explaining rettype/retmode combinations for multiple databases, max_chars truncation, and providing examples. Adds significant meaning beyond schema, though db and ids format are not fully elaborated.

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

Purpose4/5

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

Clearly states 'Fetch full records' as verb+resource. Provides database-specific context but does not explicitly differentiate from sibling tools like get_summaries or get_full_text, though the purpose is evident.

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

Usage Guidelines3/5

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

Includes warning 'USE SPARINGLY' and database-specific rettype/retmode combinations. However, lacks explicit guidance on when to use alternatives or when not to use, leaving usage context implied.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/dam2452/pubmed-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server