LocalGov.jpを読み取り専用MCPとして補助金候補探索に使う
事業案を評価するとき、補助金や支援制度の候補を見落とすと初期費用の見立てが粗くなる。一方で、補助金情報は年度、地域、対象経費、募集期間で変わりやすく、二次情報だけで「使える」と断定するのは危険だ。今回はHermes Agentの事業案評価ワークフローに、LocalGov.jpを候補発見だけに使う読み取り専用MCPを追加した。
実際に行ったことと確認結果
手元の実装では、上流の`@localgov-jp/mcp-server`を固定バージョンで導入し、Hermesから直接全機能を見せるのではなく、ローカルのラッパーサーバーを経由させた。公開するツールは、補助金検索、詳細取得、自治体別候補、中央制度に紐づく補助候補探索の4つだけに限定した。有料Webhook、士業紹介、受領証、自治体比較、競売系の機能はHermesへ公開していない。
安全策として、API接続先を`https://localgov.jp`に固定し、1リクエスト15秒、応答2MB、検索結果上限20件に制限した。MCPのツール定義には`readOnlyHint: true`と`destructiveHint: false`を付け、Hermes側でも未信頼サーバーとして扱う前提にした。確認日現在のMCP仕様でも、ツールは入力スキーマ、説明、任意のannotationsを持ち、クライアント側はツール結果を検証する必要があると説明されている。
検証では、`hermes mcp test localgov_business`で接続に成功し、4ツールだけが検出された。さらに`PYTHONPATH=. uv run pytest tests/test_localgov_mcp_runtime.py tests/test_business_strategy_workflow.py -q`を実行し、17件すべて成功した。実テーマのシャドーテストでは、自治体・都道府県・全国の候補探索を行い、有効候補を断定できない場合でも公式Web確認へフォールバックできることを確認した。
仕組みの流れ
処理の役割分担は明確に分けた。
1. 事業案の戦略・費用ステージから、短い検索語を2〜4個作る。
2. LocalGov.jp MCPでは1検索1概念にし、候補を最大20件まで取得する。
3. 候補の年度、期限、地域、対象経費、公式URLの有無を荒くふるい分ける。
4. 残す候補は、発行主体や公式事務局のページで募集状況を再確認する。
5. 公式確認できない候補は、参考情報または未確認候補に落とす。
6. LocalGov.jpが0件、タイムアウト、低品質候補の場合でも、補助金調査ステージ全体は止めず、公式検索へ進む。
ここで重要なのは、LocalGov.jpを「根拠」ではなく「発見器」として扱うことだ。記事や成果物に載せる制度は、必ず公式ページで確認したものに限定する。
再現手順
公開例では実パスや通知先を置き換える。まずプロジェクト内に専用runtimeを作り、依存をライフサイクルスクリプトなしで固定する。
“`bash
cd /path/to/project/localgov_mcp
npm install –omit=dev –ignore-scripts
npm audit –omit=dev
“`
次に、読み取り専用ラッパーをHermesへ登録する。
“`bash
hermes mcp add localgov_business \
–command /path/to/node \
–connect-timeout 15 \
–args /path/to/project/localgov_mcp/readonly-server.mjs
hermes config set mcp_servers.localgov_business.trust untrusted
hermes config set mcp_servers.localgov_business.timeout 30
hermes mcp test localgov_business
“`
補助金調査Skillには、「LocalGov.jpは候補探索だけ」「`open_only`や期限欄を募集継続の証拠にしない」「古い年度表記は公式後継制度を確認するまで採用しない」という規則を入れる。テストでは、公開ツールが4つだけであること、読み取りannotationsが付くこと、Skillの検索語・年度・フォールバック規則が残っていることを確認する。
失敗しやすい点と安全策
複数概念を`DX IT導入 省力化`のように1つの検索語へ詰めると、候補が0件になりやすい。検索は`DX`、`IT導入`、`省力化`のように分ける。もう1つの落とし穴は、過年度の制度や期限不明の候補を、現在募集中と誤読することだ。2026年に確認しているなら、2025年度の制度は公式ページで後継が確認できるまで古い候補として扱う。
補助金は会計・資金繰りに関わるため、自動調査だけで受給可否を判断しない。交付決定前の支出、対象外経費、入金時期、自己負担額は、人が公式窓口や募集要領で確認する必要がある。
再現チェックリスト
- [ ] 上流パッケージと依存バージョンを固定している。
- [ ] `npm install`は`–ignore-scripts`付きで実行している。
- [ ] Hermesへ公開するMCPツールは読み取り系4個だけになっている。
- [ ] `hermes mcp test`で接続とツール数を確認した。
- [ ] LocalGov.jp候補を公式根拠として扱っていない。
- [ ] 公式ページで募集状況、対象者、経費、期限、入金時期を再確認している。
- [ ] 補助金を自己資金の代替として自動的に差し引いていない。
公式一次情報
- [Model Context Protocol: Tools](https://modelcontextprotocol.io/specification/2025-06-18/server/tools)
- [Hermes Agent MCP](https://hermes-agent.nousresearch.com/docs/user-guide/features/mcp)
- [Hermes Agent CLI Commands Reference](https://hermes-agent.nousresearch.com/docs/reference/cli-commands)
- [@localgov-jp/mcp-server – npm](https://www.npmjs.com/package/@localgov-jp/mcp-server)
- [LocalGov.jp](https://localgov.jp/)
