Skip to main content
Glama

AIsa Finance

Server Details

Your agent needs markets — prices and fundamentals for listed companies, the filings behind them, crypto, and what the prediction markets put the odds at.

What you can ask for • "Pull this company's income statement, cash flow and balance sheet for the last 8 quarters." • "What did insiders buy or sell, and when?" • "Snapshot prices for these 50 tickers, then the OHLC history for the three that moved." • "What are the current odds on this event across Kalshi and Polymarket?" • "Screen for companies matching these financial criteria."

How to use it Point any MCP client at https://mcp.aisa.one/finance/mcp and sign in with OAuth — there is no key to create or paste. 49 tools: prices and snapshots, income statements, balance sheets and cash flows, metrics and ratios, earnings and analyst estimates, filings and line-item search, insider trades, macro interest rates, news, a screener; CoinGecko spot prices, market tables, OHLC, per-venue tickers and trending; Kalshi and Polymarket markets and trades; plus EDINET filings for Japan.

Why this rather than the source Equities, crypto and event markets behind one account, so a cross-asset question is one conversation.

It is also a door to the rest The same login reaches 26 sources and 580+ operations. Read the number here, then ask the same agent what X is saying about the ticker today — without adding a second server.

What it costs Finding and inspecting an operation is free. Running one is billed per call at API prices, with no seat and no monthly minimum, and every call takes max_price_usd so an agent cannot overspend by accident.

Where else it reaches https://mcp.aisa.one/marketpulse/mcp · /crypto-market-data/mcp · /prediction-market-data/mcp · /stock-pulse/mcp for one slice each.

Ownership verified
Status
Healthy
Uptime
89.4% over 21 days
OAuth
Works in Glama
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.8/5.0

Scored across 54 tools

Disambiguation4/5

Most tools have clearly distinct purposes, and descriptions explicitly cross-reference related alternatives (e.g., get_coingecko_coins_id vs get_coingecko_token_data). Some overlap exists between meta-tools (search, use, batch_use, get_details) and between historical chart variants, but the descriptions make the boundaries clear.

Naming Consistency2/5

The majority follow a get_<provider>_<resource>_<detail> pattern, but there are significant exceptions: bare names like search, use, batch_use, edinet_filings_digest, twitter_stock_pulse, and list_categories, plus a post_ prefix for search tools. Some names are also awkward or misleading, such as get_coingecko_coins_id and get_financial_financials.

Tool Count2/5

54 tools is a very large surface, well above the 25+ threshold that feels heavy. While the server aggregates many finance domains (crypto, equities, prediction markets, social sentiment), the count is excessive and would benefit from deeper grouping or a smaller pinned set, especially since search and use can dynamically access the wider catalogue.

Completeness4/5

The tool set covers most of the apparent finance data domain: crypto market data, equities fundamentals and filings, macro rates, prediction markets, EDINET filings, and social sentiment. Minor gaps exist, such as no direct company name search (only a screener) and no full-text news bodies, but core workflows have no dead ends.

Available Tools

54 tools
batch_useRun up to 20 operationsA
Destructive
Inspect

