Skip to main content
Glama

Bank of Canada Valet Series Lookup

bankofcanada.data.series
Read-onlyIdempotent

Retrieve observations for any Bank of Canada Valet series by series code(s). Supports one or multiple comma-separated codes (e.g. "FXCADUSD,FXCADEUR" or "V39079"). Browse all available series at https://www.bankofcanada.ca/valet/lists/series/json — over 8,000 series covering FX rates, interest rates, inflation, commodity prices, credit aggregates, and more. Key codes: FXCADUSD (CAD/USD), V39079 (overnight target rate), V80691311 (prime rate), STATIC_TOTALCPICHANGE (total CPI % YoY), CPIW, CPI_MEDIAN, A.BCPI (annual commodity price index). Returns latest values, full series metadata, and history for the requested date range. Source: Bank of Canada, www.bankofcanada.ca — open data, attribution required.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
recentNoNumber of most-recent observations to return (default 10). Ignored when start_date or end_date is provided.
end_dateNoEnd date for historical range in YYYY-MM-DD format (e.g. "2026-06-22").
start_dateNoStart date for historical range in YYYY-MM-DD format (e.g. "2020-01-01").
series_codesYesOne or more Bank of Canada Valet series codes, comma-separated (e.g. "FXCADUSD", "V39079,V80691311", "STATIC_TOTALCPICHANGE"). Browse available series at https://www.bankofcanada.ca/valet/lists/series/json. Key codes: FXCADUSD (CAD/USD rate), V39079 (overnight target rate), V80691311 (prime rate), STATIC_TOTALCPICHANGE (total CPI % change YoY), CPIW (CPIW % change YoY), CPI_MEDIAN (CPI-median), A.BCPI (annual commodity price index).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
errorNoPresent only when the call failed. Includes error code, message, request_id, and any provider-specific extras.
resultNoTool response payload. Shape varies per tool — consult the tool description and inputSchema. May be an object, array, string, or number depending on the upstream provider response.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.9/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 valuable context beyond annotations by stating the tool returns latest values, full series metadata, and history for the requested date range, plus attribution requirements. This enriches behavioral understanding 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 front-loaded with the core purpose and includes the essential usage details, key codes, return behavior, and source. It is somewhat redundant with the schema's series_codes description (both repeat the browse URL and key codes), but it remains reasonably concise and well-structured.

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 and annotations covering safety, the description is complete for an agent to correctly select and invoke the tool. It covers what the tool does, how to specify series, what is returned, and attribution requirements. No critical operational details appear 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 baseline is 3. The description adds significant value for series_codes by giving concrete examples, key codes, and a browse URL, which are not fully evident from the schema alone. It also clarifies that multiple comma-separated codes are supported. This goes beyond what the schema provides.

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 retrieves observations for Bank of Canada Valet series by series code(s), which is a specific verb+resource. It does not explicitly differentiate from sibling tools like bankofcanada.fx.rates or bankofcanada.rates.inflation, which may also serve similar data needs, so it misses the full mark for sibling distinction.

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 provides clear usage context: supply series codes, browse the catalog, and use key codes. However, it gives no guidance on when to prefer this tool over the specialized sibling tools (bankofcanada.fx.rates, bankofcanada.rates.inflation, bankofcanada.rates.policy) or when not to use it. The usage guidelines are implied rather than explicitly contrasted with alternatives.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.