Back to Browse

Bank Of Canada MCP Server

by Arose26
Developer ToolsModerate5.8MCP RegistryLocal
Free

Server data from the Official MCP Registry

Bank of Canada economic data: exchange rates, policy rate, CPI, bond yields. No API key.

About

Bank of Canada economic data: exchange rates, policy rate, CPI, bond yields. No API key.

Security Report

5.8
Moderate5.8Moderate Risk

This is a well-designed, security-conscious MCP server for accessing Bank of Canada economic data. Authentication is not required (appropriate for a public API), code is clean with proper input validation and error handling, and permissions are minimal and well-scoped to HTTP requests only. The architecture cleanly separates pure API logic (unit-tested) from MCP wiring, and all user inputs are validated with Zod schemas. Supply chain analysis found 2 known vulnerabilities in dependencies (2 critical, 0 high severity). Package verification found 1 issue.

6 files analyzed · 5 issues found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

HTTP Network Access

Connects to external APIs or services over the internet.

How to Install

Add this to your MCP configuration file:

{
  "mcpServers": {
    "io-github-arose26-bank-of-canada-mcp": {
      "args": [
        "-y",
        "bank-of-canada-mcp"
      ],
      "command": "npx"
    }
  }
}

Documentation

View on GitHub

From the project's GitHub README.

bank-of-canada-mcp

An MCP server that gives Claude and other LLMs live access to Canadian economic data via the Bank of Canada's free Valet API — ~16,000 time series covering exchange rates, the policy interest rate, CPI, bond yields, commodity prices, and more.

FRED, the World Bank, and the IMF all have MCP servers. Canada didn't — now it does.

No API key required.

Quick start

Claude Code

claude mcp add bank-of-canada -- npx -y bank-of-canada-mcp

Claude Desktop — add to claude_desktop_config.json:

{
  "mcpServers": {
    "bank-of-canada": {
      "command": "npx",
      "args": ["-y", "bank-of-canada-mcp"]
    }
  }
}

The same npx invocation works in Cursor, Windsurf, and any other MCP client.

Tools

ToolWhat it does
search_seriesKeyword search across the full series catalogue — find the series name for anything ("overnight rate target", "CPI", "5-year bond")
get_observationsTime-series data for up to 5 series, by date range or N most recent
latest_fx_ratesToday's official daily exchange rates vs CAD
convert_currencyConvert between any two supported currencies using today's rates

Example prompts

  • "What's the Bank of Canada's current policy rate, and how has it moved this year?"
  • "Plot USD/CAD for the last 90 days."
  • "Convert 2,500 EUR to CAD at today's official rate."
  • "How does core CPI compare to headline CPI over the past two years?"

Development

npm install
npm test        # offline unit tests (vitest)
npm run build   # tsc → dist/

Architecture: src/valet.ts is a plain API client with pure, unit-tested logic (search, conversion math); src/index.ts is the MCP wiring. Errors from the Valet API (e.g. an unknown series name) are returned as MCP tool errors with the API's own message, so the model can self-correct by re-searching.

Notes

  • Rates are the Bank of Canada's indicative daily averages, published once per business day — not transactional quotes.
  • Data is © Bank of Canada, used under their terms. This project is not affiliated with or endorsed by the Bank of Canada.

Roadmap

  • Statistics Canada Web Data Service tools
  • Group browsing (lists/groups)
  • Streamable HTTP transport for remote deployment

License

MIT

Reviews

No reviews yet

Be the first to review this server!