Execute up to 20 operations concurrently (tool-router's batch_use). Each item answers independently; one failure never cancels the others. Billed per call to your AIsa key.

ParametersJSON Schema
NameRequiredDescriptionDefault
callsYesUp to 20 items of {call_id, operation_id, arguments}; steps at the same execution_level of a plan go in one batch
search_idNosearch_id from the search that found these operations
max_price_usdNoPer-call price cap applied to every item

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and openWorldHint=true, so safety is covered. The description adds valuable behavior: independence of items (one failure doesn't cancel others) and per-call billing. These are not derivable from annotations and help the agent set expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences with zero filler. The action and limit are front-loaded. The phrase 'tool-router's batch_use' is redundant since it restates the tool name, but it's a minor flaw. Overall it is concise and well-structured.

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?

With annotations covering destructive behavior and an output schema presumably describing results, the description covers the key operational aspects: concurrency limit, independence, and billing. It doesn't mention error reporting formats, but those likely live in the output schema. It is sufficiently complete for a batch tool.

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 description coverage is 100%, so the schema fully documents each parameter. The description adds no parameter-specific details. The calls parameter's description already explains the structure and batching context, so the baseline of 3 applies; the description doesn't need to compensate.

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 clear action (execute) and resource (operations) with a concrete limit (up to 20) and concurrency. It doesn't explicitly name the sibling 'use' for single operations, but the distinction is clear enough from the concurrency and limit. The redundancy of 'tool-router's batch_use' is minor.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus the sibling 'use' tool. The schema note about 'steps at the same execution_level of a plan go in one batch' is helpful, but it lives in the schema, not the description. The description only implies batching via concurrency but doesn't state when to choose it over the single-operation alternative.

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

edinet_filings_digestEDINET filings digest: one day's disclosures, filterableA
Read-onlyIdempotent
Inspect

One day of Japanese EDINET filings as a scannable list, with the filtering upstream lacks.

Calls the same upstream as get_edinet_documents (which measured 612 KB for one business day, with no filter parameters at all) and keeps six fields per filing: docID, filerName, secCode, docTypeCode, docDescription, submitDateTime. Filters run only on what you pass: doc_type_code matches exactly (for example 120 for annual securities reports, 140 for quarterly, 160 for semi-annual, 350 for large shareholding reports), and listed_only=true keeps filings that carry a secCode — about two thirds of a typical day. Measured: 112 KB unfiltered, 73 KB with listed_only, around 10 KB with a doc_type_code.

Returns filings in upstream order plus total_filings (the day's full count) and returned, so a filtered view can never pass for the whole day. Each docID feeds the REST download endpoint; the raw fourteen-field records live in get_edinet_documents.

date is YYYY-MM-DD. It does NOT rank or select beyond your filters.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateYes
listed_onlyNo
doc_type_codeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, but the description adds valuable behavioral context: it returns `total_filings` and `returned` so a filtered view cannot be mistaken for the whole day, it does not rank results, and it provides measured payload sizes (112 KB unfiltered, 73 KB with listed_only, ~10 KB with doc_type_code). These details go beyond generic annotations and inform the agent about response characteristics and data volume.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose and then elaborates with relevant details. It is longer than minimal, but every sentence earns its place: upstream comparison, field list, filtering behavior, size measurements, and return fields. The structure is logical, moving from general purpose to specifics. A slightly tighter wording could improve it, but it remains efficient.

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?

The description is thorough for an agent to invoke correctly. It explains the filtering semantics, the return fields (`filings`, `total_filings`, `returned`), the relationship to the upstream tool, and the date format. Since an output schema exists, it need not detail return structure. Nothing critical is missing; the description covers all necessary operational details.

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

Parameters5/5

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

Schema coverage is 0% (no descriptions in the schema), so the description must fully explain parameters. It does: `date` is YYYY-MM-DD, `listed_only=true` keeps filings with a secCode (~two thirds of a day), and `doc_type_code` matches exactly with concrete examples (120, 140, 160, 350). This gives the agent complete semantic understanding of all three parameters, far exceeding what the schema provides.

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 states a specific verb and resource: 'One day of Japanese EDINET filings as a scannable list, with the filtering upstream lacks.' It clearly identifies the tool's function and differentiates it from the sibling `get_edinet_documents` by highlighting the filtering capability. The mention of six fields and the explicit contrast with the upstream tool leaves no ambiguity about what this tool does.

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 names the sibling `get_edinet_documents` and contrasts it: the upstream has no filter parameters and returns raw fourteen-field records, while this tool provides filtered six-field records. It also states 'It does NOT rank or select beyond your filters,' clarifying scope. However, it does not explicitly say 'use this when you need filtered results, use the upstream when you need full records,' leaving the decision slightly implicit.

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

get_coingecko_coins_categoriesCategories with Market DataA
Read-onlyIdempotent
Inspect

Roughly 749 crypto categories with market data attached: id, name, market_cap, market_cap_change_24h, volume_24h, top_3_coins_id, top_3_coins, content and updated_at. Sort with order by market cap, name or 24h market-cap change. Use it to see which sectors are moving. For the plain identifier list that the category filter expects, get_coingecko_coins_categories_list is smaller and faster.

ParametersJSON Schema
NameRequiredDescriptionDefault
orderNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already cover read-only, idempotent, and non-destructive behavior. The description adds useful behavioral context beyond that: the approximate data volume ('Roughly 749'), the supported sort dimensions, and the performance/size comparison with the sibling tool. It doesn't mention defaults or pagination, but annotations lower the burden.

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 focused sentences: returns + fields, sorting usage, and sibling alternative. Every clause earns its place, and the key value proposition (which sectors are moving) is front-loaded.

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?

With one optional parameter, existing output schema, and annotations covering the safety profile, the description is sufficient. It tells the agent what data comes back, how to sort, and when to use a better-suited alternative. Nothing required for correct invocation 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?

The only parameter `order` is fully enumerated in the schema with self-explanatory enum values. With 0% schema description coverage, the description compensates by explaining the parameter's purpose: 'Sort with `order` by market cap, name or 24h market-cap change.' This maps directly to the enum options and adds meaning beyond bare names.

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 states exactly what the tool returns: 'Roughly 749 crypto categories with market data attached' and enumerates the fields. It also differentiates itself from the sibling by contrasting with 'get_coingecko_coins_categories_list' which returns a plain identifier list.

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?

Explicit usage guidance is present: 'Use it to see which sectors are moving' and a clear alternative for a different need: 'For the plain identifier list that the `category` filter expects, get_coingecko_coins_categories_list is smaller and faster.' This tells the agent exactly when to choose one tool over the other.

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

get_coingecko_coins_categories_listCategories ListA
Read-onlyIdempotent
Inspect

A flat identifier map of roughly 856 CoinGecko categories, each as category_id and name. These are the values accepted by the category filter on get_coingecko_coins_markets, so use this to turn a theme into a usable id. It carries no market data at all; for category market caps, 24h change and leading coins use get_coingecko_coins_categories.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint false, so the safety profile is covered. The description adds useful behavioral context: it states the output is a flat identifier map and explicitly says it carries no market data at all, which clarifies what the tool does not return. This goes beyond the 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?

The description is two sentences with no wasted words. It front-loads the core definition ('flat identifier map'), then immediately explains its practical use and the alternative. Every sentence earns its place, and the structure is efficient.

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 simple list tool with no parameters and an output schema present, the description is fully adequate. It states what is returned, how to use it, what it does not include, and which sibling tool to use for related but different data. No critical information is missing for an agent to correctly invoke it.

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?

The tool has zero parameters and the input schema is empty, so there is nothing to document about parameters. The description adds value by explaining the output structure (category_id and name) and their purpose, which is relevant to using the result. With 0 params, the baseline is 4, and the description adequately covers the context.

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 clearly states the tool's function: it returns a flat identifier map of CoinGecko categories with `category_id` and `name`. It explicitly distinguishes itself from the sibling `get_coingecko_coins_categories` by noting it carries no market data, so an agent can tell them apart without inspecting schemas.

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 usage guidance: use this tool to turn a theme into a category id for the `category` filter on `get_coingecko_coins_markets`, and use `get_coingecko_coins_categories` instead for market caps and leading coins. It clearly specifies when to use this tool versus the alternative.

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

get_coingecko_coins_idCoin Data by IDA
Read-onlyIdempotent
Inspect

Everything CoinGecko holds on one coin, selected by id: description, links, image, categories, platforms and detail_platforms (contract addresses per chain), market_cap_rank, and a market_data block carrying current_price, market_cap, total_volume, fully_diluted_valuation, ath and atl with dates and change percentages. The heavy sections are opt-in via market_data, community_data, developer_data, tickers, sparkline and localization — leave them off unless needed, the full payload is large. Use it for a coin profile. For a price table across many coins use get_coingecko_coins_markets; to look the same coin up by contract address use get_coingecko_token_data.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesCoinGecko coin ID (e.g., `bitcoin`, `ethereum`). Get the list via `/coins/list`.
tickersNo
sparklineNo
market_dataNo
localizationNo
community_dataNo
developer_dataNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already establish read-only, idempotent, non-destructive behavior. The description adds useful behavioral context beyond that by warning that the full payload is large and that `market_data`, `community_data`, `developer_data`, `tickers`, `sparkline`, and `localization` are heavy sections that should be left off unless needed. This is valuable operational transparency that the annotations do not provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is longer than average but earns its length: it front-loads the primary return contents, then provides differentiation guidance and payload-size advice. It could be slightly tighter, but no sentence is filler and the structure flows logically from what-the-tool-returns to when-to-use-it.

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 complex read tool with an output schema, the description is complete enough: it covers the full scope of returned data, warns about payload size, suggests which flags to disable, and routes to the correct siblings. The existing output schema handles return-value structure, so the description does not need to restate that. No critical calling context appears missing.

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 description coverage is low (14%), so the description carries a heavy burden. It identifies the boolean parameters as controlling heavy sections and advises disabling them unless needed, but it does not explain what each flag semantically includes (e.g., what `community_data` or `developer_data` contains). The `id` parameter's meaning is largely left to the schema, which already documents the coin ID and example. Overall, the description partially compensates but does not fully fill the gap left by the sparse schema.

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 clearly states the tool returns everything CoinGecko holds on a single coin selected by `id`, and enumerates the key sections (`description`, `links`, `image`, `categories`, `platforms`, `market_data`, etc.). It differentiates itself from sibling tools by naming alternatives for price tables and contract-address lookups, so an agent can identify it confidently.

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?

It explicitly says 'Use it for a coin profile' and gives concrete routing guidance: for a price table across many coins use `get_coingecko_coins_markets`, and for lookup by contract address use `get_coingecko_token_data`. It also advises leaving heavy optional sections off unless needed, which is actionable usage guidance.

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

get_coingecko_coins_id_historyCoin Historical DataA
Read-onlyIdempotent
Inspect

A snapshot of one coin on a single calendar day. date is required and must be formatted dd-mm-yyyy (day, month, four-digit year). Returns market_data holding current_price, market_cap and total_volume as of that day, alongside community_data, developer_data and public_interest_stats. Use it for one fixed point in time. For a continuous series use get_coingecko_coins_id_market_chart for a trailing window, or get_coingecko_coins_id_market_chart_range for an explicit one.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesCoinGecko coin ID (e.g., `bitcoin`, `ethereum`). Get the list via `/coins/list`.
dateYesDate in `dd-mm-yyyy` format.
localizationNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, so safety is covered. The description adds behavioral context by specifying the returned data structure (market_data, community_data, etc.) and the date format requirement, which goes beyond the schema. However, it doesn't discuss error handling or rate limits, but that's acceptable given the simplicity.

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?

Two sentences, no filler. The first sentence defines the tool and its key constraint (date format), the second gives usage direction and alternatives. Well-structured and front-loaded.

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?

Given the output schema exists, the description need not detail return fields exhaustively, but it still lists the main categories. It covers the required parameter, format, and usage distinction. It is complete for a read-only snapshot tool, leaving nothing essential for an agent to call it correctly.

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 67% (id and date have descriptions). The description reinforces the date format (dd-mm-yyyy) and that date is required, but this is redundant with the schema. It adds no new information about localization (which has a default). Thus it provides minimal additional value over the schema.

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 clearly states it provides a snapshot of one coin on a single calendar day, with a specific date format. It distinguishes itself from sibling tools by naming the continuous series alternatives, making its purpose 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?

It explicitly instructs when to use this tool ('Use it for one fixed point in time') and directs to market_chart or market_chart_range for continuous data. This provides clear selection criteria among siblings.

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

get_coingecko_coins_id_market_chartCoin Historical ChartA
Read-onlyIdempotent
Inspect

Historical series for one coin over a trailing window set by days, returned as three parallel arrays: prices, market_caps and total_volumes. Each entry is a two-element pair of timestamp and value, and the timestamp is in milliseconds. Granularity follows days automatically, or force it with interval (daily or hourly). Use it to chart a trend ending now. For an explicit start and end use get_coingecko_coins_id_market_chart_range; for candlesticks use get_coingecko_coins_id_ohlc; for one specific past day use get_coingecko_coins_id_history.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesCoinGecko coin ID (e.g., `bitcoin`, `ethereum`). Get the list via `/coins/list`.
daysYesData up to N days ago. Accepts `1`, `7`, `14`, `30`, `90`, `180`, `365`, or `max`.
intervalNoData interval. CoinGecko supports `daily`; `hourly` is also available for supported ranges.
precisionNo`full` or a value from `0` to `18` to specify decimal places for currency price values.
vs_currencyYesTarget currency for price (e.g., `usd`, `eur`, `btc`). See `/simple/supported_vs_currencies`.usd

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds valuable behavior beyond annotations: output shape (three parallel arrays), timestamp unit (milliseconds), auto-granularity based on `days`, and the optional `interval` override. It does not mention rate limits or error cases, but those are not critical given the strong annotation coverage.

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 sentences with no filler. The most important output-shape and scope information is front-loaded, followed by sibling routing. Every sentence earns its place and the description is compact relative to the tool's complexity.

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?

Combined with a fully described input schema, rich annotations, and an output schema, the description provides everything an agent needs to call this tool correctly: scope, output structure, timestamp units, granularity behavior, and explicit alternatives. No critical call prerequisite or expected-return detail 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 100%, so the input schema already documents every parameter. The description adds meaning beyond the schema by clarifying that `days` defines a trailing window, that granularity follows `days` automatically, and that `interval` can force `daily` or `hourly`. It doesn't add detail for `precision` or `vs_currency`, but those are fully described in the schema.

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 states a specific verb and resource: 'Historical series for one coin over a trailing window set by `days`.' It also distinguishes itself from siblings by emphasizing the trailing-window scope and by naming what it is not (range, OHLC, history). An agent can tell it apart without opening another schema.

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 explicitly says when to use this tool: 'Use it to chart a trend ending now.' It then names the alternatives for explicit start/end (market_chart_range), candlesticks (ohlc), and a specific past day (history). This is clear, direct routing guidance.

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

get_coingecko_coins_id_market_chart_rangeCoin Market Chart RangeA
Read-onlyIdempotent
Inspect

Historical series for one coin between two explicit points in time. from and to are Unix timestamps in seconds, while the timestamps inside the response are in milliseconds — the two are not the same unit, which is the usual source of empty or misaligned results. Returns prices, market_caps and total_volumes as timestamp-and-value pairs; CoinGecko picks granularity from the window length. Use it to line a series up with a known event window. For a trailing window ending now, get_coingecko_coins_id_market_chart takes a days count instead.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesCoinGecko coin ID (e.g., `bitcoin`, `ethereum`). Get the list via `/coins/list`.
toYesEnd UNIX timestamp (seconds).
fromYesStart UNIX timestamp (seconds).
precisionNo`full` or a value from `0` to `18` to specify decimal places for currency price values.
vs_currencyYesTarget currency for price (e.g., `usd`, `eur`, `btc`). See `/simple/supported_vs_currencies`.usd

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already declare the tool read-only and idempotent. The description adds valuable behavioral context beyond that: input timestamps are in seconds while response timestamps are in milliseconds, the response contains three named arrays, and CoinGecko chooses granularity based on window length. This is exactly the kind of non-obvious behavior disclosure that prevents empty or misaligned results.

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, front-loads the core purpose, and spends no words on unnecessary detail. Every sentence earns its place: the unit warning, the return structure, and the sibling routing all add practical value.

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?

Given the rich output schema and fully covered input schema, the description covers the critical gotcha, names the output arrays, and points to the correct sibling tool. There are no obvious gaps that would prevent an agent from selecting or invoking this tool correctly.

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?

The schema already provides 100% description coverage for all five parameters, including examples and units. The description reinforces the from/to unit distinction but adds limited parameter-level meaning beyond that, so the baseline score of 3 is appropriate.

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 clearly identifies the resource and action: it returns a historical series for one coin between two explicit timestamps. It also distinguishes itself from the sibling market_chart tool by contrasting explicit from/to points with a trailing days count, making the purpose 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?

It gives explicit guidance: use this tool to align a series with a known event window, and use get_coingecko_coins_id_market_chart instead when you need a trailing window ending now. This directly routes agents to the correct alternative and prevents common misuse.

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

get_coingecko_coins_id_ohlcCoin OHLCA
Read-onlyIdempotent
Inspect

Candlestick data for one coin as a bare array of rows, each row positional: timestamp in milliseconds, then open, high, low and close. There are no field names in the response and no volume. Candle width is derived from days, which is required. Use it for candle or technical analysis. For a price line together with market cap and traded volume use get_coingecko_coins_id_market_chart instead.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesCoinGecko coin ID (e.g., `bitcoin`, `ethereum`). Get the list via `/coins/list`.
daysYes`1`, `7`, `14`, `30`, `90`, `180`, `365`.
precisionNo`full` or a value from `0` to `18` to specify decimal places for currency price values.
vs_currencyYesTarget currency for price (e.g., `usd`, `eur`, `btc`). See `/simple/supported_vs_currencies`.usd

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.9/5.0
Behavior5/5

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

Annotations declare readOnly/idempotent/non-destructive, and the description adds critical response-shape behavior beyond them: bare array, positional rows, timestamps in milliseconds, no field names, no volume, and candle width derived from days. This anticipates common parsing mistakes and sets accurate expectations.

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 with no fluff: it front-loads the unusual response format, then the key derivation rule, then the alternative tool. Every sentence adds unique value and the length is appropriate for the tool's complexity.

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?

Given a read-only, idempotent tool with an output schema and fully documented parameters, the description covers the non-obvious response format, the required days parameter role, and the main sibling alternative. Nothing critical is missing for an agent to call it correctly.

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 has 100% parameter description coverage, so the baseline is 3. The description adds the semantic insight that candle width is derived from the `days` parameter, which is useful context not present in the schema, justifying a slight bump. It does not redundantly restate parameter names or formats.

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 states a specific output: OHLC candlestick data for one coin in a bare positional array, with explicit mention of timestamp, open, high, low, close. It distinguishes itself from the sibling market_chart tool by noting what it does not provide (volume) and what it is used for. No ambiguity about what resource and verb are involved.

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?

It explicitly says when to use this tool ('for candle or technical analysis') and names the exact alternative tool to use when price line plus market cap and traded volume are needed. This is direct routing guidance with a named sibling, leaving little to inference.

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

get_coingecko_coins_id_tickersCoin TickersA
Read-onlyIdempotent
Inspect

Every trading pair for one coin across venues: base, target, market, last, volume, converted_last, converted_volume, trust_score, bid_ask_spread_percentage, last_traded_at, trade_url, and the anomaly flags is_anomaly and is_stale. Setting depth adds cost_to_move_up_usd and cost_to_move_down_usd. Narrow with exchange_ids, page with page, sort with order (trust score or volume). Use it to compare where one asset trades and how deep each book is. For every pair on one venue regardless of coin, use get_coingecko_exchanges_id_tickers.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesCoinGecko coin ID (e.g., `bitcoin`, `ethereum`). Get the list via `/coins/list`.
pageNo
depthNo
orderNo
exchange_idsNoComma-separated exchange IDs.
include_exchange_logoNoShow exchange logos in ticker results.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so the description doesn't need to restate safety. It adds behavioral context beyond annotations by enumerating the returned fields, including anomaly flags, and noting that setting 'depth' adds cost_to_move fields, which an agent would not infer from the annotations alone.

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 four sentences, each serving a distinct purpose: field inventory, depth behavior, parameter controls, and sibling distinction. It is front-loaded with the core purpose and contains no filler or redundant restatement of the tool name.

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 tool with a full output schema and comprehensive annotations, the description covers the key aspects: what the tool returns, how to narrow and sort, and when to use an alternative. The only missing details are pagination limits and potential rate limits, which are minor given the output schema and clear safety hints.

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 description coverage is 50%, with page, depth, and order lacking schema descriptions. The description partially compensates by explaining depth's effect and that order sorts by trust score or volume, but for page it only says 'page with page', which adds no meaning. It does not fully clarify the exact semantics of all undocumented parameters.

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 'Every trading pair for one coin across venues', which clearly identifies the resource (trading pairs) and scope (one coin). It also explicitly names the sibling tool 'get_coingecko_exchanges_id_tickers' to differentiate the two, removing any ambiguity about which tool to select.

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?

It explicitly states the use case: 'Use it to compare where one asset trades and how deep each book is' and provides a direct alternative: 'For every pair on one venue regardless of coin, use get_coingecko_exchanges_id_tickers.' This gives clear when-to-use and when-not-to-use guidance with no need for inference.

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

get_coingecko_coins_listCoins List (ID Map)A
Read-onlyIdempotent
Inspect

The full CoinGecko identifier map: every listed coin as id, symbol and name. Use it once to resolve a ticker into the id that every other CoinGecko tool requires — bitcoin, not BTC. Set include_platform to also get each coin's contract address per chain. Mind the size: this returns roughly 18,000 entries and takes several seconds, so cache it instead of calling it per lookup. If you already know the ids and only want numbers, call get_coingecko_simple_price directly; to identify a coin from a contract address instead, use get_coingecko_token_data.

ParametersJSON Schema
NameRequiredDescriptionDefault
include_platformNoInclude platform + contract addresses.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so safety is covered. The description adds meaningful behavioral context: it warns of the large payload ('roughly 18,000 entries'), the latency ('takes several seconds'), and recommends caching. This goes beyond the annotations by exposing performance and resource implications, though it could also mention rate limiting or response size caps.

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 compact yet information-dense. It fronts the core purpose, then naturally flows into usage guidance, a concrete example ('bitcoin, not BTC'), performance caveats, and alternatives. Every sentence adds distinct value; there is no filler or redundancy.

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 tool with a single optional parameter and an existing output schema, the description is complete. It covers what the tool returns, how to use it, why caching is needed, and which sibling tool to use instead in different scenarios. Nothing 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.

Parameters3/5

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

The schema already covers the single parameter with a description ('Include platform + contract addresses.') and 100% schema coverage. The description's mention of include_platform ('Set include_platform to also get each coin's contract address per chain') reinforces the schema but does not add new semantic detail. This matches the baseline of 3 for high schema coverage.

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 states a specific verb and resource: 'The full CoinGecko identifier map: every listed coin as id, symbol and name.' It clearly distinguishes itself from siblings by explaining that it resolves tickers to ids, and explicitly contrasts with get_coingecko_simple_price and get_coingecko_token_data. An agent immediately knows what this tool produces and how it differs from related tools.

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 guidance on when to use this tool ('Use it once to resolve a ticker into the id') and when not to ('If you already know the ids and only want numbers, call get_coingecko_simple_price directly; to identify a coin from a contract address instead, use get_coingecko_token_data'). It also advises caching due to the large response. This leaves no ambiguity about the correct invocation context.

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

get_coingecko_coins_marketsCoins MarketsA
Read-onlyIdempotent
Inspect

A ranked market table covering many coins in one call: one row per coin with current_price, market_cap, market_cap_rank, total_volume, high_24h, low_24h, price_change_percentage_24h, circulating_supply, total_supply, max_supply, ath and atl with their dates, and image. Page with per_page and page, sort with order (market cap, volume or id, ascending or descending), and narrow with ids or category. Passing price_change_percentage adds a matching price_change_percentage_24h_in_currency field. Use it for leaderboards and segment scans. For the price of a few known coins get_coingecko_simple_price is far lighter; for one coin in full use get_coingecko_coins_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
idsNoComma-separated CoinGecko coin IDs.
pageNo
orderNomarket_cap_desc
localeNoResponse language locale. Official values include `en`, `zh`, `zh-tw`, and other supported CoinGecko locales.en
categoryNoFilter by category (see `/coins/categories/list`).
per_pageNo
precisionNo`full` or a value from `0` to `18` to specify decimal places for currency price values.
sparklineNo
vs_currencyYesTarget currency for price (e.g., `usd`, `eur`, `btc`). See `/simple/supported_vs_currencies`.usd
include_rehypothecatedNoInclude rehypothecated tokens in market data when supported by CoinGecko.
price_change_percentageNoComma-separated windows: `1h,24h,7d,14d,30d,200d,1y`.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds behavioral context: pagination, sorting, filtering, and the conditional field addition when price_change_percentage is passed. It doesn't mention rate limits or response size, but the output schema exists and the annotations carry the safety burden.

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 dense but well-organized: it front-loads the core value proposition, then lists fields, then parameters, then use cases. Every sentence earns its place, and the sibling routing is at the end where it belongs.

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 list/market tool with an output schema and rich annotations, the description covers the main behaviors: pagination, sorting, filtering, and conditional fields. It also names the lighter alternative for simple price queries. Nothing critical is missing for an agent to select and invoke this tool correctly.

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 coverage is 64%, so the description compensates by explaining the effect of key parameters: per_page/page for pagination, order for sorting, ids/category for narrowing, and price_change_percentage for adding a field. It doesn't detail every parameter, but the schema already covers most of them. The description adds meaning beyond the schema for the most important parameters.

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 clearly states the tool returns a ranked market table with one row per coin and enumerates the exact fields. It distinguishes itself from siblings by naming get_coingecko_simple_price and get_coingecko_coins_id as alternatives for different use cases.

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 explicitly says when to use this tool ('leaderboards and segment scans') and when not to ('for the price of a few known coins... far lighter; for one coin in full use get_coingecko_coins_id'). This is strong routing guidance.

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

get_coingecko_exchangesExchanges ListA
Read-onlyIdempotent
Inspect

A paged directory of active exchanges with id, name, year_established, country, description, url, image, trust_score, trust_score_rank, trade_volume_24h_btc and has_trading_incentive. Page with per_page and page. Use it to rank or filter venues by trust and volume. If you only need the identifier mapping, get_coingecko_exchanges_list returns all of them with no market data and no paging; for one venue in full use get_coingecko_exchanges_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo
per_pageNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds context beyond these: it specifies the tool is a paged directory, lists the returned fields, and notes it deals with active exchanges. It doesn't describe pagination mechanics in detail, but the annotations lower the bar and the description still adds meaningful behavioral context.

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 zero fluff. It front-loads the core purpose and data fields, then provides usage guidance, then alternatives. Every sentence earns its place, and the structure is clear and efficient.

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?

Given the tool's simplicity (two optional pagination params) and the presence of an output schema that likely documents the response structure, the description covers all essential aspects: what it returns, how to page, when to use it, and alternatives. It doesn't need to explain return values because the output schema handles that. The description is complete for an agent to decide when and how to call it.

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 description coverage is 0%, so the description must compensate. It mentions 'Page with `per_page` and `page`' which clarifies the purpose of both parameters as pagination controls, but it doesn't provide additional details like acceptable ranges or how they interact. The schema provides defaults and a maximum for per_page, so the description adds minimal semantic value beyond naming the params. A score of 3 is appropriate given the partial compensation.

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 clearly states the tool returns a paged directory of active exchanges and enumerates the specific fields included. It distinguishes itself from sibling tools by naming get_coingecko_exchanges_list and get_coingecko_exchanges_id as alternatives, making its purpose 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?

The description provides explicit guidance on when to use this tool ('Use it to rank or filter venues by trust and volume') and when not to, with specific alternatives and conditions: 'If you only need the identifier mapping, get_coingecko_exchanges_list returns all of them with no market data and no paging; for one venue in full use get_coingecko_exchanges_id.' This leaves no ambiguity.

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

get_coingecko_exchanges_idExchange Data by IDA
Read-onlyIdempotent
Inspect

The full profile of one exchange: name, year_established, country, description, url, image, social handles, centralized, trust_score, trust_score_rank, trade_volume_24h_btc, coins, pairs, plus an embedded tickers sample and status_updates. Use it for venue due diligence. For a ranked list across many venues use get_coingecko_exchanges; for that venue's complete paged pair list use get_coingecko_exchanges_id_tickers.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesCoinGecko exchange ID (e.g., `binance`, `gdax`). Get the list via `/exchanges/list`.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, open-world). The description adds useful behavioral context beyond those hints by clarifying that the embedded tickers are only a sample and status_updates are included, which shapes agent expectations about the response without contradicting the 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?

The description is front-loaded with the core identity ('The full profile of one exchange') and then lists concrete fields, followed by succinct routing to alternatives. Every sentence contributes value; there is no repetition or 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?

With only one well-documented parameter, an output schema present, and annotations covering behavior, the description supplies everything needed to select and invoke the tool correctly. It also covers the key decision boundaries against sibling tools, so no critical information is missing.

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?

The input schema already fully documents the single id parameter with an example and explanation, so schema coverage is 100%. The description does not add new parameter-level meaning beyond reinforcing that the call targets one exchange, so the baseline of 3 is appropriate.

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 states a specific action and resource: retrieving the full profile of one exchange by its CoinGecko ID. It enumerates the contained fields and differentiates itself from sibling tools by naming what it is not, so an agent can distinguish it from list-style and ticker-specific siblings.

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 an explicit intended use ('Use it for venue due diligence') and names the exact alternatives for different needs: get_coingecko_exchanges for ranked lists and get_coingecko_exchanges_id_tickers for the complete paged pair list. This is clear routing guidance with no ambiguity.

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

get_coingecko_exchanges_id_tickersExchange TickersA
Read-onlyIdempotent
Inspect

Every trading pair listed on one exchange, paged: base, target, market, last, volume, converted_last, converted_volume, trust_score, bid_ask_spread_percentage, timestamp, trade_url and the is_anomaly / is_stale flags. Narrow to specific assets with coin_ids, sort with order, and set depth to add order-book move costs. Use it to audit one venue's coverage or liquidity. For one coin's pairs across all venues use get_coingecko_coins_id_tickers instead.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesCoinGecko exchange ID (e.g., `binance`, `gdax`). Get the list via `/exchanges/list`.
pageNo
depthNo
orderNo
coin_idsNoFilter by coin IDs (comma-separated).
include_exchange_logoNoShow exchange logos in ticker results.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, and non-destructive semantics, so the bar is lower. The description adds genuinely useful behavioral detail: results are paged, depth adds order-book move costs, and anomaly/stale flags are included. No contradiction with the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose and keeps the alternative routing at the end. The field enumeration adds length but is informative; still, some of it is redundant with the output schema, so it is not maximally concise.

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?

The description is complete for a read-only, paginated exchange-ticker tool. It covers scope, key parameters, use cases, the sibling alternative, and behavioral details like anomaly/stale flags. Since an output schema exists, the field list does not need to explain return values further.

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 only 50%, so the description must compensate. It adds meaning for depth ('add order-book move costs'), order ('sort'), coin_ids ('narrow to specific assets'), and hints at page via 'paged'. It does not mention include_exchange_logo or fully describe pagination, but it covers most of the gap.

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 clearly states it lists every trading pair listed on one exchange, with a specific scope and verb. It also differentiates itself from get_coingecko_coins_id_tickers by contrasting one-venue coverage with one-coin-across-venues, so an agent can select it correctly.

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 explicitly says to use it to audit one venue's coverage or liquidity, and names the alternative for the opposite use case. This gives an agent a clear decision rule between sibling tools.

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

get_coingecko_exchanges_listExchanges List (ID Map)A
Read-onlyIdempotent
Inspect

A flat identifier map of roughly 1,500 exchanges as id and name. Use it to resolve a venue name into the id required by get_coingecko_exchanges_id and by the exchange_ids filter on get_coingecko_coins_id_tickers. It takes no parameters and carries no market data; for trust scores and volumes use get_coingecko_exchanges.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, and open-world behavior, lowering the bar. The description adds meaningful context beyond annotations: it discloses the flat map shape, approximate scale (1,500 exchanges), that it contains only `id` and `name`, and explicitly disclaims market data. With an output schema present, the lack of return-format detail is acceptable.

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?

Two tight sentences with no filler: the first sentence defines the resource and scope, the second routes to dependent tools and the alternative. Every clause earns its place, and key facts are front-loaded.

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 simple, zero-parameter map tool with annotations and output schema already present, the description is complete. It covers what the tool returns, how it relates to downstream required IDs, what it excludes, and which sibling to use instead for richer data. Nothing needed for correct invocation 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?

The tool has zero parameters, and the schema coverage is 100%, so the baseline is 4. The description reinforces this by stating 'It takes no parameters,' which prevents the agent from hunting for required inputs. There is nothing more to add at the parameter level.

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 states a specific verb and resource: it is a 'flat identifier map of roughly 1,500 exchanges as `id` and `name`' and distinguishes itself from siblings by naming what it is not (market data) and what it feeds into. An agent can tell it apart from `get_coingecko_exchanges`, `get_coingecko_exchanges_id`, and `get_coingecko_coins_id_tickers` without opening schemas.

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?

It explicitly tells the agent when to use this tool: to 'resolve a venue name into the `id`' required by two named sibling tools. It also gives an exclusion—'carries no market data'—and points to `get_coingecko_exchanges` for trust scores and volumes. This is clear and actionable routing guidance.

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

get_coingecko_simple_priceSimple PriceA
Read-onlyIdempotent
Inspect

The cheapest price lookup: pass comma-separated CoinGecko ids and vs_currencies, get back a map keyed by coin id. Field names are built from the quote currency — with vs_currencies set to usd you get usd, plus usd_market_cap, usd_24h_vol, usd_24h_change and last_updated_at when the matching include_market_cap, include_24hr_vol, include_24hr_change and include_last_updated_at flags are set. Use it whenever the ids are already known and only current numbers are needed. For rank, supply or all-time-high data use get_coingecko_coins_markets; if you hold a contract address rather than an id use get_coingecko_simple_token_price_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
idsYesComma-separated coin IDs.
precisionNo
vs_currenciesYesComma-separated target currencies.
include_24hr_volNo
include_market_capNo
include_24hr_changeNo
include_last_updated_atNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already cover read-only, idempotent, non-destructive behavior. The description adds useful behavioral detail beyond those annotations: response is keyed by coin id, field names derive from the quote currency, and optional include flags control which extra fields appear. It does not discuss rate limits or the precision parameter, but the existing annotation coverage lowers the burden.

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 dense but well organized: purpose first, response behavior second, usage guidance and alternatives last. Every sentence carries operational value, and the alternatives are stated without excess wording.

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 simple read-only price lookup, the description covers output structure, flag behavior, when to use it, and sibling routing. The only material omission is precision, and since an output schema exists, the return-value burden is reduced. Overall it is nearly complete for correct tool selection and invocation.

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 coverage is low (29%), but the description compensates well: it clarifies ids and vs_currencies usage, explains how quote-currency field names are built, and maps each include flag to the corresponding output field. The only notable gap is the undocumented precision parameter, which is not mentioned in either the schema description or the tool description.

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 names a specific operation (price lookup by known CoinGecko ids and vs_currencies) and states the response shape: a map keyed by coin id. It also differentiates itself from sibling tools by pointing to get_coingecko_coins_markets for rank/supply/ATH data and get_coingecko_simple_token_price_id for contract addresses.

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?

It gives an explicit use condition: use whenever ids are already known and only current numbers are needed. It also names two concrete alternatives with their distinguishing conditions (rank/supply/ATH vs contract address), so an agent can route correctly without further inference.

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

get_coingecko_simple_supported_vs_currenciesSupported CurrenciesA
Read-onlyIdempotent
Inspect

The 63 quote currencies accepted by the vs_currency / vs_currencies parameter of every other CoinGecko tool — fiat such as usd and eur, metals such as xau, and crypto such as btc. Returns a flat array of lowercase strings and takes no parameters. Call it before using a non-obvious quote currency rather than guessing at one. For the coin-side identifier map use get_coingecko_coins_list.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, covering the safety profile. The description adds useful behavioral context: it returns a flat array of lowercase strings, has exactly 63 entries, and takes no parameters. It doesn't contradict the annotations and provides sufficient detail for a simple read-only list tool.

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, each earning its place: the first defines the resource, the second specifies the output format and parameter absence, and the third gives usage guidance and an alternative. No fluff, and key information is front-loaded.

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 no-parameter tool with an output schema (provided separately), the description is complete: it states what is returned, the count, examples, when to use it, and the alternative for a related purpose. An agent can correctly decide to call this tool without needing additional details.

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?

The tool has zero parameters, and the schema shows an empty object. The description explicitly states 'takes no parameters', which reinforces the schema. Since there are no parameters to explain, the description appropriately focuses on the output and usage context.

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 clearly states that the tool returns the list of quote currencies accepted by the vs_currency parameter of other CoinGecko tools, and explicitly distinguishes it from the coin-side list tool (get_coingecko_coins_list). It names specific currencies and the return format, leaving no ambiguity about what the tool does.

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?

It provides explicit guidance: call this before using a non-obvious quote currency rather than guessing, and names the sibling tool to use for coin identifiers. This clearly defines when to use this tool versus alternatives.

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

get_coingecko_simple_token_price_idCoin Price by Token AddressA
Read-onlyIdempotent
Inspect

Price lookup keyed by on-chain contract address rather than CoinGecko id. id is the asset platform, contract_addresses a comma-separated list of token addresses, vs_currencies the quote currency. Returns a map keyed by lowercase contract address whose field names are built from the quote currency — usd, plus usd_market_cap, usd_24h_vol, usd_24h_change and last_updated_at when the matching include_market_cap, include_24hr_vol, include_24hr_change and include_last_updated_at flags are set. Use it when you hold an address and no id. For the token's full profile use get_coingecko_token_data; if you already have the CoinGecko id use get_coingecko_simple_price.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesPlatform ID (e.g., `ethereum`, `binance-smart-chain`, `polygon-pos`).
precisionNo`full` or a value from `0` to `18` to specify decimal places for currency price values.
vs_currenciesYesComma-separated target currencies.
include_24hr_volNo
contract_addressesYesComma-separated contract addresses.
include_market_capNo
include_24hr_changeNo
include_last_updated_atNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior. The description adds meaningful behavioral detail beyond those annotations: response is keyed by lowercase contract address, field names derive from the quote currency, and inclusion of market cap, volume, change, and last-updated fields depends on the corresponding include flags.

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 sentences, each with a distinct purpose: core operation, key parameter semantics, response shape, and alternative routing. It is dense but not redundant, and front-loads the most important distinguishing fact.

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?

Given the annotations, output schema, and the description's coverage of required parameters, response format, and sibling tool alternatives, nothing essential is missing. An agent has enough to select and invoke the tool correctly.

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?

The description adds real meaning to id, contract_addresses, and vs_currencies, and explicitly ties all four include_* booleans to response fields. Precision is not covered in the description, but the schema documents it adequately, so the description still adds value above the structured data.

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 identifies a precise operation — price lookup keyed by contract address rather than CoinGecko id — and clearly differentiates it from siblings like get_coingecko_simple_price and get_coingecko_token_data. The first sentence immediately distinguishes it on the key dimension that matters.

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?

It explicitly states when to use the tool: when you hold an address and no id. It also names the two alternatives and the conditions that select them, so an agent receives direct routing guidance rather than having to infer it.

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

get_coingecko_token_dataCoin Data by Token AddressA
Read-onlyIdempotent
Inspect

A full coin profile looked up by contract address instead of CoinGecko id. id is the asset platform and contract_address the token; both are required and there are no other parameters. Returns the same shape as get_coingecko_coins_id — description, links, image, categories, platforms, detail_platforms, market_cap_rank, a market_data block and an embedded tickers array — plus contract_address itself. Use it to identify an unknown token from an address. If only the current price is needed, get_coingecko_simple_token_price_id is far lighter.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesAsset platform ID (e.g., `ethereum`). Refers to the `/asset_platforms` list on CoinGecko.ethereum
contract_addressYesThe contract address of the token.0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations declare readOnly, openWorld, idempotent, and non-destructive, which already establish the safety profile. The description adds value by specifying the exact return shape (listing all fields and tickers array), and notes the relationship to get_coingecko_coins_id without contradicting 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?

The description is compact and well-structured: it opens with the core purpose, clarifies the parameter requirement, details the return value, gives a use case, and ends with a comparison to a lighter alternative. Every sentence carries information without redundancy.

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?

Given the output schema is present, the tool's return values are already documented, and the description adds necessary context about the lookup method, alternate tools, and use case. For a 2-parameter tool with high schema coverage and rich annotations, this is complete and sufficient.

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 100% and describes each parameter adequately (id as asset platform, contract address as token address). The description reinforces that both are required and no others, but adds little beyond the schema's clear definitions. Baseline 3 is appropriate given high coverage.

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?

Clearly states the tool looks up a coin profile by contract address instead of CoinGecko id, distinguishing it from get_coingecko_coins_id. It lists the specific fields returned and the use case of identifying an unknown token, making its purpose unambiguous and well-differentiated from siblings.

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?

Explicitly states both parameters are required and no others, and gives a strong routing hint: for current price only, use the far lighter get_coingecko_simple_token_price_id. This provides clear when-to-use and when-not-to-use guidance, and implicitly contrasts with get_coingecko_coins_id for id-based lookups.

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

get_coingecko_token_market_chartCoin Historical Chart by ContractA
Read-onlyIdempotent
Inspect

Historical series for a token identified by contract address, over a trailing window set by days. id is the asset platform, contract_address the token. Returns prices, market_caps and total_volumes as timestamp-and-value pairs, with timestamps in milliseconds — the same shape as get_coingecko_coins_id_market_chart. Use it when you have an address rather than a CoinGecko id. For an explicit start and end use get_coingecko_token_market_chart_range.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesPlatform ID.
daysYesData up to N days ago. Accepts `1`, `7`, `14`, `30`, `90`, `180`, `365`, or `max`.
precisionNo`full` or a value from `0` to `18` to specify decimal places for currency price values.
vs_currencyYesTarget currency for price (e.g., `usd`, `eur`, `btc`). See `/simple/supported_vs_currencies`.usd
contract_addressYesContract address.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already provide readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering safety. The description adds meaningful behavioral context: it returns `prices`, `market_caps`, and `total_volumes` as timestamp-and-value pairs in milliseconds, and clarifies the trailing-window semantics. No contradiction.

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 with no filler: core function, parameter roles, return shape, and selection guidance are all present. Every clause contributes to the agent's understanding.

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?

Covers the essential calling context: token identification, trailing window, output structure, and when to choose the range sibling. An output schema exists, so deeper return details are available there, and nothing important 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 coverage is 100%, so the schema already documents all parameters. The description adds value by relating `id` to asset platform and `contract_address` to the token, and by clarifying that `days` sets the trailing window, which is slightly more semantic than the schema entries alone.

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?

States a specific verb and resource: retrieves historical price/market-cap/volume series for a token identified by contract address over a trailing window. It distinguishes itself from siblings by naming the id-based market chart and the range-based chart, so an agent can tell them apart.

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?

Explicitly instructs 'Use it when you have an address rather than a CoinGecko id' and points to `get_coingecko_token_market_chart_range` for explicit start/end. Also references the same shape as `get_coingecko_coins_id_market_chart`, clarifying when the id-based alternative is appropriate.

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

get_coingecko_token_market_chart_rangeCoin Market Chart Range by ContractA
Read-onlyIdempotent
Inspect

Historical series between two explicit points in time for a token identified by contract address. id is the asset platform and contract_address the token; from and to are Unix timestamps in seconds while response timestamps are in milliseconds. Returns prices, market_caps and total_volumes as timestamp-and-value pairs. Use it when you have an address and a fixed window. For a trailing window use get_coingecko_token_market_chart; if you hold a CoinGecko id rather than an address use get_coingecko_coins_id_market_chart_range.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesAsset platform ID (e.g., `ethereum`).
toYesEnd UNIX timestamp (seconds).
fromYesStart UNIX timestamp (seconds).
precisionNo`full` or a value from `0` to `18` to specify decimal places for currency price values.
vs_currencyYesTarget currency for price (e.g., `usd`, `eur`, `btc`). See `/simple/supported_vs_currencies`.usd
contract_addressYesToken contract address.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already cover read-only, idempotent, and non-destructive behavior. The description adds useful context by clarifying that from/to are Unix seconds while response timestamps are milliseconds, and by detailing the returned series fields. This goes beyond the annotations without repeating 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 compact and front-loaded, with the core purpose stated first, followed by necessary unit details, return format, and alternatives. Every sentence contributes value without redundancy.

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?

Given an output schema exists and annotations cover the safety profile, the description covers all essential invocation details: identification method, time units, response fields, and alternatives. No critical gaps remain, though it could mention pagination or limits if any, but none appear relevant.

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?

The schema already provides 100% coverage with descriptions and examples for every parameter, so the description does not need to add much. It does reinforce that `id` is the asset platform and `contract_address` is the token, but this information is already present in the schema. Baseline 3 is appropriate.

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 clearly states the tool fetches historical series between two specified time points for a token identified by contract address. It uses specific verbs and resources, and differentiates itself from the sibling tools such as get_coingecko_token_market_chart and get_coingecko_coins_id_market_chart_range.

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?

Explicitly states when to use this tool: 'when you have an address and a fixed window.' It also names two alternatives and their use cases, providing clear routing guidance for an agent.

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

get_detailsShow operation detailsA
Read-only
Inspect

Full contract of one or more operations: arguments_schema, response_schema, read_only, side_effects, availability, price, suggested_max_price_usd and known_pitfalls. Free — a quote authenticates like a call but stops before any spend.

price.model distinguishes the sources: quoted is what this account would be charged now, list is the published price, dynamic means the price varies with the request and only a quote states it, composed means the operation runs several upstream calls. suggested_max_price_usd is that estimate with headroom, in the shape use and batch_use take as max_price_usd.

ParametersJSON Schema
NameRequiredDescriptionDefault
argumentsNoThe arguments the operation would be called with, for a price that reflects them. Keyed by operation_id for a batch, or passed flat for a single operation_id. Routes whose required parameters are validated before pricing have no price without them.
with_quoteNoWhether each operation is priced for this account before the answer. One round trip per operation; spends nothing.
operation_idNoOne operation_id from search
operation_idsNoUp to 20 operation_ids, for a batch

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds meaningful context: it is free, stops before any spend, and explains how price.model varies (quoted, list, dynamic, composed). It also clarifies that suggested_max_price_usd has headroom. This goes beyond the annotation flags and gives the agent a clear model of what happens.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is moderately long but well structured: it opens with the core purpose, then explains the price model in a dedicated paragraph. No redundancy or filler. It front-loads the most critical information (contract fields) and then gives necessary detail about price semantics. Slightly dense but not overly verbose.

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 has an output schema, so return values need no description. The description covers the key behavioral aspects (no spend, pricing models, max_price headroom) and clarifies edge cases like routes without a price. For a read-only informational tool, this is complete enough for an agent to use it correctly.

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 description coverage is 100%, so parameters are already documented. The description adds some nuance, such as how arguments affect pricing and that required parameters may be needed before a price can be quoted. It also clarifies with_quote's purpose (one round trip, spends nothing). These are useful but not essential given the schema's completeness.

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 states a specific purpose: returning the full contract of one or more operations, including schemas, read_only, side_effects, price, and known_pitfalls. It clearly distinguishes this from executing operations (use, batch_use) and from discovery (search, list_categories). The verb 'get' and the noun 'details' align with the title, and the first sentence is explicit.

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

Usage Guidelines3/5

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

The description implies the tool is used to assess an operation before spending (e.g., 'A quote authenticates like a call but stops before any spend'), and the schema says 'One operation_id from search', hinting at a flow. However, it never explicitly states when to choose this over siblings like use or search, nor does it give exclusions. The guidance is implied, not stated.

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

get_edinet_documentsList EDINET documentsA
Read-onlyIdempotent
Inspect

Lists every disclosure filed with Japan's EDINET on one date. date is required (YYYY-MM-DD). type=2 returns the filings under results — docID, filerName, secCode, JCN, docTypeCode, docDescription, submitDateTime, periodStart and periodEnd per filing — while type=1 returns metadata only, with the day's count under metadata.resultset.count and no results array. Measured at 612 KB for a typical business day (648 filings), and there are no filter parameters, so type=2 always returns the whole day; check the count with type=1 first when in doubt. About two thirds of filings carry a secCode (listed companies), the rest are funds and unlisted filers. A filing's docID feeds get_edinet_document_download.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateYesFile date in YYYY-MM-DD format.
typeNoResponse mode: 1 for metadata only, 2 for metadata plus filing list.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.8/5.0
Behavior5/5

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

Beyond annotations that already mark it read-only, idempotent, and non-destructive, the description adds meaningful behavioral context: the typical payload size (612 KB), the impossibility of filtering, the data distribution around secCode, and the downstream use of docID. This helps an agent anticipate cost and output shape before calling.

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 dense but every sentence earns its place: it states the core action, explains both response modes, warns about payload size, notes data characteristics, and links to the next logical tool. The most important scoping information is front-loaded.

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 two-parameter, read-only API with an output schema, the description covers everything needed to call it correctly: required date, type differences, return locations, size/performance caveat, absence of filters, and onward data flow. Nothing an agent needs is left to guesswork.

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

Parameters5/5

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

Schema coverage is 100%, but the description goes well beyond the schema by explaining exactly what each type value returns, where the count lives in type=1, and which fields appear per filing in type=2. It also reinforces the required date format, making parameter choice unambiguous.

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: 'Lists every disclosure filed with Japan's EDINET on one date.' It also clarifies the lack of filters, which differentiates it from any filtered disclosure tool and explicitly connects docID to the downstream download tool.

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 operational guidance: date is required, type=1 gives count and metadata, type=2 returns the full filing list, and users should check the count first when in doubt. It does not explicitly name alternatives among siblings like edinet_filings_digest, so it falls short of full when-not/alternative guidance.

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

get_financial_analyst_estimatesAnalyst EstimatesA
Read-onlyIdempotent
Inspect

Forward analyst consensus for one stock: fiscal_period, period, revenue and earnings_per_share per estimated period. ticker is required; period selects annual or quarterly and limit caps how many periods come back. Deliberately narrow — no analyst names, no ratings, no price targets, no high/low dispersion. Use it for what the street expects. For what was actually reported, and by how much it beat or missed, use get_financial_earnings.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoThe maximum number of estimates to return (max 3 for annual, 12 for quarterly).
periodNoThe period to get analyst estimates for. Use the /analyst-estimates/periods endpoint to get a list of available periods. Defaults to 'annual'.
tickerYesThe ticker to get analyst estimates for.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering safety. The description adds valuable behavioral context: it is forward-looking consensus, deliberately narrow in scope, and excludes certain data types. This goes beyond the annotations and sets clear expectations about the data's nature, though it doesn't mention any rate limits or auth requirements (not essential for a read-only financial tool). 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 with no filler. The first sentence front-loads the core function and output fields; the second gives parameter semantics; the third states scope and directs to the sibling. Every sentence earns its place, and the structure is immediately scannable.

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?

Given the output schema exists (covering return values) and the input schema fully documents parameters, the description provides all additional context an agent needs: the nature of the data, the required parameter, the period/limit semantics, and the alternative tool for actuals. Nothing critical is missing for a tool of this complexity.

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 coverage is 100% so the baseline is 3. The description adds meaning beyond the schema: it clarifies that ticker is required, explains that 'period' selects annual vs quarterly, and that 'limit' caps the number of periods returned. It also previews the response fields. The description effectively reinforces and expands on the schema, earning a 4.

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 states a specific verb ('get'), resource ('forward analyst consensus for one stock'), and enumerates the exact fields returned ('fiscal_period', 'period', 'revenue', 'earnings_per_share'). It explicitly contrasts itself with get_financial_earnings, making the distinction between estimates and actuals unmistakable. This is a clear, non-tautological purpose statement.

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 provides explicit usage guidance: 'Use it for what the street expects' and directs to get_financial_earnings for actual reported results and beat/miss. It also states the deliberate narrowness (no names, ratings, targets, dispersion), telling the agent exactly when NOT to use it. This fully satisfies the when/when-not requirement.

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

get_financial_company_factsGet company factsA
Read-onlyIdempotent
Inspect

Identity and classification for one company: name, ticker, cik, sector, industry, exchange, location, is_active, sec_filings_url, and the SIC trio sic_code / sic_industry / sic_sector. Accepts either ticker or cik. No prices and no fundamentals at all. Use it to resolve a ticker into the cik that the filings tools accept, or to confirm what sector a company is actually classified under before comparing it to peers.

ParametersJSON Schema
NameRequiredDescriptionDefault
cikNoThe CIK of the company.
tickerNoThe ticker symbol.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, covering the safety profile. The description adds value by specifying the exact data returned (identity and classification fields) and explicitly stating 'No prices and no fundamentals at all,' which prevents misuse. It also notes the input flexibility (either ticker or cik), but does not discuss potential error cases or rate limits—though these are not critical given the annotations and simple nature of the tool.

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 concise and well-structured. It front-loads the core purpose with the field list, then adds the negative scope (no prices/fundamentals), and finally gives concrete usage examples. Every sentence contributes information, and there is no redundancy or fluff.

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?

The tool is simple with only two optional parameters, and it has an output schema (indicated by 'Has output schema: true'), so the description doesn't need to explain return values. It covers the input alternatives, the data scope, and typical use cases. Nothing is missing for an agent to correctly invoke this tool.

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?

The input schema has 100% description coverage for both parameters (ticker and cik). The description adds the semantic nuance that the tool accepts either ticker or cik, implying they are alternatives rather than both required. This clarification goes beyond the schema's individual parameter descriptions and helps the agent understand the relationship between the two parameters.

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 clearly states the tool's function: retrieving identity and classification data for one company. It enumerates specific fields (name, ticker, cik, sector, etc.) and explicitly excludes prices and fundamentals, distinguishing it from financial data tools. The mention of resolving a ticker to cik also sets it apart from sibling tools like get_financial_filings.

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 provides explicit usage guidance: 'Use it to resolve a ticker into the cik that the filings tools accept, or to confirm what sector a company is actually classified under before comparing it to peers.' This clearly states when to use the tool and gives an alternative purpose. It also implicitly states when not to use it (no prices/fundamentals).

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

get_financial_earningsGet earnings snapshotA
Read-onlyIdempotent
Inspect

Reported earnings for one stock, actuals against estimates. Each entry carries report_period, fiscal_period, filing_date, filing_url and accession_number, a quarterly block with revenue, estimated_revenue, revenue_surprise and revenue_surprise_pct, the same trio for earnings_per_share, plus year-over-year change fields. It also returns signals: upstream-computed flags such as EPS_BEAT with a headline and the actual / estimate / surprise_pct behind it. ticker is required and it is the only parameter. Use it for what a company actually reported. For forward-looking consensus that has not happened yet use get_financial_analyst_estimates.

ParametersJSON Schema
NameRequiredDescriptionDefault
tickerYesThe ticker symbol.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description adds value by detailing the response structure: each entry carries report_period, fiscal_period, filing_date, filing_url, accession_number, a quarterly block with revenue/estimated_revenue/revenue_surprise/revenue_surprise_pct, the same for earnings_per_share, year-over-year change fields, and signals with flags like EPS_BEAT. It also notes that ticker is required and the only parameter. This goes beyond the annotations to explain what the agent will receive and how the data is organized. It doesn't mention rate limits or pagination, but for a single-ticker snapshot with an output schema, this is sufficient.

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 well-structured and front-loaded: it starts with the core purpose, then details the response fields, then gives usage guidance. Every sentence adds value. It is appropriately sized for the complexity of the tool, covering the key output structure and the routing rule without unnecessary fluff.

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?

Given the tool has one required parameter, a rich output schema, and clear annotations, the description is complete. It explains what the tool returns in detail, names the alternative for forward-looking estimates, and confirms the only parameter. An agent has everything needed to invoke it correctly and interpret the result. The output schema exists, so the description doesn't need to explain return values further.

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 100% (the only parameter, ticker, is described as 'The ticker symbol.'). The description adds context by stating 'ticker is required and it is the only parameter,' which reinforces the schema. It also implies the ticker identifies the stock whose earnings are returned. Since the schema already covers the parameter fully, the description's additional emphasis on it being the only parameter is helpful but not extensive. Baseline 3 is appropriate, and the explicit statement about it being the only parameter nudges it to 4.

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 clearly states the tool's purpose: 'Reported earnings for one stock, actuals against estimates.' It specifies the resource (earnings for one stock) and the verb (get/report), and distinguishes it from the sibling tool get_financial_analyst_estimates by explicitly noting the difference between actuals and forward-looking estimates. This makes it easy for an agent to select the correct tool.

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 explicitly says 'Use it for what a company actually reported. For forward-looking consensus that has not happened yet use get_financial_analyst_estimates instead.' This provides clear when-to-use and when-not-to-use guidance, naming the alternative tool. This is exactly the kind of routing information an agent needs.

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

get_financial_filingsGet SEC filingsA
Read-onlyIdempotent
Inspect

The SEC filing index for one company — a list of filings, not their contents. Each entry carries cik, accession_number, filing_type, report_date, filing_date, ticker and url. Accepts ticker or cik, narrows by filing_type, and caps with limit. Use it to find which filing you want and to get its accession_number. To read the text inside one, use get_financial_filings_items.

ParametersJSON Schema
NameRequiredDescriptionDefault
cikNoThe Central Index Key (CIK) of the company.
limitNoThe maximum number of filings to return (default: 10).
tickerNoThe ticker symbol.
filing_typeNoFilter by one or more filing types. Repeat the query parameter to pass multiple values (e.g. filing_type=10-Q&filing_type=10-K).

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds useful behavioral context: it returns a list/index rather than contents, and each entry carries specific fields. It doesn't mention pagination or rate limits, but the core behavior is well disclosed.

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 compact and front-loaded: it states the core purpose in the first sentence, lists return fields, then covers parameters and usage guidance. Every sentence earns its place with no fluff.

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 has an output schema, so return values are already documented. The description covers purpose, scope, parameters, and the sibling tool for next steps. It lacks explicit mention of pagination or default behavior beyond limit's default, but the description is complete enough for an agent to select and invoke the tool correctly.

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 description coverage is 100%, so the schema already documents all four parameters. The description adds a little context by mentioning ticker/cik, filing_type narrowing, and limit capping, but it doesn't add meaning beyond what the schema provides. Baseline 3 is appropriate.

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 clearly states the tool returns the SEC filing index for one company, explicitly distinguishing it from filing contents. It lists the exact fields returned and names the sibling tool for reading filing text, making its purpose 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?

The description explicitly says to use this tool to find which filing you want and get its accession_number, and directs users to get_financial_filings_items for reading text inside a filing. This provides clear when-to-use guidance and an explicit alternative.

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

get_financial_filings_itemsGet SEC filing itemsA
Read-onlyIdempotent
Inspect

The full text of the numbered items inside one SEC filing. ticker, filing_type (10-K, 10-Q or 8-K) and year are all required; narrow further with quarter, item, accession_number or include_exhibits. Returns items — each with number, title and the complete text — plus filing_url and accession_number. Mind the size: a 10-K comes back as roughly 19 items of full prose, so request a specific item rather than pulling everything unless you truly need the whole document. To find which filing to open in the first place, use get_financial_filings.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemNoThe item to get.
yearYesThe year of the filing.
tickerYesThe ticker symbol.
quarterNoThe quarter of the filing if 10-Q.
filing_typeYesThe type of filing.
accession_numberNoThe accession number of the filing if 8-K.
include_exhibitsNoWhether to include the raw text from linked exhibits. Only applicable for 8-K filings. When true, exhibit objects will include the 'text' field containing the full exhibit content.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so safety is covered. The description adds valuable behavioral context beyond the annotations: the large payload warning ('a 10-K comes back as roughly 19 items of full prose') and the return structure (items with number, title, text, plus filing_url and accession_number). This goes beyond what the annotations provide, though it doesn't address auth, rate limits, or error cases.

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 four sentences with no redundant phrasing. It front-loads the purpose, then concisely covers required vs. optional parameters, return shape, a practical size caveat, and the sibling-tool pointer. Every sentence earns its place.

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?

Given the output schema already documents the return shape, the description still adds the crucial size warning and the routing to get_financial_filings. It tells the agent exactly when to use this tool, how to narrow the request, and what to expect in terms of payload size. No critical information is missing for a read-only retrieval tool.

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 description coverage is 100% – every parameter already has a description in the schema, including which filing types each parameter applies to (e.g., quarter for 10-Q, accession_number for 8-K). The description merely restates the required parameters and the optional narrowing parameters without adding new semantic details. It meets the baseline but doesn't significantly enhance parameter understanding beyond the schema.

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: 'The full text of the numbered items inside one SEC filing.' It clearly differentiates from the sibling get_financial_filings by stating that the sibling is for finding which filing to open, while this tool retrieves the items within a filing.

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?

It explicitly names the alternative get_financial_filings and states when to use it ('To find which filing to open in the first place'). It also gives actionable guidance on when to request a specific item vs. the whole document via the size warning ('request a specific item rather than pulling everything unless you truly need the whole document').

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

get_financial_financial_metricsGet financial metricsA
Read-onlyIdempotent
Inspect

Computed ratios for one company over time, about 49 per period: market_cap, enterprise_value, price_to_earnings_ratio, price_to_book_ratio, price_to_sales_ratio, enterprise_value_to_ebitda_ratio, free_cash_flow_yield, peg_ratio, gross_margin, operating_margin, net_margin, return_on_equity, return_on_assets, return_on_invested_capital, the turnover and liquidity ratios, each stamped with report_period and fiscal_period. period is required; identify by ticker or cik. Use it to trend a ratio across periods. For the current values only, get_financial_financial_metrics_snapshot is one row and much smaller.

ParametersJSON Schema
NameRequiredDescriptionDefault
cikNoThe Central Index Key (CIK) of the company. Can be used instead of ticker.
limitNoThe maximum number of results to return.
periodYesThe time period for the financial data.
tickerNoThe ticker symbol of the company. Required if cik is not provided.
report_periodNoFilter by exact report period date in YYYY-MM-DD format.
report_period_gtNoFilter by report period greater than date in YYYY-MM-DD format.
report_period_ltNoFilter by report period less than date in YYYY-MM-DD format.
report_period_gteNoFilter by report period greater than or equal to date in YYYY-MM-DD format.
report_period_lteNoFilter by report period less than or equal to date in YYYY-MM-DD format.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds behavioral context beyond that: it specifies the output structure (about 49 ratios per period, stamped with report_period and fiscal_period) and the requirement that period is mandatory, with ticker or cik as identifiers. This is useful extra context about the data shape and invocation constraints, though it does not discuss pagination or limit behavior, which is acceptable given the output schema exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is longer than average but each part earns its place: it lists key ratios, specifies the period stamping, states the required parameter, and gives usage guidance with an alternative. It is front-loaded with the core purpose and does not waste words, though the list of ratios could be trimmed for brevity without losing value.

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?

With an output schema present, the description does not need to detail return values. It adequately explains what the tool returns (ratios over time), the period requirement, identification methods, and the alternative snapshot tool. It does not mention pagination or limit behavior, but the schema has a limit parameter and the output schema likely covers structure. Overall, it is complete enough for an agent to call the tool correctly.

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 description coverage is 100%, so every parameter is documented in the schema. The description mostly reiterates what the schema already says: period is required, and ticker or cik can be used for identification. It does not add new meaning about parameter values or formats beyond the schema. Therefore, the baseline of 3 applies, as the description adds minimal extra semantic value.

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 clearly states it returns computed ratios for one company over time, enumerating many specific ratios (market_cap, enterprise_value, etc.). It also distinguishes itself from the snapshot sibling by noting the snapshot is one row and much smaller. This is a specific verb+resource description that allows an agent to understand exactly what the tool provides.

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 explicitly says 'Use it to trend a ratio across periods' and contrasts with the snapshot tool for current values only. This gives clear when-to-use guidance and names the alternative, leaving no ambiguity about which sibling to select.

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

get_financial_financial_metrics_snapshotFinancial Metrics Snapshot (Real-Time)A
Read-onlyIdempotent
Inspect

The same ratio set as get_financial_financial_metrics but current-only: one snapshot object of about 41 fields — market_cap, enterprise_value, price_to_earnings_ratio, price_to_book_ratio, price_to_sales_ratio, enterprise_value_to_ebitda_ratio, free_cash_flow_yield, peg_ratio, the margin and return ratios, and the liquidity ratios. Takes only ticker or cik, with no period argument. Use it to size up a company right now. For history, or to see whether a multiple is unusual for this company, use get_financial_financial_metrics.

ParametersJSON Schema
NameRequiredDescriptionDefault
cikNoThe Central Index Key (CIK) of the company. Can be used instead of ticker.
tickerNoThe ticker symbol of the company.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare the tool as readOnly, idempotent, and non-destructive, so the safety profile is covered. The description adds meaningful behavioral context: it returns a single snapshot object, is current-only, takes no period argument, and can use either ticker or cik.

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 compact and well-structured: it front-loads the comparison to the sibling, lists representative fields briefly, then states usage and the alternative. Each sentence earns its place, and no material is repeated from the schema or annotations.

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?

The output schema already covers return value structure, and the description supplies the remaining context: what the snapshot represents, what fields to expect, when to use it, and which sibling to use instead for history. An agent has everything needed to select and call this tool.

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?

The input schema already covers 100% of the parameters, so the baseline is 3. The description adds value by clarifying that only ticker or cik are accepted, that no period argument exists, and that either identifier can be used, which helps the agent pick the correct invocation.

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?

Says exactly what the tool returns: a current-only snapshot of the same ratio set as get_financial_financial_metrics, with about 41 fields grouped by category. It clearly distinguishes it from its historical sibling by name and behavior, so an agent can disambiguate immediately.

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?

Provides an explicit when-to-use statement ('Use it to size up a company right now') and an explicit when-not-to-use with the alternative ('For history... use get_financial_financial_metrics'). It also notes the absence of the period argument, so the agent knows it is not for time-series analysis.

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

get_financial_financialsGet all financial statementsA
Read-onlyIdempotent
Inspect

All three statements for one company in a single call. Returns a financials object holding income_statements, balance_sheets and cash_flow_statements, each the same shape the dedicated tools return. period is required (annual, quarterly or ttm); identify the company by ticker or cik and cap with limit. Use it when you need the full picture and would otherwise make three calls. When you only need one statement, get_financial_financials_income_statements, get_financial_financials_balance_sheets or get_financial_financials_cash_flow_statements returns far less data; when you need a handful of named fields across several companies, post_financial_financials_search_line_items is narrower still.

ParametersJSON Schema
NameRequiredDescriptionDefault
cikNoThe Central Index Key (CIK) of the company.
limitNoThe maximum number of financial statements to return.
periodYesThe time period of the financial statements.
tickerNoThe ticker symbol. Required if cik is not provided.
report_periodNoFilter by exact report period date in YYYY-MM-DD format.
report_period_gtNoFilter by report period greater than date in YYYY-MM-DD format.
report_period_ltNoFilter by report period less than date in YYYY-MM-DD format.
report_period_gteNoFilter by report period greater than or equal to date in YYYY-MM-DD format.
report_period_lteNoFilter by report period less than or equal to date in YYYY-MM-DD format.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false. The description adds the return structure (financials object with three arrays, each matching dedicated tool shapes) and clarifies that period is required and company identification via ticker or cik. This enriches behavior beyond annotations without contradiction.

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?

Two sentences with zero waste. The first sentence states purpose and return shape; the second gives usage guidance and alternatives. Information is front-loaded and every sentence earns its place.

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?

Given the presence of an output schema, the 100% schema coverage, and the description covering the primary use case plus alternatives, nothing essential is missing for an agent to call it correctly.

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 description coverage is 100% with every parameter documented. The description repeats period requirement and ticker/cik usage but adds no new semantic detail beyond what the schema already provides. Baseline 3 applies for high schema coverage.

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?

States a specific verb 'get' and resource 'all financial statements' (all three for one company), and clearly distinguishes from dedicated statement tools and search line items by naming them. The scope 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?

Explicitly says when to use it: when you need the full picture and would otherwise make three calls. It also names the alternatives (dedicated statement tools, search line items) and the conditions that select them, leaving no inference.

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

get_financial_financials_balance_sheetsGet balance sheetsA
Read-onlyIdempotent
Inspect

Balance sheets for one company, about 36 fields per period: total_assets, current_assets, cash_and_equivalents, inventory, trade_and_non_trade_receivables, property_plant_and_equipment, goodwill_and_intangible_assets, total_liabilities, current_liabilities, current_debt, trade_and_non_trade_payables, deferred_revenue and the equity lines, stamped with report_period, fiscal_period, currency and filing_url. period is required. Use it for capital structure and liquidity. For the ratios already computed off these numbers use get_financial_financial_metrics.

ParametersJSON Schema
NameRequiredDescriptionDefault
cikNoThe Central Index Key (CIK) of the company.
limitNoThe maximum number of balance sheets to return
periodYesThe time period of the balance sheets.
tickerNoThe ticker symbol. Required if cik is not provided.
report_periodNoFilter by exact report period date in YYYY-MM-DD format.
report_period_gtNoFilter by report period greater than date in YYYY-MM-DD format.
report_period_ltNoFilter by report period less than date in YYYY-MM-DD format.
report_period_gteNoFilter by report period greater than or equal to date in YYYY-MM-DD format.
report_period_lteNoFilter by report period less than or equal to date in YYYY-MM-DD format.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint false, covering the safety profile. The description adds valuable behavioral context: it enumerates the ~36 fields returned, notes that the result is per company, and mentions the report/fiscal/currency stamps. It does not describe pagination or limit behavior, but that is minor given the output schema and annotations. 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?

The description is two sentences with zero filler. The first sentence front-loads the return content (fields and structure), and the second sentence gives usage guidance. Every word adds value, and the structure is clean and efficient.

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?

Given the tool has a well-defined output schema and 100% schema parameter coverage, the description covers the essential purpose, usage, and return content. It addresses the primary decision point (balance sheets vs. metrics) and notes the required period. There is nothing an agent needs to know to call it correctly that is missing; the schema and annotations fill the remaining gaps.

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 description coverage is 100%, so the baseline is 3. The description adds context about the return fields and usage but does not materially enhance parameter understanding beyond the schema. It restates that period is required (already in schema) and does not explain the enum values or the ticker/cik requirement (the schema handles those). Thus it meets the baseline but does not exceed it.

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 states a clear verb+resource: it returns balance sheets for one company, and enumerates the key fields included. It distinguishes itself from the sibling get_financial_financial_metrics by explicitly noting that tool covers ratios computed from these numbers, and it also implicitly differentiates from income/cash flow statements by naming the financial statement type. An agent can immediately understand what this tool does.

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 explicitly tells when to use it ('for capital structure and liquidity') and directs the agent to the alternative for ratios ('For the ratios already computed off these numbers use get_financial_financial_metrics'). It also states that period is required, which guides usage. This is clear, actionable guidance with a named sibling and exclusion condition.

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

get_financial_financials_cash_flow_statementsGet cash flow statementsA
Read-onlyIdempotent
Inspect

Cash flow statements for one company, about 27 fields per period: net_cash_flow_from_operations, net_cash_flow_from_investing, net_cash_flow_from_financing, capital_expenditure, depreciation_and_amortization, share_based_compensation, issuance_or_repayment_of_debt_securities, issuance_or_purchase_of_equity_shares and dividends_and_other_cash_distributions, stamped with report_period, fiscal_period and currency. period is required. Use it to see cash generation rather than accounting earnings. Free cash flow yield and similar derived figures live in get_financial_financial_metrics.

ParametersJSON Schema
NameRequiredDescriptionDefault
cikNoThe Central Index Key (CIK) of the company.
limitNoThe maximum number of cash flow statements to return.
periodYesThe time period of the cash flow statements.
tickerNoThe ticker symbol. Required if cik is not provided.
report_periodNoFilter by exact report period date in YYYY-MM-DD format.
report_period_gtNoFilter by report period greater than date in YYYY-MM-DD format.
report_period_ltNoFilter by report period less than date in YYYY-MM-DD format.
report_period_gteNoFilter by report period greater than or equal to date in YYYY-MM-DD format.
report_period_lteNoFilter by report period less than or equal to date in YYYY-MM-DD format.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior, so the safety profile is covered. The description adds context about the data scope (about 27 fields per period, field names, and that results are stamped with report_period, fiscal_period, and currency) which helps set expectations about output shape without contradicting annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is efficiently structured with the main purpose front-loaded, followed by a list of notable fields and usage guidance. While the field enumeration is long, it is informative and directly aids an agent in understanding what the tool returns. The backtick formatting improves readability. No redundant or filler content.

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?

Given the complexity (9 parameters) and the existence of an output schema, the description is complete: it states what the tool returns, when to use it, and where to go for related metrics. Required parameters are flagged, and the output schema handles return details. Nothing essential is missing for correct invocation.

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 100%, so all parameters are already described in the input schema. The description only reiterates that 'period' is required (already in the required array) and gives context about the return fields, but does not add parameter-specific semantics beyond the schema. This matches the baseline of 3 for high coverage.

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 uses a specific verb ('Get') and resource ('cash flow statements for one company'), enumerates the key fields, and differentiates itself from the sibling tool get_financial_financial_metrics by explicitly stating that derived figures like free cash flow yield live there. This makes its purpose unambiguous and distinguishes it from related financial statement tools.

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?

It provides clear when-to-use guidance ('Use it to see cash generation rather than accounting earnings') and names the alternative tool for derived metrics ('Free cash flow yield and similar derived figures live in get_financial_financial_metrics'). It also highlights that 'period' is required, which is essential for invocation. Exclusions and alternatives are explicit.

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

get_financial_financials_income_statementsGet income statementsA
Read-onlyIdempotent
Inspect

Income statements for one company, about 32 fields per period: revenue, cost_of_revenue, gross_profit, operating_expense, selling_general_and_administrative_expenses, research_and_development, operating_income, interest_expense, ebit, income_tax_expense, net_income, net_income_common_stock and the per-share lines, each stamped with report_period, fiscal_period, currency, filing_date and filing_url. period is required (annual, quarterly or ttm). Use it for the revenue-to-earnings walk. For all three statements at once use get_financial_financials.

ParametersJSON Schema
NameRequiredDescriptionDefault
cikNoThe Central Index Key (CIK) of the company.
limitNoThe maximum number of income statements to return.
periodYesThe time period of the income statements.
tickerNoThe ticker symbol. Required if cik is not provided.
report_periodNoFilter by exact report period date in YYYY-MM-DD format.
report_period_gtNoFilter by report period greater than date in YYYY-MM-DD format.
report_period_ltNoFilter by report period less than date in YYYY-MM-DD format.
report_period_gteNoFilter by report period greater than or equal to date in YYYY-MM-DD format.
report_period_lteNoFilter by report period less than or equal to date in YYYY-MM-DD format.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so safety is covered. The description adds context about the output structure (fields and stamps) and the required period parameter, which goes beyond the annotations and helps the agent understand what to expect.

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 a single well-organized sentence that front-loads the purpose, lists key fields, mentions the stamps, and then gives usage guidance. Every part earns its place with no redundancy.

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 has a rich schema and an output schema (as indicated), and the description covers purpose, usage, and field details. It doesn't explicitly state that a company identifier (ticker or cik) is needed, but the schema makes that clear. Overall, it's complete enough for an agent to call correctly.

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 description coverage is 100%, so all 9 parameters are already documented in the schema. The description adds little beyond what the schema provides, though it does highlight that `period` is required and lists its enum values. This meets the baseline for high coverage.

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 explicitly states the tool returns income statements for one company and enumerates the key fields, making the purpose unmistakable. It also distinguishes itself from siblings by noting that for all three statements at once, one should use get_financial_financials, so an agent can tell them apart without inspecting schemas.

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?

It gives a concrete use case ('Use it for the revenue-to-earnings walk') and explicitly names the alternative tool for combined statements. This is clear guidance on when to use this tool vs. its siblings.

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

get_financial_insider_tradesGet insider tradesA
Read-onlyIdempotent
Inspect

Form 4 insider transactions for one stock. Each row carries the person (name, title, is_board_director), the trade (transaction_date, transaction_code, transaction_type, transaction_shares, transaction_price_per_share, transaction_value), the resulting position (shares_owned_before_transaction, shares_owned_after_transaction) and the filing (form_type, filing_date, security_title). ticker is required. Filter with name or transaction_type, and bound by filing date with filing_date, filing_date_gte, filing_date_lte, filing_date_gt or filing_date_lt. Use it for who inside the company bought or sold and when.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoFilter by insider name (e.g., 'Jen Hsun Huang'). Use the /insider-trades/names endpoint to get available names for a ticker.
limitNoThe maximum number of transactions to return (default: 10).
tickerYesThe ticker symbol of the company.
filing_dateNoFilter by exact filing date in YYYY-MM-DD format.
filing_date_gtNoFilter by filing date greater than this date (YYYY-MM-DD).
filing_date_ltNoFilter by filing date less than this date (YYYY-MM-DD).
filing_date_gteNoFilter by filing date greater than or equal to this date (YYYY-MM-DD).
filing_date_lteNoFilter by filing date less than or equal to this date (YYYY-MM-DD).
transaction_typeNoFilter by transaction type (e.g., 'Open market sale', 'Gift'). Use the /insider-trades/transaction-types endpoint to get available types.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and non-destructive behavior, so safety is covered. The description adds meaningful behavioral context: data is Form 4 transactions, scoped to one ticker, with a required ticker and available filters. It does not contradict annotations, and it provides enough operational detail without overclaiming.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured and front-loaded with the core purpose. The field enumeration is long but organized into logical groups (person, trade, position, filing), and the filtering sentence is compact. It earns its length by clarifying output shape and usage, though some field details are redundant with the output schema.

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?

Given the rich input schema, output schema, and annotations, the description is complete for agent invocation. It states the data domain, required parameter, output row composition, and filter options, all in one coherent block. An agent can select and call this tool correctly without needing additional context.

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 description coverage is 100%, so the schema fully documents all nine parameters, including examples and date formats. The description adds modest grouping value by naming ticker as required, highlighting name/transaction_type filters, and grouping the filing-date bounds, but it does not substantially exceed the schema's parameter documentation.

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-resource pair: 'Form 4 insider transactions for one stock.' It clearly distinguishes the tool from general financial filing or market-data siblings by focusing on insider trades and enumerating the exact per-row content (person, trade, resulting position, filing). An agent can immediately understand what this tool returns.

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 provides an explicit use case: 'Use it for who inside the company bought or sold and when.' This gives clear context for when to select the tool. However, it does not name alternative siblings or state when NOT to use it, so it stops short of full routing guidance.

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

get_financial_macro_interest_ratesInterest Rates (Historical)A
Read-onlyIdempotent
Inspect

One central bank's policy rate over time, as an interest_rates array of bank, name, date and rate. bank is required and bound by start_date and end_date. Trap worth knowing: the code is case-sensitive and must be uppercase — FED works, fed returns HTTP 404 with "No data found", which reads like an empty result rather than a bad argument. Valid codes are FED, ECB, BOJ, BOE, BOC, RBA, PBOC, SNB, RBI and BOK; get_financial_macro_interest_rates_snapshot with no arguments lists them all.

ParametersJSON Schema
NameRequiredDescriptionDefault
bankYesThe bank whose interest rates to return. Use the /macro/interest-rates/banks endpoint to get a list of available banks. Case-sensitive: must be uppercase. A lowercase code returns HTTP 404 "No data found", which reads like an empty result rather than a bad argument.
end_dateNoThe end date of the interest rates to return in YYYY-MM-DD format.
start_dateNoThe start date of the interest rates to return in YYYY-MM-DD format.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already declare read-only and idempotent behavior, and the description adds beyond that: the uppercase case-sensitivity trap, the misleading HTTP 404 'No data found' result, and the list of valid bank codes. This extra behavioral context is highly valuable and goes well beyond the 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?

The description is compact and front-loaded: it opens with the data shape, moves to required parameter behavior, and then gives the critical edge case. The valid-code list slightly overlaps the enum, but it earns its place by supporting the actionable uppercase warning.

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?

With annotations covering safety and an output schema present, the remaining needs—required parameter, valid codes, case sensitivity, date binding, and the snapshot alternative—are all addressed. Nothing essential is missing for an agent to call this tool correctly.

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 coverage is 100%, so the schema already documents the parameters. The description still adds meaning by explaining the relationship between `bank`, `start_date`, and `end_date`, and by emphasizing the case-sensitivity warning that affects how the agent interprets failures.

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 states a specific operation: retrieving one central bank's policy rate over time, and names the exact output shape (`interest_rates` array of `bank`, `name`, `date` and `rate`). It also distinguishes the tool from its sibling `get_financial_macro_interest_rates_snapshot` by noting the snapshot lists valid codes, so an agent can tell them apart.

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?

It clearly says `bank` is required, explains the date-bounding relationship, and directs the user to the snapshot tool for listing valid codes. It does not explicitly state when not to use this tool versus other financial siblings, but the context is strong enough for correct selection.

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

get_financial_macro_interest_rates_snapshotInterest Rates (Real-Time)A
Read-onlyIdempotent
Inspect

Current policy rates for the ten central banks tracked here, as an interest_rates array of bank, name, rate and date. bank is optional — omit it to get all ten at once, which is also how you discover the valid codes: FED, ECB, BOJ, BOE, BOC, RBA, PBOC, SNB, RBI and BOK. Use it for the current rate backdrop. For one bank's rate path over time use get_financial_macro_interest_rates.

ParametersJSON Schema
NameRequiredDescriptionDefault
bankNoOptional central bank code (e.g., FED, ECB, BOJ). AIsa also accepts this endpoint without `bank` and returns the latest snapshot for all major central banks. Case-sensitive: must be uppercase. A lowercase code returns HTTP 404 "No data found", which reads like an empty result rather than a bad argument.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare this as read-only, idempotent, and non-destructive, so the safety profile is fully covered. The description adds useful behavioral context beyond the annotations: the exact array structure, that omitting `bank` returns all ten, and that the response surfaces valid bank codes. This is solid additional transparency.

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, no filler: the first states purpose and output shape, the second explains the optional parameter and discovery mechanism, and the third gives the sibling alternative. Every sentence contributes directly to correct selection and invocation.

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 tool with one optional parameter, rich annotations, an output schema, and a close sibling, the description covers purpose, invocation behavior, alternatives, and return structure. Nothing needed for correct selection or calling is missing.

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?

The schema description coverage is 100% and the enum already enumerates all valid codes. The description does add that omitting `bank` returns all ten and that this is also how codes are discovered, but this largely mirrors what the input schema already communicates. The added value is real but modest, so baseline 3 is appropriate.

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 names a specific verb and resource: it returns current policy rates for the ten tracked central banks, and clarifies the output shape as an `interest_rates` array. It also explicitly distinguishes itself from the sibling `get_financial_macro_interest_rates`, so an agent can tell them apart without inspecting schemas.

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?

It states when to use this tool ('Use it for the current rate backdrop') and when not to, by directing the agent to `get_financial_macro_interest_rates` for a single bank's rate path over time. It also explains the omission behavior for retrieving all ten banks, leaving no ambiguity about invocation strategy.

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

get_financial_newsGet news articlesA
Read-onlyIdempotent
Inspect

Recent news headlines for one stock: title, source, date, url and the echoed ticker, in a news array. ticker and limit are the only parameters — there is no full-text search and no date filter, so narrow by raising or lowering limit rather than by query. Use it for recent coverage of a company you have already identified. Headlines only: the article body is not returned, follow url for that. For the company's own filings rather than press coverage use get_financial_filings.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoThe maximum number of news articles to return (default: 5, max: 10).
tickerNoThe ticker symbol of the company. Omit for broad market news.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint. The description adds behavioral constraints beyond that: headlines only (no body, follow url), no full-text search, no date filter, and the ability to omit ticker for broad market news (though schema mentions this, the description reinforces it). 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but not excessively long. It front-loads the core purpose and output, then adds limitations and alternatives. Each sentence contributes value, though it could be tightened slightly by merging the ticker/limit clarification.

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 tool with two optional parameters, the description fully covers what an agent needs: output structure, limitations, and alternative tools. The output schema presence is acknowledged, but the description itself specifies the returned fields. No missing information for correct invocation.

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 100%, so both parameters are documented. The description adds value by explaining how to use limit as a narrowing mechanism given the lack of search/filter, and clarifies ticker's role. It doesn't introduce new semantics beyond the schema but provides usage context.

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 explicitly states the tool returns recent news headlines for a stock, listing the exact fields (title, source, date, url, ticker) in a news array. It clearly differentiates from siblings by noting the absence of full-text search and date filter, and contrasts with get_financial_filings.

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?

It provides explicit guidance: 'Use it for recent coverage of a company you have already identified,' and gives a specific alternative for filings ('use get_financial_filings'). It also explains how to narrow results via limit instead of query, covering when-not and alternatives.

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

get_financial_pricesGet historical stock price dataA
Read-onlyIdempotent
Inspect

Historical OHLCV bars for one stock. All four of ticker, interval, start_date and end_date are required — there is no trailing-window shortcut. interval is one of day, week, month or year. Each bar carries open, close, high, low, volume and time, wrapped in a prices array alongside the echoed ticker. Use it to chart or to measure a move across a known window. For just the latest price use get_financial_prices_snapshot.

ParametersJSON Schema
NameRequiredDescriptionDefault
tickerYesThe stock ticker symbol (e.g. AAPL, MSFT).
end_dateYesThe end date for the price data (format: YYYY-MM-DD).
intervalYesThe time interval for the price data.
start_dateYesThe start date for the price data (format: YYYY-MM-DD).

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.4/5.0
Behavior4/5

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

The annotations already establish a safe read-only, idempotent operation. The description adds useful behavioral context beyond that: all four inputs are mandatory, there is no shortcut, and the response is wrapped in a `prices` array with an echoed `ticker`. Minor gaps remain, such as date-inclusivity, timezone handling, or market-adjustment policy, but these are secondary for a read-only OHLCV tool with an output schema.

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 sentences, each earning its place: purpose, parameter constraints, response shape, and usage routing. The most important information is front-loaded, and there is no filler or redundant expansion beyond what is needed.

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?

Given the full input schema, output schema, and annotations, the description is nearly complete for both selection and invocation. It covers required parameters, response format, and sibling routing. A small gap is the lack of explicit date-boundary behavior (e.g., whether start and end dates are inclusive, timezone assumed), which could matter when measuring a move across a known window, but this is minor and does not block correct tool selection.

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 description coverage is 100% and every parameter already has a clear description, including the interval enum and date format. The description repeats that all parameters are required and enumerates interval values, but does not add meaning beyond the schema, such as inclusive/exclusive date semantics or how intervals map to bar boundaries. Baseline 3 is appropriate.

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 opening line, 'Historical OHLCV bars for one stock', states a specific verb-resource pair and scope. It further distinguishes itself from `get_financial_prices_snapshot` by contrasting historical bars with the latest price, and mentions the response fields, leaving no ambiguity about what the tool returns.

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 explicitly says when to use it: 'Use it to chart or to measure a move across a known window.' It also gives an exclusion and alternative: 'For just the latest price use get_financial_prices_snapshot.' It additionally warns that all four parameters are required with no trailing-window shortcut, preventing an agent from making an invalid invocation.

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

get_financial_prices_snapshotPrice Snapshot (Real-Time)A
Read-onlyIdempotent
Inspect

The current price of one stock in a single call: price, day_change, day_change_percent, and time (plus time_milliseconds). ticker is required. Use it whenever the question is "what is it trading at now" — this is the cheapest and fastest way to get one number. For a series of bars over a date range use get_financial_prices; for valuation multiples rather than the raw price use get_financial_financial_metrics_snapshot.

ParametersJSON Schema
NameRequiredDescriptionDefault
tickerYesThe stock ticker symbol (e.g. AAPL, MSFT).

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already indicate readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, covering safety. The description adds performance context ('cheapest and fastest way') and clarifies it returns real-time snapshot data. It does not mention pagination or limits, but for a simple single-stock snapshot this is acceptable. 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?

The description is efficiently structured: it front-loads the return fields, then states the required parameter, gives usage guidance, and names alternatives. No filler or redundant phrases. Every clause contributes to the agent's decision or call correctness.

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?

With an output schema present, the description doesn't need to explain return values, yet it still lists the fields. It covers the sole parameter, provides usage context, and differentiates from related tools. For a simple read-only snapshot tool, everything an agent needs to invoke it correctly is present.

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 description coverage is 100%: the only parameter `ticker` is fully documented in the schema ('The stock ticker symbol (e.g. AAPL, MSFT).'). The description repeats that `ticker` is required, which adds no new meaning beyond the schema. A baseline score of 3 is appropriate given exhaustive schema docs.

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 clearly states the tool returns the current price of one stock with specific fields (`price`, `day_change`, `day_change_percent`, `time`). It explicitly distinguishes itself from sibling tools: `get_financial_prices` for historical series and `get_financial_financial_metrics_snapshot` for valuation multiples. The verb 'get' and resource 'financial prices snapshot' are specific, making the purpose 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?

The description gives explicit when-to-use guidance: 'Use it whenever the question is "what is it trading at now"'. It also provides direct alternatives for different use cases, naming `get_financial_prices` for date range bars and `get_financial_financial_metrics_snapshot` for valuation multiples. This clearly tells the agent when to choose this tool and when not to.

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

get_kalshi_marketsGet Kalshi MarketsA
Read-onlyIdempotent
Inspect

List markets on Kalshi, the CFTC-regulated US prediction exchange, with live bid/ask quotes in dollars. Use this when you need odds from a regulated venue, or to cross-check a Polymarket price against a second market; fetch specific markets with tickers (comma-separated), scope to a group with event_ticker / series_ticker, or narrow with status, search, and the created / close / settled timestamp ranges.

Returns markets[] with title, status, yes_bid_dollars / yes_ask_dollars, last_price_dollars, volume_fp, open_interest_fp, and rules_primary (the settlement criteria), plus a cursor to page with.

For executed fills rather than quotes, use get_kalshi_trades. For the crypto-native venue carrying similar questions, use get_polymarket_markets.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of results per page. Defaults to 100. Maximum value is 1000.
cursorNoPagination cursor from the previous response.
searchNoSearch markets by keywords in title and description. Must be URL encoded (e.g., 'bitcoin%20price' for 'bitcoin price').
statusNoFilter markets by status.
tickersNoComma-separated Kalshi market tickers to retrieve.
mve_filterNoFilter by multivariate events.
event_tickerNoFilter by a single Kalshi event ticker.
max_close_tsNoFilter markets closing before this Unix timestamp.
min_close_tsNoFilter markets closing after this Unix timestamp.
series_tickerNoFilter by series ticker.
max_created_tsNoFilter markets created before this Unix timestamp.
max_settled_tsNoFilter markets settled before this Unix timestamp.
min_created_tsNoFilter markets created after this Unix timestamp.
min_settled_tsNoFilter markets settled after this Unix timestamp.
min_updated_tsNoFilter markets updated after this Unix timestamp.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already establish readOnly, idempotent, open-world, non-destructive behavior, so the bar is lower. The description adds genuinely new context: the tool returns live quotes rather than executed fills, the settlement criteria are exposed via rules_primary, and pagination is cursor-based. This enriches the agent's model of what the invocation produces without contradicting any annotation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tight paragraphs with clear structure: purpose/usage first, return shape second, alternatives third. Every sentence earns its place. The middle paragraph listing return fields is slightly redundant with the existing output schema, which costs a point, but the overall organization is strong and front-loaded.

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, zero-required-parameter list tool with a rich schema, annotations, and output schema, the description covers everything an agent needs: purpose, regulatory framing, when-to-use vs alternatives, filtering strategy, return fields, settlement criteria, and pagination. No critical gap remains; rate limits and error cases would be marginal additions.

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 coverage is 100%, so the baseline is 3. The description adds organizational value by grouping the 15 parameters into use-case clusters (fetch specific markets via tickers, scope via event_ticker/series_ticker, narrow via status/search/timestamp ranges), which helps an agent pick the right filter for its goal. This exceeds the baseline but does not add per-parameter detail beyond the schema.

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 — 'List markets on Kalshi' — and adds distinguishing qualifiers ('CFTC-regulated US prediction exchange', 'live bid/ask quotes in dollars') that separate it from the other market venues in the sibling list. It also explicitly names what it is not ('For executed fills rather than quotes, use get_kalshi_trades'), so an agent can disambiguate without opening schemas.

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?

Provides explicit when-to-use guidance ('Use this when you need odds from a regulated venue, or to cross-check a Polymarket price against a second market') and names both alternatives with the exact conditions that select them (get_kalshi_trades for fills, get_polymarket_markets for the crypto-native venue). Nothing is left to inference.

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

get_kalshi_tradesGet Kalshi TradesA
Read-onlyIdempotent
Inspect

Get the executed-trade tape for Kalshi markets — actual fills, not quotes. Use this when you need realized prices and traded size over a window, for example to see how conviction moved while an event unfolded; narrow with ticker and the min_ts / max_ts Unix-second range, and set is_block_trade to isolate large negotiated trades.

Returns trades[] with trade_id, ticker, count_fp (contracts), yes_price_dollars / no_price_dollars, taker_side, and created_time, plus a cursor to page with.

For the current quotes, settlement rules, and market metadata rather than fills, use get_kalshi_markets.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of results per page. Defaults to 100. Maximum value is 1000.
cursorNoPagination cursor from the previous response.
max_tsNoFilter trades before this Unix timestamp.
min_tsNoFilter trades after this Unix timestamp.
tickerNoFilter by Kalshi market ticker.
is_block_tradeNoFilter trades by whether they are block trades. Omit to return all trades.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

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

With annotations already marking this as read-only, idempotent, and non-destructive, the description adds useful behavioral context: it returns actual fills (not quotes), the list of fields, and the pagination cursor. It does not introduce unrelated claims and adds insight beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and purposeful, opening with the core purpose and then moving to usage guidance, return shape, and the sibling alternative. Minor redundancy with the output schema (detailed return fields) keeps it from a 5, but 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?

With 6 parameters, full schema coverage, an output schema, and safe/read-only annotations, the description provides sufficient context for correct invocation. It covers the when-to-use, how-to-filter, and what-to-expect, while pointing to the relevant sibling tool. The only gap is lack of explicit mention of authentication/rate limits, but the annotations already signal a harmless read operation.

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 coverage is 100%, so the baseline is 3; the description adds value by explaining how parameters combine (narrow with ticker and time range, set is_block_trade to isolate large negotiated trades), which goes beyond the schema's simple per-field filters.

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 clearly states a specific action ('Get') on a specific resource ('executed-trade tape for Kalshi markets') and explicitly differentiates itself from quotes and from get_kalshi_markets, making it easy for an agent to distinguish from siblings.

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?

It explains when to use this tool ('when you need realized prices and traded size over a window'), gives concrete filtering guidance with ticker, min_ts/max_ts, and is_block_trade, and explicitly tells the agent to use get_kalshi_markets when quotes/settlement/metadata are needed instead.

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

get_polymarket_activityGet Polymarket Wallet ActivityA
Read-onlyIdempotent
Inspect

Get one wallet's on-chain Polymarket activity — a per-address lookup, not a market-wide trade feed. The user parameter is required. Use it to reconstruct what a specific trader did — position splits, merges and redemptions, with size, price, and the transaction that settled them; narrow further with market_slug, condition_id, and the start_time / end_time Unix-second range.

Returns activities[] with side (MERGE / SPLIT / REDEEM), market_slug, condition_id, shares, price, timestamp, and tx_hash, plus a pagination object whose key you pass back as pagination_key.

For market-wide prices rather than one wallet's history, use get_polymarket_markets.

ParametersJSON Schema
NameRequiredDescriptionDefault
userYesWallet address or user identifier. Required by the runtime route.
limitNoNumber of activities to return (1-1000)
end_timeNoFilter activity until this Unix timestamp in seconds (inclusive)
start_timeNoFilter activity from this Unix timestamp in seconds (inclusive)
market_slugNoFilter activity by market slug
condition_idNoFilter activity by condition ID
pagination_keyNoBase64-encoded cursor for efficient pagination. Returned in the previous response's pagination object.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is established. The description adds meaningful behavioral detail beyond annotations: it explains that the tool returns specific activity types (MERGE/SPLIT/REDEEM), includes a pagination object whose key must be passed back, and requires the user parameter. This gives the agent a clear model of how the tool behaves without contradicting any annotation.

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 organized into three short paragraphs, each with a distinct job: scope definition, behavioral/return detail, and alternative routing. Every sentence carries information; there is no redundant or promotional text. The structure is front-loaded with the core purpose before discussing filters and return fields.

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 lookup with 7 parameters and an existing output schema, the description covers all essential decision points: the required parameter, available filters, response shape, pagination mechanics, and when to choose a different tool. An agent has sufficient information to invoke it correctly and interpret the result, with no significant gaps.

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 100%, so the baseline is 3. The description adds value by stating that `user` is required, grouping `market_slug`, `condition_id`, and the time range as narrowing filters, and explaining that `pagination_key` comes from the previous response's pagination object. This enrichment goes beyond the schema's individual field descriptions.

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 uses a specific verb and resource: 'Get one wallet's on-chain Polymarket activity' and immediately distinguishes it from a market-wide trade feed. It clearly names the scope (per-address lookup) and the entity involved (a specific trader), making it easy to differentiate from the sibling get_polymarket_markets.

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 explicitly tells the agent when to use this tool ('Use it to reconstruct what a specific trader did') and contrasts it with an alternative: 'For market-wide prices rather than one wallet's history, use get_polymarket_markets.' This provides direct routing guidance with no reliance on inference.

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

get_polymarket_eventsGet Polymarket EventsA
Read-onlyIdempotent
Inspect

List Polymarket events — the topic-level grouping that bundles related markets, such as an election or a season-long series. Use this to browse by subject rather than by individual question, or to find every market attached to one storyline; filter with tag_slug, active, featured, archived, closed, and the liquidity / volume ranges.

Returns a top-level array of event objects with title, ticker, slug, volume, volume24hr, liquidity, startDate / endDate, and a nested markets array holding the tradable questions.

When you already know which question you want and need its price, use get_polymarket_markets instead.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoFilter by one or more event IDs.
slugNoFilter by one or more event slugs.
limitNoMaximum number of events to return.
orderNoComma-separated list of fields to order by.
activeNoFilter by active events.
closedNoFilter by whether the event is closed.
offsetNoNumber of events to skip for offset-based pagination.
tag_idNoFilter by tag ID.
archivedNoFilter by archived events.
featuredNoFilter by featured events.
tag_slugNoFilter by tag slug.
ascendingNoSort ascending when true.
volume_maxNoMaximum volume.
volume_minNoMinimum volume.
end_date_maxNoFilter events ending before this ISO timestamp.
end_date_minNoFilter events ending after this ISO timestamp.
liquidity_maxNoMaximum liquidity.
liquidity_minNoMinimum liquidity.
start_date_maxNoFilter events starting before this ISO timestamp.
start_date_minNoFilter events starting after this ISO timestamp.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and non-destructive behavior. The description adds meaningful behavioral context beyond that by specifying the return shape: a top-level array of event objects with key fields and a nested markets array. This helps the agent understand what the call produces without relying only on the output schema.

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 well-structured and front-loaded: purpose first, then usage guidance, then return shape, then sibling routing. Every sentence earns its place, and the alternative tool guidance is placed at the end without clutter.

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?

Given the rich input schema, annotations, and output schema, the description covers the essential conceptual context: what an event is, how it differs from a market, how to browse/filter, what the response contains, and when to use a sibling tool. Nothing critical is missing for an agent to select and invoke this tool correctly.

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 description coverage is 100%, so the baseline is 3. The description mentions some filters (tag_slug, active, featured, archived, closed, liquidity/volume ranges) and the return fields, but it does not add substantive meaning beyond what the input schema already documents for each parameter. It is useful but not additive enough to raise the score.

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: 'List Polymarket events'. It then defines what an event is (topic-level grouping bundling related markets) and gives concrete examples (election, season-long series), making the tool's purpose unambiguous and distinct from sibling tools.

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?

It explicitly states when to use this tool: 'Use this to browse by subject rather than by individual question, or to find every market attached to one storyline.' It also names the alternative: 'When you already know which question you want and need its price, use get_polymarket_markets instead.' This is direct and actionable.

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

get_polymarket_marketsGet Polymarket MarketsA
Read-onlyIdempotent
Inspect

List individual Polymarket prediction markets — one binary question each — with live pricing. Use this when you need the market-implied probability of a specific outcome, or to screen markets by size and timing; filter with slug, condition_ids, clob_token_ids, tag_id, closed, and the volume_num_* / start_date_* / end_date_* ranges.

Returns a top-level array of market objects. The probability signal is outcomes paired with outcomePrices, quoted against bestBid / bestAsk; conditionId and clobTokenIds are the on-chain identifiers you need to join to other Polymarket data.

For the topic that groups several related questions together, use get_polymarket_events. For the same kind of question on the US-regulated Kalshi exchange, use get_kalshi_markets.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoFilter by one or more Polymarket market IDs.
slugNoFilter by one or more market slugs.
limitNoMaximum number of markets to return.
orderNoComma-separated list of fields to order by.
closedNoFilter by whether the market is closed.
offsetNoNumber of markets to skip for offset-based pagination.
tag_idNoFilter by tag ID.
ascendingNoSort ascending when true.
include_tagNoInclude tag metadata when true.
end_date_maxNoFilter markets ending before this ISO timestamp.
end_date_minNoFilter markets ending after this ISO timestamp.
condition_idsNoFilter by one or more market condition IDs.
clob_token_idsNoFilter by one or more CLOB token IDs.
start_date_maxNoFilter markets starting before this ISO timestamp.
start_date_minNoFilter markets starting after this ISO timestamp.
volume_num_maxNoMaximum total volume.
volume_num_minNoMinimum total volume.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.9/5.0
Behavior5/5

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

Beyond the annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds valuable behavioral detail: it states the output is a top-level array, clarifies that the probability signal is in `outcomes` paired with `outcomePrices` and quoted against `bestBid`/`bestAsk`, and identifies `conditionId`/`clobTokenIds` for joining to other data. This goes well beyond the structured hints.

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 exactly three well-focused paragraphs: purpose with inline filter enumeration, return-shape explanation, and sibling routing. Every sentence adds information. No filler or repetition of the title, and the most important usage guidance (when to use) is front-loaded in the first sentence.

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?

Given 17 parameters, an output schema, and strong annotations, the description fully covers the tool's purpose, return-shape semantics, parameter categories, and sibling alternatives. An agent can decide to call this tool, know what it returns, and join the results to other Polymarket data without needing to open another schema.

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 coverage is 100%, and the schema already provides per-parameter descriptions and examples. The description adds semantic grouping beyond that: it names the exact filter parameters for market size and timing ('slug', 'condition_ids', 'clob_token_ids', 'tag_id', 'closed', and the volume/date ranges) and explains that some in-schema fields are on-chain identifiers for joining. It does not re-describe every parameter but meaningfully aggregates them for output.

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 states a specific verb and resource: 'List individual Polymarket prediction markets — one binary question each — with live pricing.' It immediately distinguishes itself by calling out the use case—market-implied probability of a specific outcome or screening by size and timing—and explicitly differentiates from siblings get_polymarket_events and get_kalshi_markets.

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 explicitly says when to use this tool: 'Use this when you need the market-implied probability of a specific outcome, or to screen markets by size and timing.' It also gives direct when-not guidance by routing users to get_polymarket_events for grouped topics and get_kalshi_markets for the US-regulated exchange. It names alternatives with clear criteria.

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

list_categoriesBrowse the AIsa catalogueA
Read-only
Inspect

The AIsa catalogue at a glance: categories, the servers in each, tool counts, and the dedicated endpoint to connect if you only need one category. Free; no key needed. (AIsa-only: tool-router has no equivalent.)

Use mcp.aisa.one/mcp?modules=<category> (or mcp.aisa.one/<category>/mcp) to have that category's tools listed directly instead of via search.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds meaningful behavioral context beyond annotations: the tool is free, requires no key, and can direct users to a category-specific endpoint that lists tools directly rather than through search.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is moderately detailed but every sentence adds useful information: output scope, cost/auth, sibling differentiation, and endpoint usage. It is slightly longer than strictly necessary but remains well-structured and front-loaded with the core purpose.

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 zero-parameter, read-only tool with an output schema and safety annotations, the description is complete. It covers what the tool returns, the free/no-key access model, and provides the category endpoint for specialized use, leaving no essential gap for an agent to call it correctly.

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?

The tool has zero parameters, so the baseline is 4. The description includes a <category> placeholder only in the endpoint examples, not as a tool parameter, which is appropriate supplementary guidance rather than a parameter-semantics gap.

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 clearly states what the tool does: it presents the AIsa catalogue at a glance, including categories, servers, tool counts, and a dedicated category endpoint. It also distinguishes itself from search by explaining that the endpoint lists tools directly instead of via search.

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 provides clear usage context: use list_categories for a catalogue overview, and use the provided endpoint when you only need one category. It explicitly contrasts with search ('instead of via search') and notes tool-router has no equivalent, although it does not exhaustively cover all sibling alternatives.

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

post_financial_financials_search_line_itemsSearch specific financial metricsA
Destructive
Inspect

Pull named financial line items across one or more companies in a single call. Body takes tickers and line_items (both required, both arrays), plus period (annual, quarterly or ttm) and limit. Returns search_results with one row per ticker and period carrying only the fields you asked for, alongside report_period, period and currency. Use it to build a comparison table without pulling three full statements per company. The item names are the same field names the statement tools return, so look one up there first if unsure. For everything about a single company use get_financial_financials.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoThe maximum number of results to return.
periodNoThe time period for the financial data.ttm
tickersYesAn array of tickers to apply to the search.
line_itemsYesAn array of line items to apply to the search.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations include destructiveHint=true and readOnlyHint=false, but the description adds value by clarifying it returns only requested fields and is a read-like search despite the destructive hint. It describes the output structure (search_results with one row per ticker and period) and notes it avoids pulling full statements, which is useful behavioral context.

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 concise and well-structured, with the key points front-loaded. It explains the purpose, then parameters, then output, then usage guidance, with no redundant filler. Every sentence adds value.

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?

The output schema and annotations provide some context, but the description fills gaps by explaining the shape of the result and how to handle uncertainty about line item names. It is complete for an agent to decide when to use this tool and what to expect from it.

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?

The schema has 100% coverage, but the description reinforces key parameter semantics: it explicitly mentions tickers and line_items are required arrays, and the period values (annual, quarterly, ttm) and limit. It also clarifies that item names match statement field names, aiding correct parameter usage beyond schema descriptions.

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 clearly states it pulls named financial line items across multiple companies in a single call, distinguishing it from sibling tools like get_financial_financials. It specifies the resource (financial line items) and the action (search), and contrasts with single-company statements.

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 provides explicit usage context: it's for building comparison tables across companies and mentions that for a single company you should use get_financial_financials. It also suggests looking up field names in the statement tools if unsure, offering clear guidance on when to use this tool.

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

post_financial_financials_search_screenerSearch financial statementsA
Destructive
Inspect

Find tickers that match numeric conditions. Body takes filters — each a field, an operator and a value — plus limit. Returns results with ticker, currency, sector, industry and whichever filtered field was matched. This is the only tool here that works without knowing a ticker in advance; everything else takes one as input. Filterable fields are the metric names get_financial_financial_metrics returns. Use it to build a candidate list, then pull detail on each name with the statement or metric tools.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoThe maximum number of results to return.
periodNoThe time period for the financial data.ttm
filtersYesAn array of filter objects to apply to the search.
currencyNoThe currency of the financial data.
order_byNoThe field to order the results by. Use -field to order in descending order.ticker
historicalNoWhether to return historical financial data.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior1/5

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

The description presents the tool as a search/filter operation that 'finds' tickers and 'returns results', implying no side effects. However, the annotations declare destructiveHint=true and readOnlyHint=false, creating a direct contradiction. No effort is made in the description to reconcile this or disclose destructive behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded: it states the core purpose, mentions the request shape, describes the result shape, and gives workflow guidance in a few sentences. There is only minor redundancy, such as re-emphasizing the ticker choice, but overall it is efficient.

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?

Given that there is an output schema, 100% schema coverage, and 3 enumerated parameters, the description is sufficiently complete for the main search workflow. It covers the candidate-list use case and output content, so the agent is unlikely to misunderstand how to invoke the tool; the main unresolved issue is the annotation contradiction.

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 100%, so the baseline is 3. The description does add some value by explaining the filter structure (field/operator/value) and pointing to get_financial_financial_metrics as the source of filterable fields, but it does not deeply extend the schema-provided parameter meaning.

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 clearly states the tool's purpose: find tickers matching numeric conditions. It also distinguishes it from siblings by noting it is the only tool here that works without knowing a ticker in advance, which is actionable differentiator.

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 explicitly says when to use it: to build a candidate list, then pull details on each name with statement or metric tools. It also tells the agent that all other tools require a ticker, so the intended workflow is clear.

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

twitter_stock_pulseStock Pulse: X chatter joined with market dataA
Read-only
Inspect

Assemble everything behind "what is X saying about stocks right now" in one call.

Searches X/Twitter for a topic, extracts every $TICKER cashtag mentioned in the results, then fetches a price snapshot for the most-mentioned symbols — optionally recent company news too.

Use this when you need the posts AND the market data behind them together. Doing it yourself means one search call, parsing cashtags, then one price call per symbol, then joining the results; this returns the joined bundle.

Returns the raw tweets, per-symbol mention counts, price snapshots, a coverage block saying which upstream sources succeeded or failed, and a billing block with the calls made.

It does NOT rank, score, or interpret. mentions is a raw count, not a heat ranking — you decide what "hot" means and what the numbers imply. If you only need the posts, use get_twitter_tweet_advanced_search. If you already know the symbols, use get_financial_prices_snapshot directly.

ParametersJSON Schema
NameRequiredDescriptionDefault
sinceNo7d
topicYes
max_tickersNo
include_newsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds valuable behavioral context: it returns raw tweets, mention counts, price snapshots, a coverage block for upstream failures, and a billing block. It also explicitly states the tool does NOT rank or interpret, which prevents misuse. Minor gap: no mention of rate limits or pagination, but the coverage/billing disclosure is strong.

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 well-structured and front-loaded with the core value proposition. It uses short paragraphs and bullet-like lists to convey the workflow, return contents, and exclusions. Every sentence earns its place, and the explicit 'does NOT' clarification prevents misinterpretation.

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 has an output schema, so return values are documented elsewhere. The description covers the workflow, the joined data, the coverage/billing blocks, and the non-interpretation caveat. It lacks explicit mention of pagination or rate limits, but for a read-only aggregation tool with an output schema, this is nearly complete.

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 description coverage is 0%, so the description must compensate. It explains the overall flow (topic → cashtags → prices) and mentions 'most-mentioned symbols' which maps to max_tickers, and 'optionally recent company news' which maps to include_news. However, it does not explain the format of `since` (e.g., '7d' default) or the exact semantics of max_tickers beyond 'most-mentioned'. The description adds meaning but leaves some parameter details to the schema.

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 clearly states the tool's function: it searches X/Twitter for a topic, extracts $TICKER cashtags, fetches price snapshots, and optionally news, then returns a joined bundle. It distinguishes itself from siblings by explicitly naming alternatives like get_twitter_tweet_advanced_search and get_financial_prices_snapshot.

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 explicitly states when to use this tool ('when you need the posts AND the market data behind them together') and when not to use it, naming the alternatives for posts-only or known-symbols cases. It also explains the manual multi-step alternative, making the tradeoff clear.

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

useRun an AIsa operationA
Destructive
Inspect

Execute one AIsa operation. Billed per call to your AIsa key.

Answers in tool-router's BatchCallResult shape: successful, data or error {type, status, message, retryable}. Pinned tools in tools/list can also be called directly; this is the way to call anything found through search.

ParametersJSON Schema
NameRequiredDescriptionDefault
argumentsNoArguments matching input_schema / arguments_schema
search_idNosearch_id from the search that found this operation
operation_idYesoperation_id as returned by search
max_price_usdNoRefuse the call before any spend if it would cost more than this many USD

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already provide readOnly=false, openWorldHint=true, and destructiveHint=true. The description adds valuable behavior beyond that: billing per call, the BatchCallResult response shape, and the error structure with retryable status. It does not spell out side effects, but the destructive flag is already carried by annotations, so the additional context is sufficient.

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 short sentences, each earning its place: purpose, cost, response shape, and routing guidance. Key behavioral facts are front-loaded, and nothing is redundant with the schema or annotations.

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?

Given that an output schema exists and all parameters have descriptions, the tool description is complete enough for correct invocation. It covers cost, return/error contracts, and how routing to this tool differs from calling pinned tools directly, leaving no practical gap.

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 description coverage is 100%, and each parameter is already clearly documented: operation_id as returned by search, search_id provenance, arguments matching input_schema, and max_price_usd as a spend guard. The description does not need to add parameter detail, so baseline 3 is appropriate.

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 'Execute one AIsa operation,' a specific verb+resource statement. The word 'one' distinguishes it from the sibling batch_use, and the closing note distinguishes it from calling pinned tools directly. An agent can tell what this tool is for immediately.

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?

It explicitly states when to use the tool: 'this is the way to call anything found through search.' It also gives the alternative: 'Pinned tools in tools/list can also be called directly.' This is clear when-versus-alternative guidance with no ambiguity.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 14 tool updates
    • Changedget_coingecko_coins_id1 field changed
      • addedInput schema / properties / id / example
        Added value: +"bitcoin"
    • Changedget_coingecko_coins_id_history2 fields changed
      • addedInput schema / properties / date / example
        Added value: +"30-12-2024"
      • addedInput schema / properties / id / example
        Added value: +"bitcoin"
    • Changedget_coingecko_coins_id_market_chart3 fields changed
      • addedInput schema / properties / days / example
        Added value: +"7"
      • addedInput schema / properties / id / example
        Added value: +"bitcoin"
      • addedInput schema / properties / precision / example
        Added value: +"2"
    • Changedget_coingecko_coins_id_market_chart_range4 fields changed
      • addedInput schema / properties / from / example
        Added value: +1713398400
      • addedInput schema / properties / id / example
        Added value: +"bitcoin"
      • addedInput schema / properties / precision / example
        Added value: +"2"
      • addedInput schema / properties / to / example
        Added value: +1713484800
    • Changedget_coingecko_coins_id_ohlc3 fields changed
      • addedInput schema / properties / days / example
        Added value: +"7"
      • addedInput schema / properties / id / example
        Added value: +"bitcoin"
      • addedInput schema / properties / precision / example
        Added value: +"2"
    • Changedget_coingecko_coins_id_tickers1 field changed
      • addedInput schema / properties / id / example
        Added value: +"bitcoin"
    • Changedget_coingecko_coins_markets3 fields changed
      • addedInput schema / properties / ids / example
        Added value: +"bitcoin,ethereum"
      • addedInput schema / properties / locale / example
        Added value: +"en"
      • addedInput schema / properties / precision / example
        Added value: +"2"
    • Changedget_coingecko_exchanges_id1 field changed
      • addedInput schema / properties / id / example
        Added value: +"binance"
    • Changedget_coingecko_exchanges_id_tickers1 field changed
      • addedInput schema / properties / id / example
        Added value: +"binance"
    • Changedget_coingecko_simple_price2 fields changed
      • addedInput schema / properties / ids / example
        Added value: +"bitcoin,ethereum"
      • addedInput schema / properties / vs_currencies / example
        Added value: +"usd,eur"
    • Changedget_coingecko_simple_token_price_id4 fields changed
      • addedInput schema / properties / contract_addresses / example
        Added value: +"0xdAC17F958D2ee523a2206206994597C13D831ec7"
      • addedInput schema / properties / id / example
        Added value: +"ethereum"
      • addedInput schema / properties / precision / example
        Added value: +"2"
      • addedInput schema / properties / vs_currencies / example
        Added value: +"usd"
    • Changedget_coingecko_token_data2 fields changed
      • addedInput schema / properties / contract_address / example
        Added value: +"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"
      • addedInput schema / properties / id / example
        Added value: +"ethereum"
    • Changedget_coingecko_token_market_chart3 fields changed
      • addedInput schema / properties / days / example
        Added value: +"7"
      • addedInput schema / properties / id / example
        Added value: +"ethereum"
      • addedInput schema / properties / precision / example
        Added value: +"2"
    • Changedget_coingecko_token_market_chart_range5 fields changed
      • addedInput schema / properties / contract_address / example
        Added value: +"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"
      • addedInput schema / properties / from / example
        Added value: +1751328000
      • addedInput schema / properties / id / example
        Added value: +"ethereum"
      • addedInput schema / properties / precision / example
        Added value: +"2"
      • addedInput schema / properties / to / example
        Added value: +1751414400
  2. 54 tool updates
    • First observedbatch_use
    • First observededinet_filings_digest
    • First observedget_coingecko_coins_categories
    • First observedget_coingecko_coins_categories_list
    • First observedget_coingecko_coins_id
    • First observedget_coingecko_coins_id_history
    • First observedget_coingecko_coins_id_market_chart
    • First observedget_coingecko_coins_id_market_chart_range
    • First observedget_coingecko_coins_id_ohlc
    • First observedget_coingecko_coins_id_tickers
    • First observedget_coingecko_coins_list
    • First observedget_coingecko_coins_markets
    • First observedget_coingecko_exchanges
    • First observedget_coingecko_exchanges_id
    • First observedget_coingecko_exchanges_id_tickers
    • First observedget_coingecko_exchanges_list
    • First observedget_coingecko_search_trending
    • First observedget_coingecko_simple_price
    • First observedget_coingecko_simple_supported_vs_currencies
    • First observedget_coingecko_simple_token_price_id
    • First observedget_coingecko_token_data
    • First observedget_coingecko_token_market_chart
    • First observedget_coingecko_token_market_chart_range
    • First observedget_details
    • First observedget_edinet_documents
    • First observedget_financial_analyst_estimates
    • First observedget_financial_company_facts
    • First observedget_financial_earnings
    • First observedget_financial_filings
    • First observedget_financial_filings_items
    • First observedget_financial_financial_metrics
    • First observedget_financial_financial_metrics_snapshot
    • First observedget_financial_financials
    • First observedget_financial_financials_balance_sheets
    • First observedget_financial_financials_cash_flow_statements
    • First observedget_financial_financials_income_statements
    • First observedget_financial_insider_trades
    • First observedget_financial_macro_interest_rates
    • First observedget_financial_macro_interest_rates_snapshot
    • First observedget_financial_news
    • First observedget_financial_prices
    • First observedget_financial_prices_snapshot
    • First observedget_kalshi_markets
    • First observedget_kalshi_trades
    • First observedget_polymarket_activity
    • First observedget_polymarket_events
    • First observedget_polymarket_markets
    • First observedget_twitter_tweet_advanced_search
    • First observedlist_categories
    • First observedpost_financial_financials_search_line_items
    • First observedpost_financial_financials_search_screener
    • First observedsearch
    • First observedtwitter_stock_pulse
    • First observeduse

Publisher details

Operator
AIsa · Publisher source
Operator website
https://aisa.one
Vendor relationship
Independent
Trust center
Not available
Restrictions
No paid plan, admin approval, regional limit or custom OAuth app is needed to connect. Sign-in is OAuth against auth.aisa.one with dynamic client registration (RFC 7591), or an Authorization: Bearer AIsa API key. search, get_details and list_categories are free. use and batch_use are billed per call to the caller's own AIsa key, and max_price_usd refuses anything above a cap before any spend. Some operations are subscription-only on the gateway and answer 402 without the Hive GTM Growth plan.

Related MCP Connectors

  • Your agent needs company financials it can compute on — statements, ratios, earnings, estimates, filings and insider activity as structured data, not a PDF. **What you can ask for** • "Give me 8 quarters of income statement, balance sheet and cash flow for this ticker." • "What do analysts estimate for next quarter, and how did the last four surprise?" • "Find this exact line item across every filing." • "Who bought or sold as an insider in the last 90 days?" • "Screen for profitable companies under this valuation with growing revenue." **How to use it** Point any MCP client at https://mcp.aisa.one/marketpulse/mcp and sign in with OAuth — there is no key to create or paste. 21 tools: prices and snapshots, income statements, balance sheets, cash-flow statements, financial metrics and snapshots, earnings, analyst estimates, company facts, filings and filing items, line-item search, a screener, insider trades, macro interest rates, news, plus EDINET documents and filing digests for Japanese issuers. **Why this rather than the source** Statements as fields you can compute on, and a screener in the same place. **It is also a door to the rest** The same login reaches 26 sources and 580+ operations. Read the fundamentals here, then ask the same agent what social is saying about the ticker — without adding a second server. **What it costs** Finding and inspecting an operation is free. Running one is billed per call at API prices, with no seat and no monthly minimum, and every call takes max_price_usd so an agent cannot overspend by accident. **Where else it reaches** https://mcp.aisa.one/finance/mcp for equities, crypto and prediction markets in one place.

  • Your agent needs the two halves of a move at once — what people are posting about a ticker right now, and what the price and the news actually did. **What you can ask for** • "What is X saying about $NVDA today, and what did the stock do?" • "Show the chatter and the price move for these five tickers side by side." • "Which tickers are being talked about most right now?" • "Pull the news and the snapshot behind this spike." **How to use it** Point any MCP client at https://mcp.aisa.one/stock-pulse/mcp and sign in with OAuth — there is no key to create or paste. 4 tools: a combined stock-pulse call that joins X/Twitter chatter to the tickers mentioned, plus advanced tweet search, price snapshots and financial news. **Why this rather than the source** One call instead of four, with the join already done. **It is also a door to the rest** The same login reaches 26 sources and 580+ operations. Spot the move here, then ask the same agent for the filings or the fundamentals behind it — without adding a second server. **What it costs** Finding and inspecting an operation is free. Running one is billed per call at API prices, with no seat and no monthly minimum, and every call takes max_price_usd so an agent cannot overspend by accident. **Where else it reaches** https://mcp.aisa.one/finance/mcp for equities, crypto and prediction markets in one place.

  • Your agent needs crypto prices it can rely on — spot, ranked market tables, history, OHLC, per-venue tickers, and what is trending right now. **What you can ask for** • "What is the price of these 20 tokens in USD and EUR right now?" • "Give me the top 100 by market cap with 24h and 7d change." • "Chart this coin's price over the last year, hourly." • "Where does this token trade, and at what spread per venue?" • "What is trending on CoinGecko today?" **How to use it** Point any MCP client at https://mcp.aisa.one/crypto-market-data/mcp and sign in with OAuth — there is no key to create or paste. 21 CoinGecko tools: simple price and token price by contract, supported currencies, coin list and detail, ranked markets, history, market charts and ranges, OHLC, per-coin tickers, categories, exchanges and their tickers, token data and charts, and trending. **It is also a door to the rest** The same login reaches 26 sources and 580+ operations. Price the token here, then ask the same agent what X is posting about it — without adding a second server. **What it costs** Finding and inspecting an operation is free. Running one is billed per call at API prices, with no seat and no monthly minimum, and every call takes max_price_usd so an agent cannot overspend by accident. **Where else it reaches** https://mcp.aisa.one/finance/mcp for equities, crypto and prediction markets in one place.

  • Your agent needs the crowd's number — live odds on elections, policy, macro prints and sport, from the venues where people put money behind the opinion. **What you can ask for** • "What are the current odds on this event?" • "List the open markets on this topic across both venues." • "Show recent trades and how the price moved." • "What is the implied probability now versus a week ago?" **How to use it** Point any MCP client at https://mcp.aisa.one/prediction-market-data/mcp and sign in with OAuth — there is no key to create or paste. 5 tools: Kalshi markets and trades, Polymarket markets, events and activity. **Why this rather than the source** Both venues in one shape, so the same question can be priced twice. **It is also a door to the rest** The same login reaches 26 sources and 580+ operations. Read the odds here, then ask the same agent for the market data or the news behind them — without adding a second server. **What it costs** Finding and inspecting an operation is free. Running one is billed per call at API prices, with no seat and no monthly minimum, and every call takes max_price_usd so an agent cannot overspend by accident. **Where else it reaches** https://mcp.aisa.one/finance/mcp for equities, crypto and prediction markets in one place.

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Provides live financial data for any LLM agent, including stock quotes, crypto prices, SEC filings, XBRL financials, FX rates, and macro indicators, through ten MCP tools.
    2
    11
    84 npm
    1
    MIT
  • F
    license
    Not graded
    quality
    A
    maintenance
    Financial intelligence MCP server exposing real market data, SEC filings, FinBERT sentiment, technical analysis, and macro/global market data as MCP tools — free tier issued instantly, no card required.
    1
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides 10 financial data tools (market data, economic indicators, news, insider trades, and calendars) via a single MCP layer, enabling any MCP-compatible LLM to access diverse financial data through a unified interface.
    1
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources