Skip to main content
Glama

fetch_article

Read-only

Fetch a paper's whole open-access text from Europe PMC by PMCID or PMID: title, authors, journal, license, abstract, every section and every figure caption, as Markdown. This is how a pipeline reads a paper rather than its abstract; pass the Markdown to find_accessions for the records it names. Only Europe PMC's open-access subset is served, and an article outside it is refused with Europe PMC's own reason.

Input Schema

NameRequiredDescriptionDefault
idYesthe PMCID (PMC13627669) or PMID (39012345) of the paper.
_filesNoThe project: record references shaped like _subject. Their records become library documents a tool names in sequences/parts/document; a trace or alignment is found by file name.
_subjectNoThe record to act on: exactly one of sequence, accession (+source), sample (an id from list_samples) or file ({name, text} or {name, base64}); record_index picks one record of several.

Output Schema

NameRequiredDescriptionDefault
pmcidYesthe PMCID Europe PMC served it under
titleYesthe article's title
licenseYesthe article's own license statement, as the publisher wrote it
markdownYesthe whole article as Markdown, figure references linked to their captions
endpointsYesthe URLs actually called
retrievedAtYeswhen it was fetched

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / properties / license / description
      Previous value: -"the article's own licence statement, as the publisher wrote it"New value: +"the article's own license statement, as the publisher wrote it"
  2. Added

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds genuinely useful behavior beyond that: the OA-only eligibility gate, that refusals come back with Europe PMC's own reason, and the Markdown output form. It does not cover rate limits, truncation for very long papers, or what a partial/legacy article yields, so it sits at an adequate 3-4; the OA refusal semantics push it to 4.

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

Conciseness5/5

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

Three tight sentences, front-loaded with the verb and resource, then the pipeline/next-tool routing, then the eligibility caveat. No filler and no sentence that could be deleted without losing a decision-relevant fact.

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

Completeness4/5

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

Output schema is present, so return-value documentation is not required, yet the description still enumerates the payload fields usefully. Eligibility and downstream routing are both covered. Minor gap: no guidance on error surfacing beyond refusal or on handling articles that are only partially available, but for a read-only fetch that is close to complete.

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 coverage is 100% and the id property already documents the PMCID/PMID forms with examples, so the description largely restates the schema's id semantics and adds no new syntax. Baseline 3 is met; the minor lift to 4 comes from clarifying that either identifier type resolves to the same whole-article retrieval, which reinforces the schema's meaning rather than adding detail beyond it.

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

Purpose5/5

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

States a specific verb (fetch), resource (a paper's whole open-access text), the source (Europe PMC), the accepted identifiers (PMCID or PMID), and enumerates exactly what the payload contains (title, authors, journal, license, abstract, sections, figure captions, as Markdown). This is specific enough that an agent can distinguish it from search_literature or generic record fetchers without opening the schema.

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

Usage Guidelines4/5

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

Explicitly frames the tool as the full-text path ("how a pipeline reads a paper rather than its abstract") and chains it forward by telling the agent to pass the Markdown to find_accessions. It also states the eligibility boundary (only the open-access subset; outside articles are refused with Europe PMC's reason). It stops short of naming a specific alternative for the non-OA case, which keeps it at 4 rather than 5.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources