Skip to main content
Glama

Adona Robot market data

Server Details

Forex and gold data API: real-time XAUUSD and FX, 1s candles, redistribution allowed, from CHF 500.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
100.0% over 26 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
Adona-Robot/market-data-examples
GitHub Stars
0

TDQS

A4/5.0

Scored across 4 tools

Disambiguation4/5

Each tool targets a distinct concern: historical candles, the plan catalog, the symbol list, and usage pricing. get_offer and quote_price_for are adjacent (both billing-related), but the descriptions explicitly cross-reference each other ('For the plans themselves, use get_offer') to keep them apart.

Naming Consistency4/5

get_candles, get_offer, and list_symbols follow a clean verb_noun pattern, and quote_price_for is a minor extension of it (verb_noun_qualifier). No mixed casing or clashing verb styles.

Tool Count4/5

Four tools is lean but coherent for a data-plus-billing API, with each tool earning its place. It sits at the thinner end of the range, though nothing feels redundant or missing for the stated scope.

Completeness4/5

The surface covers the core lifecycle: discovering plans, pricing usage, listing tradable symbols, and fetching candle history. It lacks real-time/streaming quote retrieval and any account/usage-status tool, which an agent might expect but could work around.

Available Tools

4 tools
get_candlesAInspect

Candle history for one symbol, one page, oldest first, with your API key in the request's Authorization header (Bearer adk_live_... or adk_test_...) or in its X-API-Key header (adk_live_..., for a client or gateway that keeps Authorization for itself; two different keys are refused with CONFLICTING_API_KEYS). Billed like GET /v1/candles: slices of 1000 bars, rounded up, an empty page costs nothing. timeframe is one of D1, H4, H1, M15, M5, M1, S1; limit 1 to 5000; page backwards with before = the previous answer's next_before. end_user_id names the person you serve, for the per-person minute ceiling. Refusals answer the /v1 codes.

NameRequiredDescriptionDefault
limitNo
beforeNo
symbolYes
timeframeYes
end_user_idNo

TDQS

A4.6/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so richly: exact auth header forms (Bearer adk_live_/adk_test_ or X-API-Key), the CONFLICTING_API_KEYS refusal when both are supplied, billing semantics (1000-bar slices rounded up, empty page free), the per-person minute ceiling tied to end_user_id, and that refusals map to /v1 codes.

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 core purpose is front-loaded and every clause carries information, but the auth and billing details make it a dense run-on that an agent must parse carefully. Nothing is wasted, yet the sentence structure could be tighter.

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 5-parameter read tool with no annotations and no output schema, the definition is nearly complete: it explains auth, pagination, limits, billing and error behavior. It stops short of describing the bar payload shape, though the pagination hint about next_before partially covers the return contract.

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 description coverage is 0%, so the description must compensate, and it does: it enumerates all timeframe values (D1..S1), bounds limit (1-5000), defines before as the prior response's next_before for reverse pagination, and explains end_user_id's role in rate limiting. Only symbol's syntax is left implicit, which is minor.

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 with scope and ordering: 'Candle history for one symbol, one page, oldest first.' The sibling tools (get_offer, list_symbols, quote_price_for) cover unrelated resources, so no sibling differentiation is needed, and the agent can tell exactly what this 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?

Provides concrete usage mechanics: page backwards with 'before = the previous answer's next_before', and limit range 1-5000. It does not state when to prefer this over a sibling, but since the siblings are unrelated resources there is little ambiguity to resolve.

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

get_offerAInspect

Call this first to learn what is sold: the plans with their CHF prices and limits, the free trial, the continuous-feed rule, the redistribution terms, and links (signup, API reference, OpenAPI). To price a specific usage, use quote_price_for.

NameRequiredDescriptionDefault

No parameters

Output 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?

With no annotations, the description carries the disclosure burden, and it does enumerate the substantive content an agent will receive (prices, limits, trial, feed rule, redistribution terms, links). It does not mention auth requirements or whether the offer data is cached/static, which is the only real gap.

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 waste, and the content inventory plus the sibling routing are both front-loaded. Every clause 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?

