Skip to main content
Glama

DaedalMap Historical FX Rates

Server Details

Historical FX rates for 100+ currencies vs USD from IMF and World Bank data, 1940-present.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
xyver/daedal-map
GitHub Stars
2
Server Listing
daedal-map

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.2/5 across 4 of 4 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool has a distinct role: get_catalog lists available packs, get_pack provides details on one pack, get_fx_rates queries actual data, and get_tool_help explains tool usage. There is no meaningful overlap; even get_catalog and get_pack are clearly list-vs-detail.

Naming Consistency5/5

All tool names follow the exact same verb_noun pattern with 'get_' prefix and snake_case (get_catalog, get_fx_rates, get_pack, get_tool_help). This is highly predictable and consistent.

Tool Count5/5

Four tools form a compact yet complete set for a focused FX rates server: discovery, metadata, data retrieval, and help. Nothing feels redundant or missing, and the size is appropriate for the purpose.

Completeness5/5

The server covers the full workflow from discovering available data (get_catalog), understanding a pack (get_pack), querying rates (get_fx_rates), and getting tool guidance (get_tool_help). There are no obvious gaps for a historical data retrieval service.

Available Tools

4 tools
get_catalogGet CatalogA
Read-only
Inspect

Free discovery. Returns the list of live agent-ready data packs available on DaedalMap.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true, and the description is consistent with this by stating it 'Returns the list.' It adds minimal extra context beyond 'live agent-ready' and 'Free discovery,' but does not disclose potential rate limits, pagination, or data staleness. With annotations covering the safety profile, a score of 3 is appropriate.

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 extremely concise with two short sentences, immediately front-loading 'Free discovery' and then stating the main purpose. Every word earns its place; there is no waste or 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 the tool's simplicity (no parameters, read-only annotation, no output schema), the description is largely sufficient. It conveys what the tool returns ('list of live agent-ready data packs') and its free nature. However, it could be more complete by specifying whether the list includes metadata or requires authentication, but these are minor gaps for such a simple 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 tool has zero parameters, and the schema is empty. As per the guidelines, the baseline for 0 parameters is 4. The description does not need to explain parameters since there are none, and it does not introduce any confusion about parameter usage.

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 verb and resource: 'Returns the list of live agent-ready data packs available on DaedalMap.' This distinguishes it from sibling tools like get_fx_rates and get_pack, which focus on specific data or individual packs.

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 phrase 'Free discovery' implies usage for browsing available data packs, but there is no explicit guidance on when to use this tool versus alternatives. The description does not mention exclusions or recommend pairing with get_pack or get_fx_rates, leaving the usage context somewhat implicit.

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

get_fx_ratesGet FX RatesA
Read-only
Inspect

Free tool. Queries the currency pack using filters.region_ids plus filters.time.granularity to return daily, weekly, or monthly FX data.

ParametersJSON Schema
NameRequiredDescriptionDefault
sortNoOptional sort instructions for row-returning queries.
limitNoMaximum number of rows to return for the requested granularity and time span.
outputNoOptional output controls such as response format hints.
filtersYesStructured filters including region_ids with loc_id country codes, time range, and granularity.
metricsNoOptional metric ids. Defaults to 'local_per_usd' for FX rate queries.
request_idNoOptional caller-supplied request id for tracing and idempotency.
Behavior3/5

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

The readOnlyHint annotation already signals that the tool is read-only. The description adds that it is a 'Free tool' and specifies the query mechanism, but it does not disclose return format, pagination, or rate limits, which would be useful beyond the 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 a single sentence, front-loaded with the 'Free tool' tag, and directly states the action, query inputs, and output granularity without redundant information.

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

Completeness3/5

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

With no output schema and a nested filters object, the description conveys the essential query logic but lacks information about the response structure or edge cases. The readOnlyHint annotation mitigates safety concerns, but the description could be more complete for a tool with six parameters.

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 documents all parameters with descriptions (100% coverage). The description emphasizes filters.region_ids and filters.time.granularity as the core drivers, reinforcing their importance, but adds minimal meaning beyond the schema's parameter 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 the tool queries the currency pack using specific filters (region_ids, time.granularity) and returns daily, weekly, or monthly FX data. This specific verb+resource+output distinguishes it from siblings like get_catalog and get_pack.

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 implies the tool is for FX rate queries by detailing the exact filters and granularity options. It does not explicitly exclude use cases or reference sibling alternatives, but the context is sufficiently clear that an agent can infer when to use it.

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

