Skip to main content
Glama

fetch_data

Read-onlyIdempotent

One-step fetch: find the best Sugra endpoint for the query and call it.

Combines search_endpoints + call_endpoint into a single round trip. Use this when you want data without manually picking an operation_id. The full search_endpoints + describe_endpoint + call_endpoint dance is still available when you need explicit control, but for most natural-language queries this tool is enough.

Behavior:

  1. Search the bundled catalog for the query. Top match wins.

  2. If the matched endpoint has required parameters and they are all provided in params, call it and return the response.

  3. If required parameters are missing, return the candidate endpoints and the missing-params list so the LLM can retry with the correct params dict on the next call.

Examples:

  • fetch_data("US CPI inflation", params={"series_id": "CPIAUCSL"}) → calls /api/v1/fred/series/CPIAUCSL, returns observations.

  • fetch_data("Bitcoin price", params={"coin_id": "bitcoin"}) → calls /api/v1/crypto/bitcoin/price.

  • fetch_data("Latest financial news") → news_latest has no required params, returns latest news directly.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bodyNoJSON body for an auto-selected POST operation; the tool returns the request_body_schema to fill when the match needs one. Pass a JSON object or a JSON array as that schema's top-level type dictates.
limitNoBounds ONLY the top-level list: the envelope data list (or a bare top-level array). Nested lists inside records are never truncated; meta.shaped reports whether the limit applied.
queryYes
fieldsNo
paramsNoParameters for the auto-selected endpoint. If omitted and the best-match endpoint has required parameters, the tool returns that endpoint's required_parameters and examples so you can retry with them filled in.
include_rawNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare read-only, idempotent, and non-destructive behavior, so the safety burden is covered. The description adds valuable behavioral context beyond this: a numbered Behavior list disclosing top-match auto-selection and the fallback path that returns candidate endpoints and a missing-params list for retry. Only minor edge case (no match found) is undisclosed.

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 front-loaded with a one-line core purpose, followed by a short usage paragraph, a numbered Behavior list, and concrete examples. Every sentence contributes information; the structure is highly scannable and free of filler.

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?

For a complex orchestrating tool with 6 params, the description covers the full search→call→retry workflow, when to use alternatives, and provides three illustrative examples. Output schema exists so return format need not be explained. Minor gap: behavior when no endpoint matches the query is not stated.

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?

Schema coverage is 50%: body, limit, and params have schema descriptions; query, fields, and include_raw do not. The description substantially enriches params semantics (retry flow, required_parameters return) and implies query semantics via 'Search the bundled catalog for the query,' but fields and include_raw receive no explanatory treatment in either schema or description. Partial compensation only.

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 first sentence states a specific verb+resource: 'find the best Sugra endpoint for the query and call it,' and explicitly distinguishes from siblings by naming search_endpoints + call_endpoint as the components it combines. It clearly positions the tool as an auto-selecting convenience wrapper versus the manual operation_id workflow.

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 description gives explicit when-to-use guidance: 'Use this when you want data without manually picking an operation_id,' and names the alternative ('search_endpoints + describe_endpoint + call_endpoint dance') for when explicit control is needed. It also explains the retry flow when required params are missing, so the agent knows exactly when a follow-up call is needed.

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.

TDQS

A3.7/5.0
Disambiguation3/5

Several tools overlap in purpose: call_endpoint, fetch_data, and search_endpoints all relate to invoking endpoints, with fetch_data bundling search and call. resolve_entity and sugra_entity_lookup both resolve entities but target different domains (market vs. compliance), which could confuse agents.

Naming Consistency2/5

Naming patterns are inconsistent: 'endpoint' appears as both singular and plural (call_endpoint vs. search_endpoints), verbs vary (fetch_data vs. get_snapshot), and the 'sugra_' prefix is only applied to two of the entity-related tools, leaving resolve_entity without a clear thematic connection.

Tool Count4/5

With 11 tools, the count is within the typical range for a comprehensive financial API wrapper and does not feel bloated or sparse. Each tool serves a distinct functional area, so the number is appropriate.

Completeness4/5

The tool set covers endpoint discovery, data retrieval (snapshots, timeseries), entity resolution, and compliance screening, which are the core capabilities expected of such an API. Minor gaps like batch operations or authentication handling are not critical for the intended use case.