Skip to main content
Glama

fetch_links

Extract link text and URLs from a web page to collect sources from catalog or listing pages, with SSRF protection blocking internal addresses.

Instructions

Ссылки со страницы: текст ссылки + адрес.

КОГДА: собрать источники со страницы-каталога. НЕ КОГДА: нужен текст страницы → fetch_page. Внутренние адреса блокирует страж SSRF.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYes
max_linksNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the burden and does disclose a real behavioral trait: internal addresses are blocked by an SSRF guard. It also states the return shape (link text + address). It omits auth requirements, rate limits, and behavior on non-HTML or error pages.

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?

Four short lines, zero filler, front-loaded with the output shape before the routing rules. Every sentence earns its place.

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?

An output schema exists, so return values need not be explained, yet the description still sketches them. Routing and the SSRF constraint are covered; the only gap is that the parameters themselves are never addressed, which is the one thing an agent needs to invoke it.

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 0% for two parameters, so the description must compensate. It never mentions 'url' or 'max_links' / its default of 100, leaving the agent to infer how many links are returned and whether the target must be a page or catalog.

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?

States a specific verb+resource ('link text + address from a page'), and explicitly distinguishes itself from fetch_page. It does not differentiate from other link-capable siblings such as fetch_many or browser_eval, but the core purpose is unambiguous.

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?

Uses an explicit WHEN / NOT WHEN structure: when to collect sources from a catalog page, and when the agent actually wants page text it should use fetch_page instead. The alternative is named with the condition that selects it.

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