Skip to main content
Glama

Read an article with smry

get_article
Read-only

Fetch clean, source-grounded text for a public article or YouTube URL, budgeted to a token limit and addressable by paragraph anchor. Returns an outline of headings (empty when the source has none), the requested window, and a next_cursor when more remains. Prefer search_article when you have a specific question rather than needing the whole text.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYes
cursorNo
max_tokensNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
textYes
titleYes
authorYes
outlineYes
languageYes
cache_hitYes
publisherYes
to_anchorYes
reader_urlYes
source_urlYes
from_anchorYes
next_cursorYes
published_atYes
responded_atYes
total_blocksYes
total_tokensYes
content_qualityYes
tokens_returnedYes
extraction_sourceYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changed
    • removedInput schema / $schema
      Removed value: -"http://json-schema.org/draft-07/schema#"
    • removedInput schema / properties / cursor / description
      Removed value: -"Paragraph anchor to resume from. Pass the next_cursor of a previous call to continue reading."
    • removedInput schema / properties / max_tokens / description
      Removed value: -"Approximate token budget for the returned text. Defaults to 4000, which covers a typical article whole. Raise it for long documents, lower it when context is tight."
    • removedInput schema / properties / url / description
      Removed value: -"The public http or https article or YouTube URL to read."
    • changedOutput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already mark the operation read-only and non-destructive, so the description adds meaningful behavior: it returns an outline of headings (empty when none exist), a requested window, and a next_cursor for pagination. It also discloses that the text is clean, source-grounded, and budgeted by a token limit. No contradiction with annotations.

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 sentences, each earning its place: what it fetches, what it returns, and when to choose the alternative. The core action and scope are front-loaded with no filler.

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

Completeness5/5

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

For a read-only, three-parameter tool with an output schema, the description covers purpose, scope, behavior, pagination, the empty-outline edge case, and alternative routing. Nothing material an agent needs to invoke it correctly is missing.

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 the description must carry the meaning. It semantically covers all three parameters: url ('public article or YouTube URL'), max_tokens ('budgeted to a token limit'), and cursor ('paragraph anchor' / 'next_cursor'). It does not name the parameters explicitly, leaving a small inference gap, but the compensation is strong.

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?

The description opens with a specific verb and resource: 'Fetch clean, source-grounded text for a public article or YouTube URL', then names distinctive features like token budgeting, paragraph anchors, and pageable results. It clearly differentiates itself from search_article, which is for targeted questions rather than whole-text retrieval.

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

Usage Guidelines5/5

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

The last sentence explicitly says 'Prefer search_article when you have a specific question rather than needing the whole text,' providing a clear when-not and named alternative. The description also scopes this tool to public articles and YouTube URLs, signaling what inputs are appropriate.

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