e-Stat Japan
liveGovernmentAsiaJapanese government statistics — ~5000 tables across population, economy, labor, trade, prices, agriculture. Free with app ID.
Platform key handled by Pipeworx. Or BYO via ?_apiKey=<appId>.
{
"mcpServers": {
"pipeworx-estat-japan": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://gateway.pipeworx.io/estat-japan/mcp?_apiKey=your_app_id"
]
}
}
}Tools
search_statsrequired: querySearch e-Stat statistical tables. Returns IDs and names for tables matching the query. Use the IDs with get_data / get_metadata.
queryreqstring—limitoptnumber—start_positionoptnumber—langoptstringJ | ETry it
get_metadatarequired: stats_data_idFetch the dimension definitions and code lists for a specific e-Stat statistics table (statsDataId). Returns category codes needed to construct filters for get_data. Requires _apiKey.
stats_data_idreqstring—langoptstring—Try it
get_datarequired: stats_data_idFetch observations from a stats table. Optionally filter by dimension codes.
stats_data_idreqstring—limitoptnumber—start_positionoptnumber—langoptstring—filtersoptobject—Try it
list_data_catalogBrowse the e-Stat high-level data catalog (dataset/table groupings) with an optional free-text filter. Returns catalog entries with dataset IDs, names, and organization metadata. This endpoint is slow
queryoptstring—limitoptnumber—start_positionoptnumber—langoptstring—Try it
Test with curl
The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.
curl -X POST https://gateway.pipeworx.io/estat-japan/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'curl -X POST https://gateway.pipeworx.io/estat-japan/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"search_stats","arguments":{"query": "hello"}}}'Use with the SDK
Install @pipeworx/sdk to call tools from any TypeScript/Node project.
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("search_stats", {"query":"example"});// Or ask in plain English:
const answer = await px.ask("japanese government statistics — ~5000 tables across population, economy, labor, trade, prices, agriculture");