Gachi Data API — Japan Station & Accessibility Data
UnexploredDeep, obscure Japanese station, accessibility & hazard data for AI agents. English-first.
Install
mcp_config.json
{
"mcpServers": {
"com-gachi-tokusuru-japan-data-api": {
"url": "https://api.gachi-tokusuru.com/mcp",
"type": "streamable-http"
}
}
}Documentation
Gachi Data API — Japan Station & Accessibility Data (API · MCP · Open Datasets)
This is a hosted service. You do NOT self-host it. Get a free API key at https://api.gachi-tokusuru.com and connect to the remote endpoint below. The source in this repo is published for transparency; the data lives in the hosted backend, so a local clone will not return data.
Deep, obscure Japanese data you won't find anywhere else — stations, accessibility, vacancy, hazards. Hand-verified, English-first, built for AI agents. Available as an MCP server, a REST API, and free open datasets. One key works for both the API and MCP.
- 526 Tokyo stations — accessible / multipurpose toilets with floor, gender, equipment flags (wheelchair, ostomate, diaper table) and the nearest station exit (an original first-party value computed by spatial join — not in any raw dataset).
- 612 municipalities nationwide — public toilets with wheelchair / baby-seat / ostomate flags, address and coordinates.
- Free open datasets — Japan Station Master (entity-resolved, 9,145 stations nationwide) & Ridership 2000–2025, sharing one
station_id: https://github.com/eng213035/gachi-open-datasets (Zenodo DOI10.5281/zenodo.21199500).
Station names accept Japanese (新宿) or romaji (Shinjuku, Kita-Senju) for major stations.
Connect
- Endpoint:
https://api.gachi-tokusuru.com/mcp - Transport: Streamable HTTP (remote)
- Auth:
Authorization: Bearer <API_KEY>— free key at https://api.gachi-tokusuru.com
{
"mcpServers": {
"gachi-data": {
"url": "https://api.gachi-tokusuru.com/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}
Tools
| Tool | Argument | Returns |
|---|---|---|
get_toilet_by_station | station (Japanese or romaji) | Accessible toilets in a Tokyo station, with nearest_exit |
get_public_toilet_by_city | city (Japanese) | Public toilets in a municipality (top 50 for large cities) |
get_station_hazard | station_name (Japanese or romaji) | Official MLIT hazard categories at a station (flood / liquefaction / storm-surge), relayed live, cached 14 days — no derived score. Landslide & tsunami are license-restricted (available:false + link to official maps). Not a substitute for official hazard maps. |
REST endpoints
GET /v1/station-toilets/search?station=Shinjuku— accessible toilets in a Tokyo stationGET /v1/toilets/nearby?lat=&lng=&radius=&wheelchair=&ostomate=&diaper=— public toilets near a pointGET /v1/stations/{station_id}/hazard— official MLIT hazard categories at a station, relayed live (flood inundation-depth rank, liquefaction/landform, storm-surge presence). Values are returned verbatim from 国土交通省 不動産情報ライブラリ with attribution, cached 14 days — no derived score, and not a substitute for official hazard maps. Landslide & tsunami source layers are 一部非商用 (license-restricted), so they returnavailable:falsewith a link to the official hazard maps. Also available as the MCP toolget_station_hazard(station_name).station_idcomes from the Japan Station Master (e.g.st_00001); 423 of 425 stations have coordinates (2 remain unlocated →hazard: null).
All endpoints use the same Authorization: Bearer <key> and share one monthly quota. Full spec: /openapi.yaml, docs: /docs.
Example
curl -X POST https://api.gachi-tokusuru.com/mcp \
-H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
"params":{"name":"get_toilet_by_station","arguments":{"station":"Shinjuku"}}}'
Pricing
Free 1k · Pro $19/100k · All Access $49/200k · Business $149/500k. Full details: https://api.gachi-tokusuru.com
Paid plans are self-serve: after Stripe checkout the customer is redirected to /activate?session_id=…, which verifies payment, resolves the plan from the paid amount, and issues the API key on the page (idempotent per session — reload shows the same key). No manual key handling.
Operational notes (internal)
- Subscription cancellation is not yet wired to key revocation (no Stripe webhook in this build). A cancelled subscriber's key keeps working until manually disabled. Reconcile monthly: compare Stripe's active subscriptions against issued
key:*records and disable keys for lapsed subscribers. Acustomer.subscription.deletedwebhook → auto-revoke is the next phase. - Plan detection in
/activateis by paid amount (AMOUNT_TO_PLAN: $19/$49/$149). If a new plan reuses an existing amount, add an explicit mapping.
Licensing (two layers — read carefully)
- Code in this repository: MIT (see LICENSE). Applies to the server code only.
- Data returned by the API is NOT MIT. Each value carries its source in the response
attribution. It is derived from:- Accessible & public toilets — Tokyo Metropolitan Government, Bureau of Social Welfare & BODIK municipal open data (CC BY 4.0): https://portal.data.metro.tokyo.lg.jp/ · https://www.bodik.jp/
- Station names & train service status — ODPT, Public Transportation Open Data Center (CC BY 4.0): https://developer.odpt.org/
- Hazard categories, future population, land price — MLIT 不動産情報ライブラリ (Real Estate Information Library), official values relayed as-is per request (not a government-created dataset): https://www.reinfolib.mlit.go.jp/
- River flood forecasts & landslide alerts — JMA (Japan Meteorological Agency, 気象庁), relayed as published, not warnings issued by this service: https://www.jma.go.jp/bosai/
- Housing vacancy & municipality codes — Statistics Bureau of Japan (住宅・土地統計調査) via e-Stat & MIC (総務省): https://www.stat.go.jp/data/jyutaku/
- Nationwide stations & bus stops — MLIT 国土数値情報 N02/P11; English station names partly via Wikidata (CC0): https://nlftp.mlit.go.jp/ksj/ · https://www.wikidata.org/
- Derived by gachi-tokusuru.com (distinct from the official values above):
nearest_exit,nearest_station_km, and bus-stop counts are computed via spatial join. - Attribution is returned in every API response. Timeliness, accuracy and completeness are not guaranteed.
Sourced from the repository README.
More in AI & Agents
- PonytailMakes your AI agent think like the laziest senior dev in the room. The best code is the code you never wrote.109,599
- AgentsMulti-harness agentic plugin marketplace for Claude Code, Codex, Cursor, OpenCode, GitHub Copilot, and Google Antigravity39,079
- Frontend SlidesCreate beautiful slides on the web using a coding agent's frontend skills28,060
- Agent Skills Search ServerSearch and discover Agent Skills from the skills.sh registry. Powered by HAPI MCP server.24,658
- Agency Agents Zh🎭 267 个即插即用的 AI 专家角色 — 支持 Hermes Agent/Claude Code/Cursor/Copilot 等 18 种工具,覆盖工程/设计/营销/金融等 20 个部门。含 52 个中国市场原创智能体(小红书/抖音/微信/飞书/钉钉等)。搭配编排器 agency-orchestrator,一句话即可让多位专家按 DAG 自动协作。19,868
- Watermarks RemoverStrip multi-vendor AI provenance marks: Unicode text hygiene, statistical rewrite hooks, and C2PA/metadata from PNG/JPEG/SVG/PDF/DOCX/HTML/MD17,822