JP Data (Japanese Public Business Data)

io.github.kimotostudioPublished by GitHub account kimotostudiov0.1.0Updated Oct 24, 2026

Japanese open-data MCP server: corporate-number validation, zengin bank codes, national holidays

VerifiedSTDIODesktop onlyFinanceBusiness & Commerce

Overview

AI-generated overview

A local MCP server giving assistants Japanese business-data lookups: corporate-number validation, zengin bank and branch codes, and national holidays.

What you can do
Validate and look up Japanese corporate numbers, including optional live registry enrichment and name search via the NTA Web-API when an application ID is configured, otherwise a clearly tagged synthetic sample set. Look up zengin bank codes and search banks by name in kanji, kana, hiragana or romaji. Look up bank branches by bank and branch code, with branch data fetched on demand and cached locally. List Japanese national holidays for a year and check whether a given date is a holiday.
When to use it
Useful when an assistant needs to check or explain Japanese corporate numbers, bank and branch codes for domestic transfers, or official holiday dates, without sending data to a third-party service.
Requirements
Runs locally as a stdio process and needs Python 3.11+ with the fastmcp and httpx packages (or uv). The optional NTA_APP_ID environment variable holds a free National Tax Agency Web-API application ID; without it, corporate lookups return synthetic sample records. Branch lookups fetch data from the public zengin-code dataset, so network access is needed for those.
Before you install
Without NTA_APP_ID, corporate lookup and name search return fabricated records tagged SYNTHETIC_SAMPLE, not real companies. Check-digit validation does not confirm a company exists. The NTA CSV column mapping is unverified against live responses. Bundled datasets are snapshots that may lag official sources, and the project disclaims accuracy, so verify before legal, tax, accounting or payment use.

Installation

In SourceWeft

  1. Open JP Data (Japanese Public Business Data) in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

jp-data-mcp — Japanese Public Business Data for AI Agents

A free, open-source MCP server that gives AI agents the Japanese business-data primitives they most often need:

  • Corporate numbers (法人番号) — offline check-digit validation and, with a (free) NTA application ID, live registry enrichment from the National Tax Agency 法人番号 Web-API: registered name, address, entity kind, dates.
  • Zengin bank / branch codes (統一金融機関コード・支店コード) — the codes that describe a Japanese domestic bank transfer, with kana / hiragana / romaji.
  • Japanese national holidays — official Cabinet Office holiday data, bundled.

It runs entirely on your machine. No account, no API key of ours, no payments, no telemetry — usage is not logged or reported anywhere.

Tools

ToolWhat it does
validate_corporate_numberOffline format + official NTA check-digit validation of a 13-digit 法人番号 (full-width input tolerated). Does not confirm the company exists.
lookup_corporate_numberRegistry enrichment for a corporate number (live NTA Web-API when NTA_APP_ID is set; otherwise a clearly-tagged synthetic fallback — see below).
search_corporations_by_nameSearch corporations by (partial) name (live NTA Web-API when NTA_APP_ID is set).
lookup_bankBank by 4-digit zengin bank code → name / kana / hiragana / romaji.
search_banksSearch banks by name fragment (kanji / kana / hiragana / romaji).
lookup_branchBranch by bank code + 3-digit branch code (branch data lazily fetched from the public zengin-code dataset and cached locally).
japan_holidaysAll Japanese national holidays for a given year.
is_japan_holidayWhether a YYYY-MM-DD date is a national holiday.

Important: the SYNTHETIC_SAMPLE fallback

Live corporate-registry data requires a free NTA Web-API application ID (register at the 国税庁 法人番号システム Web-API site), supplied via the NTA_APP_ID environment variable.

Without NTA_APP_ID, lookup_corporate_number and search_corporations_by_name fall back to a tiny bundled synthetic sample set. These records are fabricated for testing, do not correspond to real companies, and every one of them is tagged "source": "SYNTHETIC_SAMPLE" plus an explanatory note in the response — they can never be mistaken for real registry data. Check-digit validation and the bank/holiday tools do not need any key and always use real data.

Known limitation: the NTA v4 CSV column mapping is written from the published spec but has not yet been verified against a live API response. If you find a misaligned field, please open an issue.

Install & run

Requires Python 3.11+.

bash
git clone https://github.com/kimotostudio/jp-data-mcp.gitcd jp-data-mcppip install fastmcp httpx    # or: uv syncpython src/server.py         # stdio MCP server

Or with uv, no explicit install step:

bash
uv run --directory /path/to/jp-data-mcp src/server.py

Claude Desktop / MCP client config (stdio)

json
{  "mcpServers": {    "jp-data": {      "command": "uv",      "args": ["run", "--directory", "/path/to/jp-data-mcp", "src/server.py"],      "env": { "NTA_APP_ID": "your-nta-app-id (optional)" }    }  }}

An .mcpb bundle (usable with MCPB-aware clients) is attached to each GitHub release.

Local HTTP mode (optional)

bash
python src/server.py --http   # streamable-http on 127.0.0.1:8765 (localhost only)

Test

bash
python test_client.py

Data sources & licenses

DataSourceTerms
Corporate registry国税庁 法人番号システム Web-API v4 (live, only when you configure your own NTA_APP_ID)NTA Web-API terms of use apply to your usage
Check-digit formulaOfficial NTA specification (implemented offline)—
Bank / branch codeszengin-code/source-data (bank list bundled; branch files fetched on demand)MIT License
National holidays内閣府 国民の祝日 CSV (bundled, converted to UTF-8)Japanese government open data
Synthetic corporate samplesGenerated for this project (valid check digits, fictional companies)MIT (part of this repo)

Disclaimer

This project is not affiliated with or endorsed by the National Tax Agency, the Japanese Bankers Association, the zengin-code project, or the Cabinet Office. Data is provided as-is with no warranty of accuracy or completeness — verify against official sources before relying on it for legal, tax, accounting, or payment decisions. Bundled datasets are snapshots and may lag the official sources.

License

MIT

Source: README.md at commit 4c38465

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.0LatestSep 16, 2026

Score

50% 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 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • 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