list_datasets
Pack: uk-ons · Connect: https://pipeworx.io/mcp (see Connect below for a single-pack URL)
No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/list_datasets for the schema, then POST the same URL with its arguments for the data.
Paginated catalog of ONS datasets. Returns id, title, description, contacts, release frequency, last release, theme.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
limit | number | no | 1-100 (default 20) |
offset | number | no | 0-based offset (default 0) |
Example call
Arguments
{
"limit": 20,
"offset": 0
}
curl
curl -X POST https://gateway.pipeworx.io/uk-ons/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"list_datasets","arguments":{"limit":20,"offset":0}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('list_datasets', {
"limit": 20,
"offset": 0
});
More examples
{
"limit": 50,
"offset": 20
}
Response shape
Always returns: total, returned, datasets
| Field | Type | Description |
|---|---|---|
total | integer | null | Total number of datasets available |
returned | integer | Number of datasets returned in this page |
datasets | array | List of normalized datasets |
Full JSON Schema
{
"type": "object",
"properties": {
"total": {
"type": [
"integer",
"null"
],
"description": "Total number of datasets available"
},
"returned": {
"type": "integer",
"description": "Number of datasets returned in this page"
},
"datasets": {
"type": "array",
"description": "List of normalized datasets",
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"description": "Dataset ID"
},
"title": {
"type": [
"string",
"null"
],
"description": "Dataset title"
},
"description": {
"type": [
"string",
"null"
],
"description": "Dataset description"
},
"theme": {
"type": [
"string",
"null"
],
"description": "Theme category"
},
"state": {
"type": [
"string",
"null"
],
"description": "Dataset state"
},
"type": {
"type": [
"string",
"null"
],
"description": "Dataset type"
},
"national_statistic": {
"type": [
"boolean",
"null"
],
"description": "Whether it is a national statistic"
},
"release_frequency": {
"type": [
"string",
"null"
],
"description": "Release frequency"
},
"next_release": {
"type": [
"string",
"null"
],
"description": "Next release date"
},
"license": {
"type": [
"string",
"null"
],
"description": "License information"
},
"publisher": {
"type": [
"string",
"null"
],
"description": "Publisher name"
},
"contacts": {
"type": "array",
"description": "Contact information",
"items": {
"type": "object",
"properties": {
"name": {
"type": [
"string",
"null"
],
"description": "Contact name"
},
"email": {
"type": [
"string",
"null"
],
"description": "Contact email"
}
}
}
},
"latest_version_id": {
"type": [
"string",
"null"
],
"description": "ID of the latest version"
}
}
}
}
},
"required": [
"total",
"returned",
"datasets"
]
}
Connect
Add this to your MCP client config — every tool in the catalog, including this one — or use one-click install buttons:
{
"mcpServers": {
"pipeworx": {
"url": "https://pipeworx.io/mcp"
}
}
}
Connect to just the uk-ons pack
{
"mcpServers": {
"uk-ons": {
"url": "https://gateway.pipeworx.io/uk-ons/mcp"
}
}
}
See Getting Started for client-specific install steps.