Houan Mcp

io.github.SHAYOUWORLDPublished by GitHub account SHAYOUWORLDv0.1.3Updated Oct 24, 2026

Search Japanese Diet bills and meeting transcripts (NDL Kokkai API) with source attribution.

Overview

AI-generated overview

Local MCP server that lets an assistant search Japanese Diet bills and committee transcripts via the NDL Kokkai API, with source URLs for citation.

What you can do
  • Search Diet committee speeches full-text, filtered by date, chamber, committee and speaker
  • Fetch a single committee meeting transcript by issue ID
  • Search current-session bills in either house by title keyword
  • Retrieve one bill's detail: proceedings timeline, committee assignment and full-text link
When to use it
Useful when you need to research Japanese legislative process: pending bills, committee questioning, or verbatim Diet transcripts, and want answers that cite the official source. It complements a separate e-Gov law server that covers enacted laws.
Requirements
Node.js 20 or later, run locally over stdio (npx or from source). Network access to the NDL Kokkai API and the House of Representatives and House of Councillors bill-information sites. No authentication or API keys.
Before you install
Read-only lookups of public data; it does not execute shell commands and only fetches the listed government endpoints. Results are a legislative reference, not legal or political advice. NDL records typically lag committee meetings by one to two weeks. Published output should carry the suggested source attribution.

Installation

In SourceWeft

  1. Open Houan Mcp 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

@codeagentjp/houan-mcp

Local stdio MCP server for searching Japanese Diet bills (衆参議案情報) and committee Q&A records via the NDL Kokkai (国会会議録検索システム) API.

This server does not call an LLM. It only returns source-backed Diet data, with primary URLs (NDL Kokkai, 衆議院議案情報, 参議院議案情報) so your MCP client (Claude Desktop, Claude Code, Cursor, or any other agent) can cite the original source.

Sister package: @codeagentjp/egov-law-mcp for current Japanese laws (e-Gov Law Search). houan-mcp covers the legislative process side: bills under deliberation, committee questionings, and full meeting transcripts.

Status

MVP. Four tools:

  • find_diet_qa — full-text search across all Diet committee speeches via the NDL Kokkai API. Filter by date, chamber, committee, speaker.
  • get_meeting_record — retrieve a single committee's full transcript by issueID.
  • search_bills — search current-session bills in either house by title keyword.
  • get_bill — retrieve detail of one bill (proceedings timeline, committee assignment, full-text URL).

Requirements

  • Node.js 20 or later
  • Network access to https://kokkai.ndl.go.jp, https://www.shugiin.go.jp, https://www.sangiin.go.jp

Install

From npm:

json
{  "mcpServers": {    "houan": {      "command": "npx",      "args": ["-y", "@codeagentjp/houan-mcp"]    }  }}

From source:

bash
git clone https://github.com/SHAYOUWORLD/houan-mcp.gitcd houan-mcpnode bin/houan-mcp.mjs
json
{  "mcpServers": {    "houan": {      "command": "node",      "args": ["/absolute/path/to/houan-mcp/bin/houan-mcp.mjs"]    }  }}

Tools

find_diet_qa

Full-text search of Diet committee speeches via the NDL Kokkai API.

json
{  "keyword": "クロード ミトス",  "from": "2026-04-01",  "until": "2026-04-25",  "chamber": "衆議院",  "committee": "外務委員会",  "limit": 5}

Returns matched speeches with speaker, position, committee context, and direct NDL URL.

get_meeting_record

Retrieve a single full transcript by issueID.

json
{  "issueID": "122103968X00620260410"}

search_bills

Search 衆議院議案情報 / 参議院議案情報 by title keyword.

json
{  "keyword": "情報",  "chamber": "both",  "session": 222,  "limit": 20}

When session is omitted, the server reads the session list behind the 衆議院議案情報 dropdown (.../html/gian/pulldown.htm, one small request, cached for 5 minutes like other responses) and searches the highest session listed, for both chambers. If that list cannot be read, it searches 222 (checked 2026-10-28) and adds an entry to warnings. query.sessionSource is latest, fallback, or argument. Specify session explicitly for historical sessions; no session list is fetched then.

For Shugiin results, session is the searched session, submittedSession is the session in which the item was introduced, and billType distinguishes 衆法 / 参法 / 閣法 and other agenda items. billNumber is the official number (or null for unnumbered items); status comes from 審議状況. Unpublished proceedings/full-text links are null.

HTTP, network, timeout, and unrecognized Shugiin table errors are returned as an MCP tool result with isError: true. Its text contains error, sourceErrors (chamber, URL, message) and warnings, rather than a successful zero-hit result. When searching both, a failure in either chamber fails the whole search; request one chamber explicitly if you want to retry it alone. A successful search with no title matches still returns matched: 0 and results: [].

get_bill

Retrieve a bill detail page (proceedings timeline, committee assignment, full-text URL). The proceedingURL must be a URL returned by search_bills — it is validated against the chamber's allowed path prefix before fetching.

json
{  "chamber": "shugiin",  "proceedingURL": "https://www.shugiin.go.jp/internet/itdb_gian.nsf/html/gian/keika/1DE..."}

Data Sources and Attribution

This package uses three Japanese public sources:

Tool results include the source URL. When you publish or redistribute output based on this package, include an appropriate attribution. Suggested:

出典: 国会会議録検索システム (https://kokkai.ndl.go.jp/) / 衆議院議案情報 / 参議院議案情報

Request pacing

The NDL Kokkai API terms (section 4) ask machine clients to avoid concurrent requests and to wait a few seconds after each response before sending the next one. find_diet_qa and get_meeting_record therefore:

  • send at most one request to kokkai.ndl.go.jp at a time, even when a client calls several tools at once or sends a JSON-RPC batch;
  • start each request at least 3 seconds after the previous one finished. Set HOUAN_MCP_NDL_INTERVAL_MS to wait longer; values below 3000 are ignored.

Identical queries within 5 minutes are answered from an in-process cache and do not reach NDL. Several NDL calls in a row take about 3 seconds each. The pacing applies within one server process; if you run several copies, keep their combined traffic within the same terms.

HOUAN_MCP_TIMEOUT_MS (default 20000) sets the per-request timeout. It starts when the request is sent, not while it waits for its turn.

Example: pulling a Mythos Q&A

The 4/10 2026 衆議院外務委員会 questioning by 宇佐美登 (チームみらい) on Anthropic's Claude Mythos Preview can be retrieved like this:

json
{  "tool": "find_diet_qa",  "arguments": {    "keyword": "クロード",    "from": "2026-04-01",    "until": "2026-04-30"  }}

The response includes 花田貴裕 政府参考人's verbatim answer with meetingURL pointing to the canonical NDL record at https://kokkai.ndl.go.jp/txt/122103968X00620260410.

Safety Notes

  • This package is a legislative reference tool, not legal/political advice.
  • It does not execute shell commands.
  • It writes JSON-RPC messages only to stdout and logs only to stderr.
  • It fetches only the NDL Kokkai API and 衆/参 議案情報 endpoints.
  • Diet records in NDL typically appear with a 1–2 week lag after the committee meeting. If a recent meeting cannot be found, check back later or consult the chamber's video library directly.

Development checks

bash
npm test

Tests launch the stdio server with network requests replaced by local official-HTML samples. They cover Shugiin search/proceedings, failure reporting, and the existing Sangiin and NDL tools. Sample sources and capture details are in test/fixtures/README.md.

Related

License

MIT © codeagent.jp

Source: README.md at commit 0d33a1a

Tools

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

Version history

1
  1. v0.1.3LatestSep 24, 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