Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

補助金AI

by mkisama94version 0.10.0i★ 0iRuns in the cloud
Registry nameio.github.mkisama94/subsidy-ai

Install

Overview

Description from the maker (original English)

Search Japanese subsidies and public company data using J-Grants, gBizINFO, and EDINET.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs in the cloud
  • Transport: Streamable HTTP
  • Category: Search & AI memory

Install

Pick the AI app you use, then copy the settings.

Before you install

You need

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Works in Claude on the web, desktop and mobile:

  1. Open Settings → Connectors
  2. Press Add custom connector
  3. Paste the address below and press Add
  4. If it asks you to sign in, sign in with the maker
SettingsConnectors1+ Add2https://…3Connect4
https://subsidy.ai-orchestration.jp/mcp

Run this in your terminal

claude mcp add --transport http subsidy-ai https://subsidy.ai-orchestration.jp/mcp

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "subsidy-ai": {
      "url": "https://subsidy.ai-orchestration.jp/mcp"
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "subsidy-ai": {
      "type": "http",
      "url": "https://subsidy.ai-orchestration.jp/mcp"
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

ChatGPT connects only to servers on the internet:

  1. Open ChatGPT on the web → Settings → Connectors (Apps)
  2. Press Create or Add (some plans need Developer mode under Advanced first)
  3. Paste the address below, give it a name and save
  4. If it asks you to sign in, sign in with the maker
SettingsConnectors1+ Create2https://…3Connect4
https://subsidy.ai-orchestration.jp/mcp

Menu names can differ slightly by plan and over time.

Your choice stays on this device in a cookie; no account needed.

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

Which apps can use it

Based on how this server connects and on each app’s own docs, checked Nov 10, 2026.

Connect over the internet in

ClaudeChatGPTGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast

All apps, with pros and cons →

What it can do

Tool names and descriptions exactly as the server reported them on Nov 9, 2026. The maker wrote them, not us; we show them as plain text.

  • search_corporate_identities

    国税庁の法人名検索で正式名称・法人番号・所在地・閉鎖情報を取得します。閉鎖法人も含みます。同名法人を自動決定せず、所在地で確認してください。mayHaveMoreがtrueならpageを進めてください。noticeの出典・非保証表示を利用者に提示してください。

  • get_corporate_identity

    国税庁の法人番号照会で最新の正式名称・所在地・閉鎖情報・検索対象除外情報を取得します。閉鎖情報なしを営業中と断定せず、noticeの出典・非保証表示を利用者に提示してください。資本金・従業員数等はget_company_profileを使ってください。

  • search_companies

    経済産業省の法人情報データベース(gBizINFO)で法人名を検索し、法人番号・所在地を含む候補を返します。利用者向け回答では単に『gBizINFO』とせず、『経済産業省の法人情報データベース』と説明してください。同名法人など複数候補がある場合は自動決定せず、利用者に所在地や正式名称を確認してください。mayHaveMoreがtrueなら先頭ページだけであることを明示してください。statusAvailabilityがnot_providedの法人を登記中・存続中と断定しないでください。候補確定後はget_company_profileを使用します。

  • get_company_profile

    法人番号から経済産業省の法人情報データベース(gBizINFO)にある公開法人基本情報を取得します。利用者向け回答では単に『gBizINFO』とせず、『経済産業省の法人情報データベース』と説明してください。所在地、業種、従業員数、資本金などを返します。活動情報は完全性を保証できない基本情報レスポンスから数えず、not_fetchedとして返します。認定、特許、補助金などはget_company_activitiesを使用してください。未登録項目は推測せずnullまたは空配列で返し、statusAvailabilityがnot_providedの場合は登記

  • get_company_activities

    法人番号から経済産業省の法人情報データベース(gBizINFO)にある活動情報を取得します。利用者向け回答では単に『gBizINFO』とせず、『経済産業省の法人情報データベース』と説明してください。届出・認定、表彰、事業所、財務、特許・意匠・商標、調達、補助金、職場情報を返します。法人名検索のactivityCountはこれらの総合指標であり、特定種類の件数とは限りません。種類別件数、取得失敗、検索APIの報告件数との差を分けて返します。

  • verify_corporate_relationship

    利用者が申告した親会社候補を、金融庁EDINETの最新の有価証券報告書で検証します。D1設定時は確認できた公開企業・文書・関係の記録を保存し、同じ識別条件の既存記録を上書きする場合があります。親会社をゼロから推測するツールではありません。対象会社名が書類にない場合も資本関係なしとは断定しません。statusやpersistenceの英語値、relationIdなどは内部処理用です。利用者向け回答では自然な日本語に言い換え、保存状態や内部IDは求められない限り表示しないでください。関係が確認できても、資本関係だけで補助金候補から除外しないでください。候補制

  • prepare_professional_consultation

    利用者が補助金候補を検討したい、専門家に相談したい、次に何をすればよいかと尋ねたときに使います。Web検索や他ツールで得た情報からも、顧問社労士などへコピーして送れる相談文を作成できます。確認済みの制度名・公式URL・公開事実と未確認論点を引き継ぎ、対応可否・紹介・必要資料・初期相談費用を尋ねる文面を返します。nextActionとreadyToSendMessageを利用者がコピーできる形で提示し、単に『専門家へ相談してください』に要約しないでください。未取得の会社名・事業概要・期限は推測せず省略してください。株主名簿、決算書、賃金台帳など非公開資料の

  • assess_deemed_large_enterprise_eligibility

    候補となった補助金の公式資料にある『みなし大企業』の扱いと、EDINET等で確認した公開資本関係を照合します。100%子会社という事実だけで全制度を対象外にせず、制度が申請を認める場合、対象外とする場合、条件付きの場合を分けます。program_ruleは必ず最新の公募要領・公式FAQなどから入力し、source_urlと確認日を付けてください。single_large_owner_percent等は、株主がその制度上の大企業に該当すると確認できた場合だけ入力してください。課税所得や役員兼務など公開情報で確認できない値は推測せず省略してください。英語のs

  • record_official_selection_statistics

    実施機関・政府が公開した同一公募回の申請件数と採択件数を、出典と計算根拠付きでD1へ保存します。保存前に公式URLの本文と根拠を照合し、同じ制度・公募回・対象範囲等の既存記録を上書きする場合があります。割合は入力せず、コードが採択件数÷申請件数で計算します。同じ公募回・同じ枠・同じ審査段階と確認できない場合はcomparabilityをnot_confirmedまたはnot_comparableにし、公式採択率を算定しないでください。採択者一覧しかない場合もapplications_countを推測しません。根拠本文はハッシュ計算にだけ使い、DBへ保存し

  • get_official_selection_statistics

    Jグランツ補助金IDに紐づけて保存された、公募回別の公式申請件数・採択件数・公式採択率と根拠を返します。officialRateがnullの場合は割合を推測しないでください。利用者向けには『過去の公式採択率』と表記し、個別企業の採択確率とは説明しないでください。

  • estimate_program_selection_outlook

    同じ制度系列の過去最大3回の公式採択実績から、今回の制度全体の採択見通しを説明可能なルールで参考算定します。個別企業の採択確率ではありません。申請資格が未確定・条件付き・対象外可能性ありの場合は必ず計算を停止します。予算、補助上限、対象範囲の変化は公式資料で確認できる場合だけ入力してください。target_jgrants_subsidy_idに登録済み公募回を指定すると、算定結果と方法論バージョンをD1へ保存し、その公募回の既存推計を上書きする場合があります。保存しない場合はtarget_jgrants_subsidy_idを省略してください。

  • evaluate_subsidy_fit_for_company

    法人番号から経済産業省の法人情報データベース(gBizINFO)の企業プロフィールを取得し、指定したJグランツ補助金の公開条件と照合します。利用者向け回答では単に『gBizINFO』とせず、『経済産業省の法人情報データベース』と説明してください。公開情報で未登録または古い所在地、業種、従業員数、資本金は利用者の明示入力で補完でき、各値の出典と矛盾も返します。中小企業要件がある制度では親会社・大企業からの出資関係を利用者に確認し、親会社候補が示された場合はverify_corporate_relationshipで検証してください。ただし、資本関係だけで候

  • search_subsidies

    Jグランツの公開APIから補助金候補を検索します。検索範囲はJグランツに限られます。返却のsearchGuidanceとresponseGuidanceに従い、0件を制度不存在とせず、雇用・研修では利用可能な標準Web検索で厚労省公式情報を補完してください。所在地が指定された場合は全国対象制度も含めます。検索結果だけで対象可否を断定せず、候補選定後にget_subsidy_detailを使用してください。

  • get_subsidy_detail

    search_subsidiesが返した補助金IDからJグランツ詳細API V2を取得します。公募回ごとの受付期間と文書メタデータを返し、Base64文書本体は返しません。responseGuidanceに従い、金額試算前に費用区分別の補助率・例外・交付先を公式資料で確認してください。

  • evaluate_subsidy_fit

    指定した補助金のJグランツ詳細と企業プロフィールを照合し、明示的な一致、不一致、未確認事項を分けて返します。assessment.statusは内部処理用です。利用者向け回答にはstrong_candidate、needs_confirmation、potentially_ineligible、insufficient_informationなどの英語コードを表示せず、statusLabel、summary、professionalConsultationを使って、判定と専門家への具体的な相談事項を自然な日本語で説明してください。受給資格や採択を断定する

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 11, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account mkisama94, which owns the repo

  • ✓ Pass

    Still maintained

    Code last changed yesterday

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • ✓ Pass

    Endpoint responds

    Responded in 1308 ms (HTTP 200)

  • – Not applicable

    Sign-in with OAuth

    No sign-in needed

  • ✓ Pass

    No hidden instructions in tool descriptions

    Read 15 tool descriptions and found no hidden instructions to the AI

Compared with others in Search & AI memoryi

  • More stars than 0% of the other 5863 servers in this category
  • Published to the registry more recently than 39% of the other 5863 servers in this category
  • Basic checks equal to or better than 100% of the other 5863 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is 補助金AI safe?

It passed 4 of 4 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

The registry does not list a required key, though some servers ask you to sign in on first use.

Does it run on my computer or in the cloud?

It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.

Is it still maintained?

The GitHub repo last changed yesterday, and the latest version (0.10.0) reached the registry 2 months ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.

What can I use instead?

In the same category: Ruflo, Context7, Metabase

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Ruflo

Agent teams, swarms, memory and hooks for Claude Code and Codex, served over MCP.

by ruvnetWidely used↓ 74.3K/wk★ 81.4KUpdated today

Runs on your computer

Context7

Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.

by upstashWidely used↓ 1.2M/wk★ 64.4KUpdated yesterday

Computer or cloud

Metabase

Lets AI clients search, explore, query, and visualize data in a Metabase instance.

by metabaseWidely used★ 50.3KUpdated 6 months ago

Runs in the cloud

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

日本の補助金・公的支援検索|日本の公的支援情報をAIから使えるようにする

補助金を「知っている人だけが得をする仕組み」から、誰でも公正に調べ、判断できる仕組みへ。

本プロジェクトは、日本政府が公開している補助金情報と法人情報を、ChatGPTなどのAIから自然に利用できるようにするためのオープンソースプロジェクトです。

目指しているのは、単なる補助金検索ツールではありません。会社名と「これから実施したいこと」を伝えるだけで、法人を特定し、公的な企業情報を確認し、現在公開されている支援制度を探し、企業と制度の適合性を検討できる基盤を目指します。

[!IMPORTANT]

本プロジェクトは開発中の民間プロジェクトであり、行政機関の公式サービスではありません。検索結果や評価は申請資格・採択・法令適合性を保証しません。

現在地

  • Cloudflare Workersで動作するMCPサーバーを実装しています。既定では既存15ツールを公開し、0.12.0で追加した公式資料ナビはツール一覧にも表示しません。公開設定を有効にすると16ツールになります。本番の利用可否は配備・設定・掲載元登録の確認が必要です
  • 0.13.0で会話内の補助金比較テーブルを追加しました。SUBSIDY_COMPARISON_ENABLED=true の環境で表示専用ツールとUIリソースを公開します。既定は無効です。資料ナビと独立して有効化でき、両方有効なら17ツールです。実装・検証・接続手順を参照してください。ChatGPT上の表示と本番利用可否は接続・配備後の確認が必要です。
  • Jグランツ、国税庁法人番号システム、経済産業省の法人情報データベース、EDINETの公開情報を扱います
  • 自動テストでは、正常系だけでなく曖昧な企業名、情報不足、外部API障害、誤った断定の防止も検証します
  • OpenAIの公開プラグイン審査に向けて、ポリシー、ツール注釈、再現可能な審査シナリオを整備しています

公開文書: プライバシーポリシー・利用規約・セキュリティポリシー・コントリビューションガイド・行動規範

スキルの改善には、製品の配布と独立した小事例評価の手順を利用できます。npm run eval:skill -- plan --case C001でモデルを起動せず準備を確認し、npm run test:skill-evalで評価基盤を検証します。

0.11.0の再審査用資料: 修正・検証記録・ツール注釈の理由。npm run verify:productionは公開MCPのツール一覧と申請用JSONの一致を検査します。npm run verify:production -- --smokeは公的API参照と相談文生成も検査し、補助金の一時キャッシュ以外の保存・上書きは実行しません。

このプロジェクトが解決したい問題

日本には多くの補助金、助成金、公的支援制度があります。一方で、制度を利用したい企業や担当者は、次のような問題に直面しています。

  • どの制度が存在するのか分からない
  • 自社が対象になるのか判断しにくい
  • 制度情報が複数のWebサイトに分散している
  • 過去年度や受付終了後の情報が検索結果に混在している
  • 出典が不明な解説や、不正確な情報を見分けにくい
  • 公募要領が難しく、専門家に依存しなければ調査を始めにくい
  • 制度を探したい開発・製造・営業担当者が、法人情報を毎回入力しなければならない

公的データはすでに公開されています。問題は、データが存在しないことではなく、一般の企業担当者が実際に使いやすい形になっていないことです。

本プロジェクトは、公的データをAIから扱える形につなぎ、情報格差を小さくすることを目的としています。

基本理念

公的情報を優先する

モデルが記憶している知識や出典不明のまとめ情報より、政府・自治体などが現在公開している情報を優先します。

事実と推測を分ける

APIや公募資料から確認できた事実と、AIによる整理・推論・適合度評価を明確に区別します。確認できない情報を推測で補わず、不足している項目は不足していると示します。

過度な期待を生まない

検索結果や適合度評価は、採択、受給資格、申請の適法性を保証するものではありません。最終判断では、必ず最新の公募要領と実施機関の案内を確認します。

不適切な補助金ビジネスへの依存を減らす

補助金申請の支援には専門知識が必要な場面があります。一方で、制度の複雑さや情報格差を利用し、対象外の制度を過度に勧めたり、採択可能性を不当に高く見せたり、不適切な申請を促したりする余地もあります。

本プロジェクトは、特定の職種や適正な専門サービスを否定するものではありません。「誰が言ったか」ではなく「公的情報で何が確認できるか」を判断の基準にし、企業自身が候補と根拠を検証できる環境をつくります。

誰でも同じスタートラインから探せるようにする

経営者や総務担当者だけでなく、開発、製造、営業、情報システム、新規事業など、実際に新しい取り組みを考えた人が、その場で支援制度の調査を始められることを重視します。

社会的ミッション

補助金は税金などの公的資源を原資としながら、制度を発見し、要件を読み解き、申請準備へ進むまでの情報コストには大きな差があります。本プロジェクトは、その差を小さくするための公共的なデジタル基盤を目指します。

私たちが増やしたいのは、申請件数そのものではありません。次の状態を増やすことが社会への貢献だと考えています。

  • 小規模な事業者や地域企業も、公的情報へ同じ入口から到達できる
  • 候補を勧めた理由と参照した出典を、利用者自身が検証できる
  • 対象外や未確認の可能性を隠さず、無理な申請や過大な期待を減らす
  • 専門家へ相談するとき、論点と必要資料が整理され、本来の専門判断に時間を使える
  • API仕様変更や誤判定の知見をオープンソースへ還元し、同じ失敗の繰り返しを減らす
守る原則
  • 特定の制度や支援事業者を、対価を理由に優先表示しません
  • 採択可能性を断定したり、申請資格があるように誤認させたりしません
  • 公開情報、利用者の申告、コードによる計算、AIの推論を区別します
  • 必要以上の個人情報や企業の機密情報を求めません
  • AIを最終決定者にせず、申請者、専門家、実施機関による確認につなげます
  • 誤りを再現できるテストと変更履歴を残し、改善を公共の知見にします

目指す利用体験

例えば、利用者が次のように相談します。

株式会社○○で、製造ラインにAIカメラを導入したい。利用できそうな補助金はありますか?

システムは、最終的に次の流れを実現します。

会社名と実施したい事業

↓ 国税庁 法人番号システムWeb-API 法人候補・法人番号・正式名称・所在地を確認 ↓ 候補が複数の場合は利用者に確認 ↓ gBizINFO 法人の公開情報・認定・過去の補助金情報などを取得 ↓ Jグランツ 現在公開されている補助金候補を検索 ↓ AI 一致する条件、未確認事項、公式情報へのリンクを整理 ↓ 利用者 最新の公募要領を確認して申請可否を判断

大量の入力フォームを最初に要求せず、公的情報から確認できない項目だけを追加で質問する体験を目指します。

利用する公的データ

Jグランツ

補助金制度側の情報を取得します。

  • 補助金候補の検索
  • 対象地域や利用目的による絞り込み
  • 受付状況と申請期間の確認
  • 制度詳細と公式ページの取得
経済産業省の法人情報データベース(gBizINFO)

企業側の公開情報を取得します。

  • 法人基本情報
  • 所在地などの企業属性
  • 認定情報
  • 過去の補助金情報
  • 調達情報などの法人活動情報
EDINET

利用者から申告された親会社候補を、金融庁へ提出された有価証券報告書で検証します。

  • EDINETコード一覧から親会社候補を特定
  • 最新の有価証券報告書にある関係会社情報を確認
  • 対象会社名、関係を示す文脈、比率表記、書類管理番号を根拠として返却
  • 未検出の場合も「資本関係なし」と断定しない
  • 補助金ごとの「みなし大企業」規定の確認を促す
  • 対象会社の行に属する比率だけを抽出し、重要な根拠を最大2件に限定

EDINETを未知の親会社を自動発見するデータベースとしては使用しません。全国の企業関係データを複製・蓄積せず、利用者が示した候補について各省庁の最新版を照会する方針です。

国税庁 法人番号システムWeb-API

法人を正確に特定するための基礎情報を取得します。

  • 会社名から法人候補を検索
  • 法人番号、正式な商号・名称、本店所在地を確認
  • 同名法人を所在地などで識別
  • 名称・所在地の変更や法人状態を確認

法人名検索で複数候補が見つかった場合、システムが一社を推測で選ぶことはせず、候補を提示して利用者に確認します。

開発状況

本プロジェクトは開発中です。完成している機能と構想段階の機能を区別して公開します。

実装済み
  • Cloudflare Workers上で動作するMCPサーバー
  • Jグランツ公開情報を利用した補助金検索
  • 補助金詳細の取得
  • 受付中制度、対象地域、業種、利用目的などによる候補整理
  • gBizINFO連携の基本実装
  • 国税庁法人番号API Ver.4の法人名検索・法人番号照会(実IDによる接続検証は未実施)
  • 法人情報と補助金情報を用いた適合度評価の基本実装
  • gBizINFOによる法人名・都道府県・市区町村検索
  • 同名法人の候補提示と、曖昧な場合に自動決定しない制御
  • 公開情報が不足する法人を利用者入力で補完し、項目ごとの出典と矛盾を表示
  • 所在地の完全一致・包含関係・行政区域不一致を区別し、詳細住所の省略を矛盾扱いしない
  • 法人状態が未提供の場合の断定防止と、法人検索の次ページ候補の可能性を表示
  • 業種大分類コード、未登録記号、資格等級などの正規化
  • gBizINFOの8種類の活動別APIから、認定、表彰、事業所、財務、特許、調達、補助金、職場情報を取得
  • 法人検索の活動件数と専用APIの取得件数を比較し、未取得・部分障害を明示
  • ChatGPT Workspaceでの限定配布と動作確認
  • 利用者が申告した親会社候補をEDINETの有価証券報告書で検証
  • EDINETで未検出の場合に、資本関係なしと誤って断定しない制御
検証中
  • 複数の業種・規模・地域の法人を用いた実データ検証
  • 利用者入力と公的データが矛盾した場合の対話設計
今後の予定
  • 法人の正式情報とgBizINFO情報の統合
  • 国税庁データとgBizINFOの情報差分の明示
  • 補助金情報の変更検知と定期通知
  • ChatGPTのスケジュールやWorkを利用した継続的な案件管理
  • 自治体独自制度、雇用関係助成金、公的融資、税制優遇などへの対象拡大

MCPツール

現在のMCPサーバーでは、次のツールを中心に提供します。

ツール役割状況
search_subsidiesJグランツから補助金候補を検索する実装済み
get_subsidy_detail選択した補助金の詳細を取得する実装済み
get_subsidy_documents登録済みの公募回別公式資料リンク・説明・確認状態をD1から取得する0.12.0追加・初期設定は無効
search_companies経済産業省の法人情報データベースで会社名・所在地から法人候補を検索する実装済み
get_company_profile法人番号から同データベースの企業情報を取得する実装済み・実API検証済み
get_company_activities法人番号から同データベースの活動情報を取得し、種類別件数と取得状況を返す実装済み
evaluate_subsidy_fit_for_company公開法人情報と利用者の補完情報を基に一致点・不足・出典・矛盾を整理する実装済み・実API検証済み
verify_corporate_relationship利用者が申告した親会社候補をEDINET提出書類で検証し、みなし大企業規定の確認につなげる実装済み
assess_deemed_large_enterprise_eligibility制度別の公式要件と確認済み資本関係を照合し、みなし大企業の扱いを整理する実装済み
prepare_professional_consultation未確認論点を、専門家への質問・準備資料・相談期限を含む引き継ぎメモにする実装済み
record_official_selection_statistics公募回別の申請件数・採択件数を公的出典とともに保存し、比較可能な場合だけ公式採択率を計算する実装済み
get_official_selection_statisticsJグランツIDから過去の公式採択実績と出典を参照する実装済み
estimate_program_selection_outlook過去最大3回の公式実績から制度全体の参考範囲をルール算定する実装済み
search_corporate_identities国税庁で法人名・所在地コードから法人候補を検索する実装済み・実API検証待ち
get_corporate_identity国税庁で法人番号から最新の正式名称・所在地・閉鎖情報を取得する実装済み・実API検証待ち

ツールの返却結果は候補選定や確認作業を支援するものであり、採択や受給資格を保証しません。みなし大企業については、100%子会社という事実だけで全制度から除外せず、候補制度の最新の公募要領や公式FAQにある扱いと照合します。課税所得や役員兼務など、公開情報で確認できない事項は推定しません。

適合判定で未確認事項が残る場合は、単に「専門家へ相談してください」と案内するのではなく、相談理由、具体的な質問、準備資料、相談期限を含む専門家相談メモを返します。顧問の社会保険労務士などを一次相談窓口とし、雇用・賃金は社会保険労務士、決算・研究開発費・資本関係は税理士または公認会計士、制度固有の解釈は実施機関へ振り分けます。AIは可能性と論点を提示し、申請者と人間の専門家が最終判断と責任を担います。非公開資料の内容はMCPやD1へ保存しません。

構成

ChatGPTなどのMCPクライアント

↓ Streamable HTTP Cloudflare Workers上のMCPサーバー ├─ Jグランツ ├─ gBizINFO ├─ Cloudflare D1(Jグランツ公開情報のキャッシュ、任意) ├─ EDINET └─ 国税庁 法人番号システムWeb-API

公開情報キャッシュ

公式資料ナビの実装・設定は運用手順を参照してください。資料リンクは既存キャッシュから分離したD1の4テーブルに保存します。公開取得は読み取りだけで、収集・AI分類は別の定期処理です。公式ファイルの本体や利用者の企業情報は保存しません。

厚労省の雇用関係助成金について、Jグランツと独立した公式HTML/PDF収集・D1カタログと、統合検索 discover_subsidies・詳細 get_discovered_subsidy_detail を追加しています。初期対象は3系列17コースで、初期設定では全追加機能を無効にしています。改善仕様と実装・運用手順を参照してください。既存プラグインを維持したMCP先行配備、収集のみの開始、公開版の検証、新ツールの段階公開を独立して行えます。ローカル検証済みで、本番公開・OpenAI反映・年度別条件の照合完了を示すものではありません。

専門家への相談に進む場合、prepare_professional_consultationはreadyToSendMessage(件名・本文)とnextActionを返します。Web検索で確認した情報からも利用でき、制度名、参照URL、確認済み事項、未確認論点、準備資料、既知の期限を相談文に引き継ぎます。本文では対応可否、専門外の場合の紹介、必要資料の共有方法、初期相談の費用と進め方を尋ねます。任意のcompany_nameとpublic_business_summaryには公開情報のみを指定し、不明な値は省略します。既存の適合判定が返すprofessionalConsultationにも同じ相談文が含まれます。presentationGuidanceに従い、検討・相談に進む場面でコピーできる文面を提示します。候補探索のたびに長文を表示する必要はなく、相談論点がない場合の文面はnullです。相談文の保存・自動送信は行いません。

Jグランツの検索結果と補助金詳細は、Cloudflare D1へ読み取りキャッシュとして保存できます。public_api_cacheには、正規化された公開補助金情報、取得日時、内容ハッシュ、通常の有効期限、および公式API障害時に限って使用できる失効猶予期限を保存します。

Jグランツ検索キャッシュには、検索対象となった会社名、法人番号、企業プロフィール、事業計画、会話履歴、利用者識別情報、企業ごとの評価結果を保存しません。ただし、EDINETで検証した公開企業情報と資本関係については、根拠文書とともにcompanies、company_relations、edinet_documentsへ保存します。これはJグランツ検索キャッシュとは別の、公開情報に基づく証拠層です。

検索条件はキャッシュ本文へ保存せず、CACHE_KEY_SECRETを使ったHMAC-SHA256のキャッシュキーへ変換します。HMACは検索条件を暗号化するものではなく、元の条件を保存せずに同一条件のキャッシュを参照するための索引です。CACHE_KEY_SECRETが未設定の場合、検索結果のD1キャッシュは安全のため使用しません。補助金詳細は、公開されたJグランツ補助金ID単位でキャッシュします。

D1を有効にする場合は、migrations/0002_public_api_cache.sqlを適用したデータベースをPUBLIC_CACHEとしてWorkerへバインドしてください。既存のsubsidy_ai_relationsバインディングがある環境では、同じ公開情報用D1を利用できます。検索キャッシュにはCACHE_KEY_SECRETをCloudflare Secretとして設定します。

D1またはキャッシュ用Secretが未設定の場合や、キャッシュの読み書きに失敗した場合でも、MCPはJグランツ公式APIから直接取得して動作します。期限切れキャッシュは通常時には使用せず、公式APIのタイムアウトや一時的な障害時に限り、古い情報であることを明示して失効猶予期限まで利用します。content_hashは取得内容の比較や将来の変更検知に使用するメタデータであり、現時点ではデータの真正性や改ざん防止を保証するものではありません。

採択実績エビデンス層

migrations/0003_subsidy_research_schema.sqlを適用すると、公募回別の申請件数、採択件数、公式採択率、出典URL、取得日、内容ハッシュ、計算根拠をD1へ保存できます。公的資料の本文やPDF、企業情報、利用者情報は保存しません。同じ公募回・同じ対象範囲の申請件数と採択件数が揃う場合だけ公式採択率をコードで計算します。公開MCPからの誤情報混入を抑えるため、公的機関ドメインの公式HTML・テキスト・JSONをWorker自身が取得し、根拠文の一致を確認できた場合だけ保存します。PDFは現段階では自動照合せず、保存を停止します。

見通し機能は過去最大3回の公式実績の加重平均を基準に、公式に確認できた予算、補助上限、対象範囲の変化だけを限定的に補正します。これは制度全体の参考範囲であり、個別企業の採択確率ではありません。申請資格が未確定、条件付き、対象外可能性ありの場合は計算しません。

本プロジェクトは、特定のAI製品だけに閉じた実装ではなく、MCPに対応する他のクライアントからも利用できる構造を目指します。

開発環境

必要なもの
  • Node.js
  • npm
  • Cloudflare Workers / Wrangler
  • gBizINFO APIトークン(gBizINFO機能の実行時)
  • EDINET APIキー(資本関係検証の実行時)
  • 国税庁法人番号システムWeb-APIのアプリケーションID(国税庁機能の実行時)
セットアップ
npm install

npm run typecheck

利用可能な起動・テスト・デプロイ用コマンドは、package.json の scripts を確認してください。

秘密情報

APIトークンやアプリケーションIDは、ソースコードやGit履歴に保存しないでください。

  • ローカル環境では、Git管理対象外の環境変数ファイルを使用する
  • CloudflareではSecretsとして登録する
  • ログ、エラーメッセージ、MCPレスポンスへ秘密情報を出力しない
  • 漏えいが疑われる場合は、直ちに失効・再発行する

現在使用する環境変数は次のとおりです。

GBIZINFO_API_TOKEN

NTA_APPLICATION_ID CACHE_KEY_SECRET EDINET_API_KEY OPENAI_APPS_CHALLENGE_TOKEN

OPENAI_APPS_CHALLENGE_TOKENは、OpenAI PlatformでMCPサーバーのドメイン所有を確認する際に表示された値を設定します。値はリポジトリへ保存せず、Cloudflare Secretとして登録してください。

npx wrangler secret put OPENAI_APPS_CHALLENGE_TOKEN

npm run deploy

デプロイ後、https:// /.well-known/openai-apps-challengeが検証トークンだけをプレーンテキストで返すことを確認してから、OpenAI Platformで検証を実行します。未設定時、このURLは404を返します。

国税庁APIの設定と利用

発行された13桁のIDをNTA_APPLICATION_IDへ設定します。ローカル開発ではGit管理対象外の.dev.varsにNTA_APPLICATION_ID=発行されたIDを記入してください。本番では次のコマンドの入力プロンプトにIDを入力します(IDそのものをコマンド引数やGitへ記録しないでください)。

npx wrangler secret put NTA_APPLICATION_ID

コードを公開する際はnpm run deployを実行します。ID未設定の場合、国税庁ツールは設定エラーを返します。他のデータソース用のIDとは別の設定です。

  • search_corporate_identities: name、任意のaddress_code(東京都なら13、千代田区なら13101)、page(1から)を指定。部分一致検索で、閉鎖法人も含めます。名称の半角英数字等は全角化して送信します。
  • 検索結果はAPIの分割単位で返します。mayHaveMoreがtrueの場合は同じ条件でnextPageを指定します。候補を自動決定せず所在地と法人番号で確認してください。
  • get_corporate_identity: corporate_numberに13桁の法人番号を指定。履歴を含めず最新情報を取得します。該当なしはnot_foundです。
  • 閉鎖情報、承継先、国外所在地、検索対象除外、名称・所在地のイメージIDも返します。「閉鎖情報なし」は営業実態や申請資格を保証しません。
  • 確定した法人番号を既存のget_company_profileへ渡すとgBizINFOの企業情報を取得できます。両データソースの自動統合・差分判定は今後の実装です。
  • 15秒のタイムアウト、HTTPエラー分類、応答検証を行います。上流応答本文・例外・ID付きURLをエラー応答へ転記しません。国税庁の仕様上IDは送信URLに含まれるため、外向きリクエストURLを独自のログや監視へ記録しないでください。

利用者への回答では結果のsourceとnoticeを表示します。

このサービスは、国税庁法人番号システムのWeb-API機能を利用して取得した情報をもとに作成しているが、サービスの内容は国税庁によって保証されたものではない

仕様参照: 国税庁Web-API、Ver.4仕様書、共通のリクエスト・応答仕様。CSV/UTF-8の30項目を解析します。モックテストはnpm testで実行できます。実ID設定後は、既知の法人番号の名称・所在地を公式サイトと比較し、名称検索と該当なしも確認してください。

テスト方針

正常に結果が返ることだけでなく、誤った企業や制度を選ばないことを重視します。

  • 受付中と受付終了の制度
  • 全国対象制度と地域限定制度
  • 大企業と中小企業
  • 同名法人が複数存在するケース
  • 公開情報が少ない法人
  • 存在しない法人番号
  • APIトークンの未設定・不正・失効
  • 外部APIの停止、タイムアウト、仕様変更
  • 条件を確認できない場合に断定しないこと
  • 同名の親会社候補を自動決定しないこと
  • EDINET提出書類で未検出でも、資本関係なしと断定しないこと
  • EDINET APIキーをレスポンスやログに含めないこと
  • Web検索など、プラグインを呼ぶべきでない依頼

##

Only the beginning is shown; read the rest in the repo

Ask PopNx