@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 tables
  • get_metadata(stats_data_id, lang?) — dimensions + code lists for a table
  • get_data(stats_data_id, limit?, start_position?, lang?, filters?) — observations
  • list_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 (an appId issued 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.

Regenerated from source · build September 10, 2026