
Geojp
io.github.55tarkunPublished by GitHub account 55tarkunv0.1.0Updated Oct 24, 2026
MCP server for Japan geodata: cadastral lot numbers (chiban) and reverse geocoding, for AI agents.
Overview
Geojp exposes Japan-specific geodata APIs to AI assistants: cadastral lot numbers (chiban) and Japanese address geocoding from coordinates or addresses.
- What you can do
- Look up the cadastral parcel (chiban, ōaza/aza, municipality, survey precision) containing a latitude/longitude point via get_parcel. Reverse geocode coordinates to the nearest Japanese residential address, including prefecture, municipality, district and postal code. Forward geocode a partial address into up to 10 candidate locations. Retrieve address and chiban together in one parallel call with lookup_location, falling back to address-only when the point is outside chiban coverage.
- When to use it
- Useful for Japanese real estate due diligence, land transaction workflows, or any task that needs the cadastral lot number behind a coordinate, which general-purpose geocoders usually do not provide. Also handy when an assistant needs to convert between Japanese addresses and coordinates.
- Requirements
- Either connect to the hosted remote endpoint or run the npm package geojp-mcp locally with Node.js via npx. An API key from ReverseGeoJP/ChibanJP is required, supplied as the GEOJP_API_KEY environment variable for local use or as an Authorization bearer token for the remote endpoint. Network access to the upstream APIs is needed.
Installation
In SourceWeft
- Open Geojp in the dashboard and add it to a workspace.
- Connect Authorization token credentials. They are stored privately and never shown on public pages.
- Enable the server for the chats that should use its tools.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Use with an agent
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/io.github.55tarkun%2Fgeojp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Other MCP clients
Add this to your client's mcpServers config.
{
"mcpServers": {
"geojp": {
"type": "http",
"url": "https://mcp.reversegeojp.com/",
"headers": {
"Authorization": "Bearer <YOUR_TOKEN>"
}
}
}
}README
geojp-mcp
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):
- ChibanJP — coordinates → chiban (地番, the official cadastral lot number recorded at Japan's Legal Affairs Bureau). Chiban rarely maps predictably to a residential address (住居表示) and is not exposed by most general-purpose geocoders.
- ReverseGeoJP — coordinates ⇄ Japanese address (reverse geocoding / forward geocoding).
Why chiban?
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.
Tools
All tools share a single API key. Get one at reversegeojp.com.
Two ways to run it
The tool definitions live in src/tools.ts and are shared by both entry points:
- Local (stdio) —
src/index.ts. Your MCP client launches it as a child process on your machine. One user, one API key. - Remote (HTTP, Cloudflare Workers) —
src/worker.ts. Already deployed athttps://mcp.reversegeojp.com; anyone can connect with their own API key, no build step required.
Setup (local/stdio)
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).
Register with Claude Code
--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:
Register with Claude Desktop
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.
Setup (remote/HTTP)
Connect directly to the hosted server with your own API key — no install or build required:
Health check: GET https://mcp.reversegeojp.com/health.
Remote server design notes
- No bindings, stateless: the Worker holds no session state and uses no Durable Objects. Every call reads the API key from the
Authorizationheader 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 asreverse-geo-jp/chibanjpwith no added infrastructure cost (the more commonMcpAgentpattern fromagents-sdkassumes Durable Objects and a paid plan). - Web Standards transport: uses
@modelcontextprotocol/sdk'sWebStandardStreamableHTTPServerTransport, since the Node-onlyStreamableHTTPServerTransportdepends onhttp.IncomingMessage/ServerResponse, which don't exist in the Workers runtime. - Gotcha:
reversegeojp-client/chibanjp-clientdefault to holding a bare, unboundfetch(this.fetchImpl = options.fetch ?? fetch), which throws "Illegal invocation" on Cloudflare Workers. Fixed by passing an explicitly-boundfetchinto the client constructor options increateGeojpMcpServer()(seeboundFetchinsrc/tools.ts). Also fixed upstream ingeojp-api-clientsv0.1.1 (fetch.bind(globalThis));geojp-mcpdepends on that version, and keeps the localboundFetchas a harmless fallback.
Deploy / local dev
Smoke test (no API key required — wiring check only)
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.
Why this exists
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.
License
MIT
Source: README.md at commit a9ee994
Tools
0Version history
1- v0.1.0LatestSep 16, 2026
Score
85% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 daysRequired25 pts
- Auth declaredRequired10 pts
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts