Skip to main content
Glama

fetch_feed

Read-onlyIdempotent

Fetches and parses RSS 2.0 or Atom 1.0 feeds, returning feed metadata and entry details. Auto-detects feed format to provide structured data from any feed URL.

Instructions

Fetch and parse an RSS 2.0 or Atom 1.0 feed. Returns feed-level metadata (title, description, link, updated) plus a list of entries (title, link, id, published, updated, author, summary, content, contentType, categories). Auto-detects RSS vs Atom.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYes
limitNoMax entries to return (default 50)
max_bytesNoMax bytes to read (default 10MiB)
timeout_msNo
user_agentNo
max_redirectsNo
allow_private_hostsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.1

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already mark this as read-only, idempotent, and open-world. The description adds behavioral information: it performs in network fetch, parses both formats, auto-detects feed type, and returns structured metadata/entries. This is beyond what the structured annotation fields state, adding value without contradicting them.

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?

The description is three sentences, with the core action first, followed by output shape and the auto-detection note. Every sentence contributes; there is no filler or redundant restatement.

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?

The description sketches the return structure and feed types, which is helpful for a tool with no output schema. However, it does not touch on network edge cases (e.g., malformed feeds, redirect semantics, use of allow_private_hosts), and parameter gaps remain, so it is not fully complete for a 7-parameter tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 29% (only limit and max_bytes have descriptions). The tool description does not mention any parameter, so it does little to compensate. The main input (`url`) is implicit, but helper parameters like timeout_ms, user_agent, allow_private_hosts are left without any guidance. This is a noticeable gap.

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?

The description states a specific verb ('Fetch and parse') and resource ('RSS 2.0 or Atom 1.0 feed'), and enumerates the output fields, so an agent can tell it is a feed parser. It does not explicitly differentiate itself from sibling tools like fetch_reader, but the feed type and parse behavior make the purpose clear. Hence a 4, not a 5.

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?

The description gives clear context: use this when you need a parsed RSS/Atom feed, and it lists what is returned. It does not explicitly call out siblings or mention 'when not to use' (e.g., raw XML or HTML fetching), but the intended use is apparent and free of ambiguity.

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