@pipeworx/estat-japan
Connect: https://gateway.pipeworx.io/estat-japan/mcp · Install: one-click buttons
Tools: 4
e-Stat (Japan) MCP — Japanese government statistics aggregator (~5000 tables across population, economy, labor, trade, prices, agriculture, environment). Free with an app ID.
Tools
search_stats(query, limit?, start_position?, lang?)— find stats tablesget_metadata(stats_data_id, lang?)— dimensions + code lists for a tableget_data(stats_data_id, limit?, start_position?, lang?, filters?)— observationslist_data_catalog(query?, limit?, start_position?, lang?, data_type?, survey_years?, stats_code?, stats_field?)— browse catalog
Auth
- Platform key: gateway env
PLATFORM_ESTAT_KEY(anappIdissued by e-stat.go.jp) - BYO:
?_apiKey=<appId>after registering at https://www.e-stat.go.jp/api/
Data source
https://api.e-stat.go.jp/rest/3.0/app/json/ — appId as query param.
Default language is Japanese (J); pass lang: "E" for English where available.
Timeouts
e-Stat is slow and sets no timeout of its own. Measured 2026-08-27: /getStatsList
takes ~26s uncached, and /getDataCatalog ran past the gateway’s 75s request deadline
at page sizes 1, 5 and 20 alike — page size is not what makes it slow.
Each request therefore carries its own budget — 55s (about 20s under the gateway’s
own 75s deadline), and 35s for list_data_catalog, which is the endpoint that does
not finish at all rather than one that finishes late. Exceeding the budget returns a
soft failure rather than hanging:
{ "found": false, "reason": "upstream_timeout", "endpoint": "...", "timeout_ms": 35000,
"hint": "... use search_stats ..." }
limit defaults to 20 on list_data_catalog (100 on get_data, 20 on search_stats),
so a bare call is already bounded — page size was never what made the catalog slow.
The catalog accepts e-Stat’s own narrowing params (query, data_type, stats_code,
survey_years); during the 2026-08-27 stall none of them shortened it, so treat them
as filters rather than as a fix. search_stats searches the same tables and answered
in seconds throughout.
Tools
- search_stats — Search e-Stat statistical tables. Returns IDs and names for tables matching the query. Use the IDs with get_data / get_metadata.
- get_metadata — Fetch 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.
- get_data — Fetch observations from a stats table. Optionally filter by dimension codes.
- list_data_catalog — Browse 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
Tools
-
get_data— Fetch observations from a stats table. Optionally filter by dimension codes. -
get_metadata— Fetch 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. -
list_data_catalog— Browse 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 -
search_stats— Search e-Stat statistical tables. Returns IDs and names for tables matching the query. Use the IDs with get_data / get_metadata.