get_packGet PackA
Read-only
Inspect

Free discovery. Returns detailed metadata, coverage, freshness, preferred canonical tool guidance, and first-query examples for one pack. Call this before querying a new pack so you can see time shape, coverage limits, and the paste-ready first query.

ParametersJSON Schema
NameRequiredDescriptionDefault
pack_idYesPack identifier such as 'currency', 'earthquakes', 'floods', 'hurricanes', 'tornadoes', 'tsunamis', 'un_sdg', 'volcanoes', 'world_factbook', or 'worldpop'.
Behavior4/5

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

The annotations only declare readOnlyHint, so the description carries minimal burden. It adds useful behavioral context by specifying what the tool returns (time shape, coverage limits, paste-ready first query) and notes that it is 'free discovery'. 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, front-loaded with the core function and followed by actionable guidance. Every word earns its place, with no redundancy or filler.

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

Completeness4/5

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

With only one parameter, a readOnly annotation, and no output schema, the description sufficiently covers what the tool does, when to use it, and what it returns. It enumerates the return contents, which compensates for the lack of an output schema, but a few more details about response format could push it to a 5.

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 a detailed description of pack_id and examples of valid values. The description only adds that it operates on 'one pack', which is a minor reinforcement, so the baseline of 3 applies.

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 clearly states the tool returns detailed metadata, coverage, freshness, canonical tool guidance, and first-query examples for one pack. The verb 'Returns' is specific and the scope is bounded to one pack, but it does not explicitly distinguish itself from sibling tools like 'get_catalog' or 'get_fx_rates'.

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 explicitly instructs to call this before querying a new pack, providing a clear when-to-use scenario. However, it does not mention any alternatives or when-not-to-use conditions, which would make it a 5.

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

get_tool_helpGet Tool HelpA
Read-only
Inspect

Free blind-caller guidance for one tool visible on this MCP facade. Returns when to use it, what it refuses, a working example, effective access limits, important outputs, provenance fields, recommended next calls, and the shared natural-language-to-strict-JSON interaction contract. Use tools/list to discover names, then call this before an unfamiliar tool.

ParametersJSON Schema
NameRequiredDescriptionDefault
tool_nameYesExact tool name from tools/list.
Behavior4/5

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

The readOnlyHint annotation already establishes safety, but the description adds meaningful behavioral context: it is a free/guided help call, scoped to tools 'visible on this MCP facade,' and it returns specific categories including 'what it refuses' and the interaction contract. This goes well beyond the annotation, though it stops short of detailing error-handling or rate-limit behavior.

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 deliver high information density: the first defines scope and enumerates outputs, the second gives the actionable call pattern. No filler or redundancy; every phrase 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?

Despite having no output schema, the description compensates richly by listing the major output dimensions (when-to-use, refusals, example, limits, outputs, provenance, next calls, interaction contract). For a help/metadata tool, this is comprehensive and leaves little ambiguity about what the caller will receive.

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 already documents tool_name as 'Exact tool name from tools/list' (100% coverage), so the baseline is 3. The description adds value by reinforcing that the tool targets one tool on the facade and by instructing the agent to first use tools/list, which effectively explains how to populate the parameter correctly.

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 tool as providing 'free blind-caller guidance for one tool visible on this MCP facade' and enumerates exactly what it returns (usage, refusals, example, access limits, outputs, provenance, next calls, interaction contract). This distinguishes it from the sibling data-retrieval tools (get_catalog, get_fx_rates, get_pack), which are content-focused rather than meta-help 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?

Gives explicit workflow guidance: 'Use tools/list to discover names, then call this before an unfamiliar tool.' This tells the agent when to invoke it and what precedes it, making the intended context of use unambiguous.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Currency conversion and exchange rates for AI assistants. 170+ currencies, historical data back to 1999.
    4
    74
    MIT
  • F
    license
    -
    quality
    D
    maintenance
    Provides real-time and historical foreign exchange rates for 31+ currencies, enabling currency conversion, historical rate lookups, and time series analysis using data from the Frankfurter API.
  • A
    license
    -
    quality
    B
    maintenance
    Provides live and historical foreign-exchange rates from the European Central Bank via Frankfurter API, enabling currency conversion, rate lookup, and trend analysis without API keys.
    MIT

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.