Skip to main content
Glama

OpenNash Earnings

Fetch

fetch
Read-onlyIdempotent

Get the full text for an id from search: a company's quarters and latest results, one quarter's results, or a transcript passage.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "id": "<id>"
    },
    "name": "fetch"
  }
}

Input Schema

NameRequiredDescriptionDefault
idYesAn id returned by search

Output Schema

NameRequiredDescriptionDefault
idYes
urlYes
textYes
titleYes
metadataYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.8/5.0
Behavior3/5

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

The annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered. The description's one behavioral contribution is "full text," which usefully signals this is not a truncated snippet like search results. Beyond that it says nothing extra: no note on invalid-id behavior, truncation limits, or whether a transcript passage is returned in isolation.

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?

One front-loaded sentence with zero filler; the input contract and the payload types arrive in the first clause. Nothing could be removed without losing information.

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?

The tool is simple (one required string param), annotations carry the safety profile, and an output schema exists, so the description needn't explain return values. It covers what the fetched text can be, which is enough for correct invocation. Minor gap: no failure-mode guidance when the id is stale or from a different corpus.

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

Parameters3/5

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

With a single parameter at 100% schema description coverage, the schema already tells the agent that `id` is "An id returned by search." The description's phrase "for an id from search" restates that provenance but adds no new constraints, formats, or examples. Baseline 3 applies when the schema does the heavy lifting.

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 uses a specific verb and resource ("get the full text") and pins the input to "an id from search," which separates it from the by-entity siblings like get_company, get_quarter and get_transcript. It also enumerates the kinds of records the text can cover (company quarters, one quarter's results, transcript passage), so the agent knows what it will receive. It stops short of naming a sibling explicitly, so it is 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?

"for an id from search" gives a clear entry condition: this tool is used after search has produced an id, not for direct entity lookup. That is usable routing context without exclusions, but it never states when not to use it (for example, when the agent only has a ticker or quarter and should call get_company or get_quarter instead).

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