JP Data (Japanese Public Business Data)

io.github.kimotostudio由 GitHub 账号 kimotostudio 发布v0.1.0更新于 Oct 24, 2026

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

已验证STDIO仅桌面金融商业与电商

概览

AI 生成的概览

本地 MCP 服务器,为助手提供日本商务数据查询:法人编号校验、zengin 银行与支行代码、法定节假日。

可以做什么
校验并查询日本法人编号,配置申请 ID 时可通过 NTA Web-API 进行实时登记信息补充和按名称搜索,否则返回明确标记的合成样本数据。按 4 位 zengin 银行代码查询银行,并可用汉字、假名、平假名或罗马字按名称搜索银行。按银行代码和支行代码查询支行,支行数据按需获取并缓存在本地。列出某年的日本法定节假日,并判断指定日期是否为节假日。
适用场景
适合助手需要核对或解释日本法人编号、用于日本国内转账的银行与支行代码,或官方节假日日期,同时不希望把数据发送给第三方服务的场景。
运行要求
以 stdio 进程在本地运行,需要 Python 3.11+ 以及 fastmcp 和 httpx 包(或使用 uv)。可选环境变量 NTA_APP_ID 用于存放免费的国税厅 Web-API 申请 ID;未设置时,法人查询返回合成样本记录。支行查询会从公开的 zengin-code 数据集获取数据,因此需要网络访问。
安装前请注意
未设置 NTA_APP_ID 时,法人查询和名称搜索返回标记为 SYNTHETIC_SAMPLE 的虚构记录,并非真实公司。校验位验证不能确认公司是否存在。NTA CSV 列映射尚未用实时响应验证。内置数据集为快照,可能落后于官方来源,项目声明不保证准确性,用于法律、税务、会计或支付决策前请核实。

安装

在 SourceWeft 中

  1. 打开 控制台中的 JP Data (Japanese Public Business Data),将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

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

来源:README.md,提交 4c38465

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.0最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分