MCP server for Japan's e-Gov law search API (laws.e-gov.go.jp) — search, fetch, and cite national legislation by law_id and article.
Project description
jp-eli-mcp
An MCP server for Japan's official e-Gov law search API (laws.e-gov.go.jp), run by the
Digital Agency. It searches, fetches, and cites national legislation - acts, cabinet orders,
ministerial ordinances - with a verifiable citation on every response.
Part of the MateMatic eu-legal-mcp production line, extended into Asia. Same citation contract
(a stable identifier + a human-readable citation + a source URL) as the 18 EU/EEA connectors,
adapted for a jurisdiction with no ELI scheme.
Scope. Discovery is by law title (
jp_search_laws) or full-text keyword (jp_search_by_keyword); fetch a specific article (jp_get_article) or the full text (jp_get_full_text, truncated for very large laws such as the Civil Code). Every response carries adataset_note.Licence. e-Gov law data is official public information published by the Japanese government as open data (keyless, REST/JSON). This connector relays it with attribution and a
source_url.
The tools
| Tool | What it does |
|---|---|
jp_search_laws |
Search laws by (partial) title. |
jp_search_by_keyword |
Full-text search across all laws, with highlighted snippets. |
jp_get_law |
Metadata for a law by law_id: title, law number, promulgation date. |
jp_get_article |
The text of one article of a law, by law_id and article_num. |
jp_get_full_text |
The full text of a law (truncated at ~300,000 characters). |
Every response carries the contract: eli_uri (Japan has no ELI - this is the durable e-Gov
viewer URL, e.g. https://laws.e-gov.go.jp/law/129AC0000000089, see eli_note),
human_readable_citation (e.g. 民法(明治二十九年法律第八十九号)), and source_url (the
machine-readable API URL).
Install
Not yet on PyPI - install from source until the first release ships:
git clone https://github.com/matematicsolutions/jp-eli-mcp
cd jp-eli-mcp
pip install -e .
Once released, this will be uvx jp-eli-mcp.
Configuration via env:
JP_ELI_BASE_URL- defaulthttps://laws.e-gov.go.jp/api/2JP_ELI_CACHE_DIR- default~/.matematic/cache/jp-eliJP_ELI_AUDIT_DIR- default~/.matematic/audit
No API key. e-Gov's law search API is keyless.
Configure (Claude Code / any MCP client)
{
"mcpServers": {
"jp-eli-mcp": { "command": "jp-eli-mcp" }
}
}
Governance
- Public data only - read-only against e-Gov; no client data leaves the machine.
- Audit log - every tool call appends one JSON line to
~/.matematic/audit/jp-eli-mcp.jsonl. - Vendor-neutral - talks only to
laws.e-gov.go.jp; no LLM provider, no telemetry. - Verifiable citations - every response is independently checkable via
source_url.
See CONSTITUTION.md and DISCOVERY.md.
Tests
pip install -e ".[dev]"
pytest tests/test_instructions_drift.py -v # offline
pytest tests/test_smoke.py -v # hits live e-Gov
Licence
Apache-2.0. © Matematic Solutions / Wieslaw Mazur.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file jp_eli_mcp-0.1.1.tar.gz.
File metadata
- Download URL: jp_eli_mcp-0.1.1.tar.gz
- Upload date:
- Size: 20.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0aba8038e6496ac7a795dbd83412323fd8ccb5c112cbf3ec0bc6afb3fdf0c970
|
|
| MD5 |
ce95841b5ef4d7112c51e43537d1976d
|
|
| BLAKE2b-256 |
1af61a423a7cdf1a2dbfad038866820734828b1fcb85e6f4f5b10b7f240d4574
|
File details
Details for the file jp_eli_mcp-0.1.1-py3-none-any.whl.
File metadata
- Download URL: jp_eli_mcp-0.1.1-py3-none-any.whl
- Upload date:
- Size: 18.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b04c06999abc7aa988b7b28f8e784fa836376d9e9cd180e24843f72c0495329f
|
|
| MD5 |
d86fdd05293da22ba3371fb120f6510c
|
|
| BLAKE2b-256 |
a0e5c7306fc026994867639225098e3a1c0f1c7c9ca7a12825343299d88446e6
|