A context layer for Canadian public data

Explore
open data.

Connect your AI assistant to 24,000+ public datasets. Find and query datasets, build charts, visuals, reports and stories—all traceable to the official source.

LIVE WORKFLOW
24K+indexed datasets
Natural Languagediscovery and analysis
Official Sourcesresults you can trace
No API keysready to run

The problem

Less hunting through portals.
More answers from data.

A vast amount of public data is available, but getting from a question to an answer often means searching unfamiliar catalogues, decoding spreadsheets and figuring out which resource is current.

opendata.fyi gives your AI assistant the tools to handle that work. Ask in plain English; it finds relevant datasets, inspects their structure, queries useful rows and shows where the information came from.

How it works

A traceable path.

01

Discover

It searches 24,000+ catalogue entries by meaning and keyword, then ranks the strongest sources.

02

Inspect

Before touching the data, it checks fields, sheets, formats and date coverage to choose the right resource.

03

Query

It filters at the source when possible and streams CSV, Excel, JSON, ZIP, Parquet or PDF only when needed.

04

Cite

Direct dataset links keep every result traceable and make the original source easy to verify.

What could you ask?

Follow your curiosity.

A few sample questions to get started.

Sample question01 / 06

How have rental prices changed across major cities?

Under the hood

Open-source
MCP server.

The server builds a local semantic index by encoding dataset metadata into 384-dimensional vectors with bge-small-en-v1.5 and storing them in a DuckDB database. For every query, it runs a hybrid search: local semantic search in DuckDB alongside CKAN’s live package_search API. Results are merged using Reciprocal Rank Fusion (RRF) to rank the most relevant datasets.

For retrieval, the server routes queries through the most efficient read-only execution path. Datastore-backed tables are filtered server-side through CKAN, while remote files are queried with DuckDB or handled with format-specific readers. Only targeted results are returned to your MCP client for downstream analysis, visualization and synthesis.

Open source and ready to run

Connect opendata.fyi
to your AI assistant.

Clone the repository, install the Python dependencies, download the latest catalogue index, and add the MCP server to your client.

View setup instructions
01 / INSTALLTERMINAL
$ git clone https://github.com/opendatafyi/openmcp.git
$ cd openmcp
$ python3 -m venv venv
$ venv/bin/pip install -r requirements.txt
02

Download catalog.duckdb from the latest release and place it in the project root.

03

Connect the server in your MCP client configuration. Full examples are in the repository.

Transparent by design

Know what runs locally
and what gets sent.

Search embeddings and the catalogue run locally. Requests to retrieve public data go to the relevant source host. Lightweight, asynchronous telemetry helps maintainers understand usage and errors, and can be disabled.

Telemetry does not collect names, usernames, authentication keys, local file contents or system paths.

FAQ

Questions,
answered.

A project that helps AI assistants discover and query public datasets published through open.canada.ca (with more sources coming soon). It is powered by the open-source openmcp server.

opendata.fyi

Explore

24,000+ public datasets with your favorite AI assistant.(More sources coming soon.)

Get openmcp on GitHub