An output schema exists, so return values need not be described; combined with zero parameters and explicit routing to the pricing sibling, the definition is complete enough to call this tool correctly on the first try.

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 takes zero parameters, so the baseline is 4; there is nothing for the description to clarify beyond what the empty schema already conveys.

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 ('Call this first to learn') and resource (the offer: plans, CHF prices, limits, trial, feed rule, redistribution terms, links). It clearly separates itself from the pricing sibling by naming quote_price_for.

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?

Gives explicit sequencing ('Call this first') and an explicit alternative with its trigger condition ('To price a specific usage, use quote_price_for'). An agent needs no inference to choose correctly.

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

list_symbolsAInspect

Every FX pair and spot metal a paid plan carries, with its name and class.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It does disclose a meaningful behavioral constraint (results are limited to what a paid plan carries) and that both FX pairs and spot metals are returned, but says nothing about result size, pagination, or whether listing requires auth.

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?

A single, front-loaded sentence with no filler. The phrasing 'a paid plan carries' is slightly indirect but conveys the scope efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema is present, so return-value detail is not required. For a zero-parameter read-only list tool, the description covers resource, scope, and fields adequately; only eligibility/authentication details are left implicit.

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 takes zero parameters, so the baseline of 4 applies. There is no parameter behavior for the description to clarify or obscure.

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 names a specific resource (FX pairs and spot metals) and scopes it to what a paid plan carries, along with the returned attributes (name, class). It is clearly distinguishable from candle/quote/offer siblings, though it never explicitly names them.

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?

Usage is only implied: the agent must infer this is the discovery step for finding tradable symbols. The 'paid plan' mention hints at an eligibility prerequisite, but there is no explicit when-to-use or when-not-to-use guidance relative to get_offer or quote_price_for.

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

quote_price_forAInspect

Price a month of a usage you already know: simultaneous connections at peak, slices of 1000 bars, and symbols followed live continuously. Answers the smallest plan covering it and the CHF total before VAT. For the plans themselves, use get_offer.

NameRequiredDescriptionDefault
slices_per_monthYes
continuous_symbolsNo
simultaneous_connectionsYes

Output Schema

NameRequiredDescription

No output parameters

TDQS

A4.2/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full behavioral burden. It discloses meaningful outcome behavior (returns the smallest covering plan and the CHF total before VAT), but says nothing about permissions, rate limits, or whether the quote is authoritative/binding. Partial coverage only.

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 tight sentences, front-loaded with the verb and the priced inputs, then the output, then the sibling routing. No filler and nothing buried.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return-value enumeration isn't required, and the description still adds the two key result facts (smallest covering plan, CHF before VAT). With no annotations it could say more about side effects or freshness, but for a pure calculation tool it is nearly complete.

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 0%, so the description must compensate, and it does: it maps all three parameters to domain meaning ('simultaneous connections at peak', 'slices of 1000 bars', 'symbols followed live continuously'), clarifying units and semantics the bare integer schema leaves ambiguous.

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 ('Price a month of a usage') and enumerates exactly what is being priced, distinguishing it from the sibling get_offer by naming that alternative explicitly. An agent can tell this pricing tool apart from the catalog tool without opening any schema.

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 frames the precondition ('a usage you already know') and routes the agent to get_offer 'for the plans themselves', which is a clear alternative with a selecting condition. It stops short of an explicit when-not/exclusion statement, but the context is unambiguous.

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. 4 tool updates
    • First observedget_candles
    • First observedget_offer
    • First observedlist_symbols
    • First observedquote_price_for

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Unified real-time & historical market data API for Forex, stocks (US/HK/A-share), crypto, indices & precious metals. Tick, order book depth & K-line via REST + WebSocket. AI-native: MCP server, Skill & CLI.
    900
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    An MCP server that brings public gold (XAUUSD) market data into Claude, ChatGPT, and other MCP clients. Free tier includes 13 tools for price, OHLCV, macro context, correlations, and more.
    4
    13
    33 PyPI
    8
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Access verified historical market data with quality flags, funding rates, and more, supporting micropayments for AI agents and trading bots.
    2 npm
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Provides real-time and historical crypto market data via WebSocket and REST for MCP clients, supporting multiple exchanges, 73 technical indicators, and advanced chart analysis tools.
    19
    37 PyPI
    1
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.