Statistics Canada MCP Server

by @Aryan-Jhaveri · io.github.Aryan-Jhaveri/mcp-statcan

Access Statistics Canada data via the Web Data Services API

OnlineRemote + local
Category
Analytics and data
Connection
Remote (HTTP)
Tools
17 reported
Status
Online

Connect it to your AI

Claude Code

claude mcp add --transport http mcp-statcan https://mcp-statcan.com/mcp

Claude, ChatGPT, Cursor and other apps

Add it as a custom connector with this URL (Streamable HTTP):

https://mcp-statcan.com/mcp

Or run it locally (pypi)

claude mcp add mcp-statcan -- uvx statcan-mcp-server==0.17.0

Cursor, VS Code and other apps (mcp.json)

{
  "mcpServers": {
    "mcp-statcan": {
      "url": "https://mcp-statcan.com/mcp"
    }
  }
}

Tools it offers

17 tools, as the server itself reported during our check on Oct 31, 2026.

  • get_code_setsDecode StatCan WDS numeric codes (e.g. frequencyCode 6 = Monthly, scalarFactorCode 0 = units). Corresponds to: GET /getCodeSets Without arguments, returns a summary: small code sets (scalar, frequency, symbol, status, ..
  • get_all_cubes_listProvides a complete inventory of data tables available via the API, including dimension-level details. Disables SSL Verification. Corresponds to: GET /getAllCubesList Results are paginated. Default returns first 100 cube
  • get_all_cubes_list_liteProvides a complete inventory of data tables available via the API, excluding dimension or footnote information (lighter version). Disables SSL Verification. Corresponds to: GET /getAllCubesListLite Results are paginated
  • search_cubes_by_titleSearches for data cubes/tables where the English or French title contains the provided search term (case-insensitive). Multiple keywords use AND logic (e.g., "tobacco smoking age" finds cubes containing ALL three words).
  • get_cube_metadataRetrieves detailed metadata for a specific data table/cube using its ProductId. Includes dimension info, titles, date ranges, codes, etc. Disables SSL Verification. Corresponds to: POST /getCubeMetadata Start with summar
  • get_changed_series_data_from_cube_pid_coordGet the data points of a series (by ProductId + Coordinate) that changed TODAY only. StatCan publishes at 08:30 ET; before then, or on a day the series did not change, this returns changed=false. For past releases use ge
  • get_series_infoResolve one or more {productId, coordinate} pairs to series metadata (vectorId, titles, frequency, UOM, etc.) in a single API call. Use this to find vectorIds before fetching data with get_sdmx_data or get_sdmx_vector_da
  • get_changed_cube_listGet the list of data tables/cubes that were updated on a specific date (YYYY-MM-DD). Disables SSL Verification. Corresponds to: GET /getChangedCubeList/{date} Returns: List[Dict[str, Any]]: A list of dictionaries describ
  • get_series_info_from_vectorRequest series metadata (productId, coordinate, titles, frequency, etc.) by Vector ID. Use only when you start from a vectorId: get_series_info already returns this metadata for series it resolved. Disables SSL Verificat
  • get_bulk_vector_data_by_rangeFetches bulk data for multiple vectors filtered by *release date* range (YYYY-MM-DDTHH:MM), NOT by reference period. Use this when you want data released within a specific date/time window (e.g., "all updates released ye
  • get_changed_series_data_from_vectorGet the data points of a series (by Vector ID) that changed TODAY only. StatCan publishes at 08:30 ET; before then, or on a day the series did not change, this returns changed=false. For past releases use get_changed_cub
  • get_changed_series_listGet the list of series (vectorId, productId, coordinate, releaseTime) updated today. Statistics Canada publishes this list after 08:30 ET; the endpoint does not accept a date. For a historical release date, use get_chang
  • get_sdmx_structureFetch the Data Structure Definition (DSD) for a StatCan table via SDMX REST. Returns dimension codelists with code IDs, names, and parent hierarchy. Use this BEFORE get_sdmx_data to understand the key syntax for that tab
  • get_sdmx_dataFetch filtered time-series observations from a StatCan table via SDMX REST. Filtering is done server-side — only the requested slice is returned. Call get_sdmx_structure first to see dimension positions and valid codes.
  • query_sdmxFetch SDMX observations and run ONE read-only SQL query over them server-side, returning only the query result. Nothing is stored — the data is loaded into a temporary in-memory table named `data` and discarded after the
  • get_sdmx_vector_dataFetch time-series observations for a single StatCan vector via SDMX REST. Simpler alternative to get_sdmx_data when you already know the vectorId. Use get_series_info (productId + coordinate) to find vectorIds. Time filt
  • get_sdmx_key_for_dimensionReturn all leaf member IDs for a single dimension as a ready-to-use OR key string. Use this before get_sdmx_data when a dimension has many codes (e.g. 162 NOC minor groups, hundreds of CMA geographies). Avoids the need t

Questions

What is the Statistics Canada MCP server?

Access Statistics Canada data via the Web Data Services API. It is made by @Aryan-Jhaveri and listed in the official MCP Registry as io.github.Aryan-Jhaveri/mcp-statcan. MCP (Model Context Protocol) is the open standard that lets AI apps like Claude, ChatGPT and Cursor use outside tools.

How do I add Statistics Canada to Claude?

In the Claude app or claude.ai, open Settings, then Connectors, choose "Add custom connector" and paste https://mcp-statcan.com/mcp. In Claude Code, run: claude mcp add --transport http mcp-statcan https://mcp-statcan.com/mcp

How do I add Statistics Canada to ChatGPT?

ChatGPT can use remote MCP servers as connectors. In ChatGPT settings, under Apps and Connectors, turn on developer mode if asked, create a new connector and paste https://mcp-statcan.com/mcp.

How do I add Statistics Canada to Cursor?

Open Cursor settings, go to MCP, choose "Add new MCP server" (or edit ~/.cursor/mcp.json) and add: { "mcpServers": { "mcp-statcan": { "url": "https://mcp-statcan.com/mcp" } } }

Does Statistics Canada work right now?

Yes. It responded when we last checked on 31 Oct 2026. We check remote MCP servers every day.

What can Statistics Canada do?

It gives your AI 17 tools, including get_code_sets, get_all_cubes_list, get_all_cubes_list_lite, search_cubes_by_title, get_cube_metadata. The full list is on this page.

Is this your server? Get the badge for your README
chen.media/mcp badge

Markdown (GitHub README)

[![Listed on chen.media/mcp](https://chen.media/mcp/badge/github-aryan-jhaveri-mcp-statcan.svg)](https://chen.media/mcp/github-aryan-jhaveri-mcp-statcan)

HTML (switches to dark mode on its own)

<a href="https://chen.media/mcp/github-aryan-jhaveri-mcp-statcan"><picture><source media="(prefers-color-scheme: dark)" srcset="https://chen.media/mcp/badge/github-aryan-jhaveri-mcp-statcan.svg?theme=dark"><img src="https://chen.media/mcp/badge/github-aryan-jhaveri-mcp-statcan.svg" alt="Listed on chen.media/mcp" height="40"></picture></a>

More in Analytics and data

See all