MCP server for Japan geodata: cadastral lot numbers (chiban) and reverse geocoding, for AI agents.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
ζ₯ζ¬θͺη README γ―γγ‘γ
An MCP (Model Context Protocol) server that exposes two Japan-specific geodata APIs as tools for AI agents (Claude Code, Claude Desktop, and other MCP clients):
Japan uses two independent addressing systems: the residential address (δ½ε± 葨瀺) that appears on maps and mail, and the chiban β the cadastral lot number used in property registries, land transactions, and legal documents. The two do not follow a predictable pattern, so converting between them requires a dedicated lookup against registry map data, not a lookup table.
Chiban matters for real estate due diligence, land transaction platforms, and any workflow that touches Japan's registry system β a growing need as foreign investment in Japanese real estate rises. Most global geocoding APIs do not source chiban directly from registry map data, which is why this exists as a standalone tool.
| Tool | Backing API | Input | Returns |
|---|---|---|---|
get_parcel | ChibanJP /parcel | lat, lon | Chiban (cadastral lot number), Εaza/aza, municipality, and survey precision class for the containing parcel |
reverse_geocode | ReverseGeoJP /reverse | lat, lon | Nearest residential address (prefecture, municipality, district, postal code) |
geocode | ReverseGeoJP /geocode | address | Up to 10 candidate locations for a partial address match |
lookup_location | Both, in parallel | lat, lon | Address and chiban together in one call (an orchestration example β succeeds with address-only if the point falls outside ChibanJP's current coverage) |
All tools share a single API key. Get one at reversegeojp.com.
The tool definitions live in src/tools.ts and are shared by both entry points:
src/index.ts. Your MCP client launches it as a child process on your machine. One user, one API key.src/worker.ts. Already deployed at https://mcp.reversegeojp.com; anyone can connect with their own API key, no build step required.or, from source:
The server reads the API key from the GEOJP_API_KEY environment variable. You normally don't run it directly β your MCP client starts it as a subprocess (see below).
--scope user makes it available across all projects on your machine (omit it to register for the current project only). Verify with claude mcp list.
Argument order matters: -e/--env accepts multiple values, so it will swallow subsequent arguments if placed before the server name. Keep the order: add, then the server name, then -e.
Or configure manually in .mcp.json / ~/.claude.json:
Add the same block to the mcpServers section of claude_desktop_config.json, then restart Claude Desktop. Four tools (reverse_geocode, geocode, get_parcel, lookup_location) become available.
Connect directly to the hosted server with your own API key β no install or build required:
Health check: GET https://mcp.reversegeojp.com/health.
Authorization header and proxies straight through to the ReverseGeoJP/ChibanJP production APIs. This avoids the paid Workers plan that Durable Objects require, so it runs on the same free plan as reverse-geo-jp/chibanjp with no added infrastructure cost (the more common McpAgent pattern from agents-sdk assumes Durable Objects and a paid plan).@modelcontextprotocol/sdk's WebStandardStreamableHTTPServerTransport, since the Node-only StreamableHTTPServerTransport depends on http.IncomingMessage/ServerResponse, which don't exist in the Workers runtime.reversegeojp-client/chibanjp-client default to holding a bare, unbound fetch (this.fetchImpl = options.fetch ?? fetch), which throws "Illegal invocation" on Cloudflare Workers. Fixed by passing an explicitly-bound fetch into the client constructor options in createGeojpMcpServer() (see boundFetch in src/tools.ts). Also fixed upstream in geojp-api-clients v0.1.1 (fetch.bind(globalThis)); geojp-mcp depends on that version, and keeps the local boundFetch as a harmless fallback.Starts the server with a dummy key and confirms the tool list loads and a real API call correctly returns an invalid_api_key error.
ReverseGeoJP/ChibanJP were already running as APIs meant to be called directly by developers reading the docs. This project exposes them as MCP tools so AI agents can discover and call them automatically β reusing the existing production infrastructure while building hands-on MCP/agent-integration experience.
MIT
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/geojp)<a href="https://allmcps.com/mcp/geojp"><img src="https://allmcps.com/api/badge/geojp?style=directory" alt="Geojp on AllMCPs" /></a>