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
- 1
- Server Listing
- daedal-map
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
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.
Tool Definition Quality
Average 3.6/5 across 3 of 3 tools scored.
Each tool has a clearly distinct purpose: get_catalog lists available data packs, get_pack provides metadata for a specific pack, and get_fx_rates queries actual FX rate data. There is no overlap in functionality.
All tools follow a consistent verb_noun pattern with 'get_' prefix, making it predictable and easy to understand the action each tool performs.
Three tools is ideal for this server's scope: discovery (catalog and pack info) and data querying. Each tool earns its place without being excessive or insufficient.
The tool set covers the full lifecycle for a historical FX rates server: discovery of available packs, metadata exploration, and data retrieval. No obvious gaps exist for its read-only purpose.
Available Tools
3 toolsget_catalogGet CatalogBRead-onlyInspect
Free discovery. Returns the list of live agent-ready data packs available on DaedalMap.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds some behavioral context beyond the annotations: it specifies that the list includes 'live agent-ready data packs' and implies a discovery function. The annotations already declare readOnlyHint=true, so the agent knows it's a safe read operation. However, the description doesn't disclose details like rate limits, authentication needs, or pagination behavior, leaving gaps in behavioral understanding.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and front-loaded with essential information in just two sentences. Every word earns its place: 'Free discovery' sets the context, and 'Returns the list...' clearly states the action and resource. There is no wasted text or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (0 parameters, read-only, no output schema), the description is adequate but not fully complete. It explains what the tool does but lacks details on output format (e.g., structure of the returned list), error handling, or how it integrates with siblings. For a basic listing tool, this is minimally viable but leaves room for improvement in contextual guidance.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Since there are 0 parameters and schema description coverage is 100%, the baseline is high. The description doesn't need to explain parameters, but it does clarify that this is a 'Free discovery' tool with no inputs required, which aligns with the empty schema. No additional parameter semantics are needed or provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Returns') and resource ('list of live agent-ready data packs available on DaedalMap'), making it easy to understand what it does. However, it doesn't explicitly differentiate itself from sibling tools like 'get_pack' or 'query_dataset', which might have overlapping functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides minimal guidance on when to use this tool. It mentions 'Free discovery' which implies a general-purpose listing function, but offers no explicit advice on when to choose this over alternatives like 'get_pack' (which might retrieve specific packs) or 'query_dataset' (which might allow filtering). No exclusions or prerequisites are stated.
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 RatesBRead-onlyInspect
Free tool. Queries the currency pack using filters.region_ids plus filters.time.granularity to return daily, weekly, or monthly FX data.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Optional sort instructions for row-returning queries. | |
| limit | No | Maximum number of rows to return for the requested granularity and time span. | |
| output | No | Optional output controls such as response format hints. | |
| filters | Yes | Structured filters including region_ids with loc_id country codes, time range, and granularity. | |
| metrics | No | Optional metric ids. Defaults to 'local_per_usd' for FX rate queries. | |
| request_id | No | Optional caller-supplied request id for tracing and idempotency. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint=true, indicating a safe read operation. The description adds value by stating 'Free tool,' which implies no authentication or payment requirements, and specifies the data type ('FX data') and granularity options ('daily, weekly, or monthly'). However, it doesn't disclose rate limits, error handling, or data freshness, which are important behavioral traits beyond the annotations. No contradiction with annotations exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences: the first states the tool's free nature and core functionality, and the second specifies key filters and output. It's front-loaded with essential information and avoids redundancy. However, the second sentence could be slightly more structured for clarity, and there's minor room for improvement in flow.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (6 parameters, nested objects, no output schema) and annotations covering safety, the description is adequate but has gaps. It explains the purpose and key filters but doesn't cover output format, error cases, or how results are structured. With no output schema, more detail on return values would be beneficial, making it minimally complete but not fully comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 6 parameters. The description adds minimal semantics by mentioning 'filters.region_ids' and 'filters.time.granularity,' which aligns with the schema's filter description. It doesn't provide additional details like format examples or default behaviors beyond the schema, so it meets the baseline for high coverage without significant enhancement.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Queries the currency pack using filters.region_ids plus filters.time.granularity to return daily, weekly, or monthly FX data.' It specifies the verb ('queries'), resource ('currency pack'), and output type ('FX data'), distinguishing it from siblings like get_earthquake_events or get_volcanic_activity. However, it doesn't explicitly differentiate from get_catalog or get_pack, which might also query data packs, so it's not fully sibling-distinctive.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by mentioning 'filters.region_ids' and 'filters.time.granularity', suggesting it's for filtered FX rate queries. It starts with 'Free tool,' which hints at no cost constraints. However, it lacks explicit guidance on when to use this tool versus alternatives like query_dataset or get_pack, and doesn't specify prerequisites or exclusions, leaving usage somewhat open to interpretation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_packGet PackARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| pack_id | Yes | Pack identifier such as 'currency', 'earthquakes', 'floods', 'hurricanes', 'tornadoes', 'tsunamis', 'un_sdg', 'volcanoes', 'world_factbook', or 'worldpop'. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, which is consistent. The description adds context about 'Free discovery' and the specific return details (metadata, coverage, freshness), which goes beyond the annotation but does not discuss other behaviors like rate limits or authentication. Given the annotation already covers safety, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no wasted words. Each sentence serves a purpose: the first states what it returns, the second gives usage advice. It is front-loaded with 'Free discovery' and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has only one parameter, no output schema, and annotations present, the description adequately explains the return content and use case. It could mention the output format or include a note about error handling, but overall it is sufficiently complete for a simple lookup tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, listing possible values for pack_id. The tool description does not add further meaning beyond what the schema provides. Baseline 3 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it 'Returns detailed metadata, coverage, freshness, preferred canonical tool guidance, and first-query examples for one pack,' which is a specific verb+resource. It distinguishes from siblings by advising to call this before querying a new pack, unlike get_catalog (for browsing packs) or get_fx_rates (a different domain).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Call this before querying a new pack so you can see time shape, coverage limits, and the paste-ready first query,' providing clear context for when to use it. However, it does not mention when not to use it or explicitly compare to alternatives, though the sibling tools are different enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Your Connectors
Sign in to create a connector for this server.