UK ONS

live GovernmentStatistics

UK Office for National Statistics — economy, population, labour market, trade. No auth.

5 tools
0ms auth
free tier 50 calls/day

Tools

list_datasets

Paginated ONS dataset catalog.

Parameters
Name Type Description
limit opt number 1-100
offset opt number Offset
Try it
get_dataset required: dataset_id

Dataset metadata.

Parameters
Name Type Description
dataset_id req string ONS dataset ID
Try it
list_editions required: dataset_id

Editions of a dataset.

Parameters
Name Type Description
dataset_id req string ONS dataset ID
Try it
get_version required: dataset_id, edition, version

Specific edition+version with dimensions and download links.

Parameters
Name Type Description
dataset_id req string ONS dataset ID
edition req string Edition label
version req string Version
Try it
get_observations required: dataset_id, edition, version, dimensions

Observations filtered by dimension values.

Parameters
Name Type Description
dataset_id req string ONS dataset ID
edition req string Edition
version req string Version
dimensions req object Dimension code → value (or "*")
Try it

Test with curl

The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.

List available tools
bash
curl -X POST https://gateway.pipeworx.io/uk-ons/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Call a tool
bash
curl -X POST https://gateway.pipeworx.io/uk-ons/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"list_datasets","arguments":{}}}'

Use with the SDK

Install @pipeworx/sdk to call tools from any TypeScript/Node project.

TypeScript
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("list_datasets", {});
ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("uk office for national statistics — economy, population, labour market, trade");