fetch_dataset

Pack: bis · Endpoint: https://gateway.pipeworx.io/bis/mcp

Fetch tidy rows from a BIS dataflow. flow_ref is “BIS,,” and the VERSION IS NOT ALWAYS 1.0 — “BIS,WS_CBPOL,1.0” (central bank policy rates), “BIS,WS_XRU,1.0” (US-dollar exchange rates), but “BIS,WS_TC,2.0” (total credit). BIS re-versions flows in place, so a guessed version returns no data rather than an error; take the exact ref from list_curated_flows or search_dataflows instead of assuming one. The key string is a dot-separated dimension filter (e.g., “D.US” — frequency.country). ALWAYS pass start_period / end_period (“2020”, “2020-Q1”, “2020-01”): the big banking and debt flows are multi-megabyte and an unbounded request can time out.

Parameters

NameTypeRequiredDescription
flow_refstringyesSDMX dataflow reference
keystringnoDot-separated dimension key (empty for all)
start_periodstringnoInclusive start
end_periodstringnoInclusive end
limitnumbernoCap rows (default 5000)

Example call

Arguments

{
  "flow_ref": "BIS,WS_CBPOL,1.0",
  "key": "D.US",
  "start_period": "2024",
  "end_period": "2024"
}

curl

curl -X POST https://gateway.pipeworx.io/bis/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"fetch_dataset","arguments":{"flow_ref":"BIS,WS_CBPOL,1.0","key":"D.US","start_period":"2024","end_period":"2024"}}}'

TypeScript (@pipeworx/sdk)

import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();

const result = await pipeworx.call('fetch_dataset', {
  "flow_ref": "BIS,WS_CBPOL,1.0",
  "key": "D.US",
  "start_period": "2024",
  "end_period": "2024"
});

More examples

{
  "flow_ref": "BIS,WS_XRU,1.0",
  "start_period": "2024",
  "end_period": "2024"
}
{
  "flow_ref": "BIS,WS_TC,2.0",
  "start_period": "2024",
  "end_period": "2024"
}

Response shape

Always returns: flow_ref, source_url, columns, truncated, count, rows

FieldTypeDescription
flow_refstringSDMX dataflow reference used
source_urlstringBIS web URL for this dataflow
columnsarrayColumn headers from CSV
truncatedbooleanWhether result was truncated by limit
countnumberNumber of data rows returned
rowsarrayTidy data rows as key-value objects
Full JSON Schema
{
  "type": "object",
  "properties": {
    "flow_ref": {
      "type": "string",
      "description": "SDMX dataflow reference used"
    },
    "source_url": {
      "type": "string",
      "description": "BIS web URL for this dataflow"
    },
    "columns": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Column headers from CSV"
    },
    "truncated": {
      "type": "boolean",
      "description": "Whether result was truncated by limit"
    },
    "count": {
      "type": "number",
      "description": "Number of data rows returned"
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": {
          "type": "string"
        },
        "description": "Map of column name to value"
      },
      "description": "Tidy data rows as key-value objects"
    }
  },
  "required": [
    "flow_ref",
    "source_url",
    "columns",
    "truncated",
    "count",
    "rows"
  ]
}

Connect

Add this to your MCP client config, or use one-click install buttons:

{
  "mcpServers": {
    "bis": {
      "url": "https://gateway.pipeworx.io/bis/mcp"
    }
  }
}

See Getting Started for client-specific install steps.

Regenerated from source · build August 21, 2026