Puente MCP Hub 利用ガイド

AIエージェント連携仕様書 — 補助金AIを事例とした実装ガイド

v1.0 | 2026年4月6日

目次

1.Puente MCP Hub とは 2.クイックスタート(3ステップ) 3.APIエンドポイント一覧(全4 MCP) 4.認証とセキュリティ 5.事例:補助金AI — 連携仕様書 6.各MCP 詳細リファレンス 7.エラーハンドリング 8.料金プランとAPI制限 9.FAQ

1. Puente MCP Hub とは

Puente MCP Hub は、日本の政府公開データ(e-Gov法令API、国税庁API、厚労省API、国交省API)を MCP(Model Context Protocol) を通じて、AIエージェントに直結するSaaS型プラットフォームです。

AIエージェント
Claude / ChatGPT / Gemini
Puente MCP Hub
api.puentemcp.com
政府API
e-Gov / NTA / MHLW / MLIT

何が解決されるか: これまで法令検索、税率確認、労務規定チェック、不動産法規参照は手作業でした。Puente MCP Hub を使えば、AIエージェントが自然言語の質問に対して政府データを自動で取得・引用し、専門業務を大幅に効率化できます。

2. クイックスタート(3ステップ)

Step 1: アカウント作成 & API KEY取得

puentemcp.com/signup でアカウント作成後、ダッシュボード > 設定画面から Puente MCP Hub API KEY をコピーします。

Step 2: APIリクエストを送信

# 法令MCP — 「契約」に関する法令を検索
curl -X POST https://api.puentemcp.com/v1/hourei \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "action": "search",
    "params": { "query": "契約" }
  }'

Step 3: AIエージェントに組み込む

取得したデータをAIエージェントの Tool / Function Calling として登録し、自然言語での法令検索・税務照会を実現します(詳細はセクション5の補助金AI事例を参照)。

3. APIエンドポイント一覧(全4 MCP)

ベースURL: https://api.puentemcp.com/v1

MCP エンドポイント アクション 対象プラン
⚖️法令 /v1/hourei search, get, history, categories Free〜
🏢税法 /v1/zeiho search, rate, corporate Standard〜
💊労務 /v1/romu search, insurance, medical Standard〜
🏠不動産 /v1/fudosan search, law, zoning, price Enterprise〜

全エンドポイント共通で POST メソッドを使用します。リクエストボディは以下の形式です:

{
  "action": "search",          // 実行するアクション
  "params": {
    "query": "検索キーワード"   // 検索条件
  }
}

4. 認証とセキュリティ

認証方式

すべてのAPIリクエストに Authorization: Bearer {API_KEY} ヘッダーが必要です。API KEYはダッシュボードの設定画面から取得できます。

セキュリティ仕様

項目仕様
認証JWT (HMAC-SHA256) — Bearer トークン
CORSpuentemcp.com ドメインのみ許可(APIキー経由の外部アクセスは許可)
レート制限60リクエスト/分/IP
入力バリデーションaction・query パラメータの型・長さチェック
通信HTTPS (TLS 1.2+) — Cloudflare経由

5. 事例:補助金AI — 連携仕様書

ユースケース概要: 中小企業の経営者が「自社で使える補助金を探して、申請要件をチェックしたい」とAIに質問。補助金AIがPuente MCP Hubの複数MCPを連携して、法令根拠の確認、税法上の優遇措置、労務関連の要件を横断的に調査・回答します。

5.1 システム構成図

補助金AI エージェント
Claude / GPT-4 + Function Calling
↓ Tool Call
法令MCP
/v1/hourei
税法MCP
/v1/zeiho
労務MCP
/v1/romu
不動産MCP
/v1/fudosan
↓ Puente MCP Hub 経由
e-Gov法令API 国税庁API 厚労省API 国交省API

5.2 補助金AI の処理フロー

ユーザーが「IT導入補助金を申請したい。うちの会社(従業員15名、年商2億)で使える?要件を教えて」と質問した場合:

Phase 1 — 法令根拠の確認(法令MCP)

// Step 1: 補助金関連法令を検索
POST https://api.puentemcp.com/v1/hourei
{
  "action": "search",
  "params": { "query": "中小企業等経営強化法" }
}

// レスポンス例
{
  "status": "ok",
  "count": 2,
  "laws": [
    {
      "id": "HR-L020",
      "name": "中小企業等経営強化法",
      "category": "産業法",
      "summary": "中小企業の経営力向上を支援する法律。経営革新計画、経営力向上計画の認定制度を規定。"
    }
  ],
  "egov": {
    "available": true,
    "totalCount": 3,
    "laws": [...]
  },
  "source": "Puente MCP Hub 法令データベース + e-Gov法令API v2"
}
// Step 2: 法令全文を取得して申請根拠条文を特定
POST https://api.puentemcp.com/v1/hourei
{
  "action": "get",
  "params": { "query": "平成十一年法律第十八号" }
}

Phase 2 — 税法上の優遇措置を確認(税法MCP)

// Step 3: 補助金に関連する税制優遇を検索
POST https://api.puentemcp.com/v1/zeiho
{
  "action": "search",
  "params": { "query": "租税特別措置" }
}

// Step 4: 法人税率を確認(補助金受給時の課税処理用)
POST https://api.puentemcp.com/v1/zeiho
{
  "action": "rate",
  "params": { "query": "法人税" }
}

// レスポンス例
{
  "status": "ok",
  "rates": [
    { "tax": "法人税", "bracket": "年800万円以下(中小法人)", "rate": "15%(軽減税率)" },
    { "tax": "法人税", "bracket": "年800万円超", "rate": "23.2%" }
  ],
  "updatedAt": "2026-04-01",
  "source": "国税庁公表データ"
}
// Step 5: 法人番号で申請企業を特定
POST https://api.puentemcp.com/v1/zeiho
{
  "action": "corporate",
  "params": { "query": "株式会社サンプル" }
}

Phase 3 — 労務要件の確認(労務MCP)

// Step 6: 従業員の社会保険適用状況を確認
POST https://api.puentemcp.com/v1/romu
{
  "action": "insurance",
  "params": { "query": "雇用保険" }
}

// レスポンス例
{
  "status": "ok",
  "insurances": [
    {
      "name": "雇用保険",
      "operator": "厚生労働省",
      "rate": "1.55%(一般の事業)",
      "employerShare": "0.95%",
      "employeeShare": "0.60%",
      "note": "建設業・農林水産業は異なる料率"
    }
  ],
  "updatedAt": "2026-04-01",
  "source": "厚生労働省・日本年金機構公表データ"
}

// Step 7: 労働関連法令(賃金引上げ要件の確認)
POST https://api.puentemcp.com/v1/romu
{
  "action": "search",
  "params": { "query": "最低賃金" }
}

5.3 AIエージェント側の実装例(Python)

import requests
import json

# Puente MCP Hub 接続設定
PUENTE_API_KEY = "YOUR_PUENTE_MCP_HUB_API_KEY"
BASE_URL = "https://api.puentemcp.com/v1"
HEADERS = {
    "Authorization": f"Bearer {PUENTE_API_KEY}",
    "Content-Type": "application/json"
}

def call_mcp(mcp_name: str, action: str, query: str) -> dict:
    """Puente MCP Hub の各MCPを呼び出す共通関数"""
    url = f"{BASE_URL}/{mcp_name}"
    payload = {
        "action": action,
        "params": {"query": query}
    }
    response = requests.post(url, headers=HEADERS, json=payload)
    response.raise_for_status()
    return response.json()


# ---- 補助金AI: Tool定義 (OpenAI Function Calling 形式) ----

tools = [
    {
        "type": "function",
        "function": {
            "name": "search_hourei",
            "description": "日本の法令を検索する。補助金の法的根拠、申請要件の法令確認に使用。",
            "parameters": {
                "type": "object",
                "properties": {
                    "query": {"type": "string", "description": "法令名または検索キーワード"}
                },
                "required": ["query"]
            }
        }
    },
    {
        "type": "function",
        "function": {
            "name": "get_tax_rate",
            "description": "税率情報を取得する。補助金受給時の課税処理、税制優遇の確認に使用。",
            "parameters": {
                "type": "object",
                "properties": {
                    "tax_type": {"type": "string", "description": "税の種類(所得税/法人税/消費税/相続税/贈与税)"}
                },
                "required": ["tax_type"]
            }
        }
    },
    {
        "type": "function",
        "function": {
            "name": "check_insurance",
            "description": "社会保険料率を確認する。補助金申請時の労務コンプライアンスチェックに使用。",
            "parameters": {
                "type": "object",
                "properties": {
                    "insurance_type": {"type": "string", "description": "保険の種類"}
                },
                "required": ["insurance_type"]
            }
        }
    },
    {
        "type": "function",
        "function": {
            "name": "search_corporate",
            "description": "法人番号で企業情報を検索する。補助金申請企業の特定に使用。",
            "parameters": {
                "type": "object",
                "properties": {
                    "company_name": {"type": "string", "description": "企業名"}
                },
                "required": ["company_name"]
            }
        }
    }
]

# ---- Tool実行ハンドラ ----

def handle_tool_call(name: str, args: dict) -> str:
    if name == "search_hourei":
        result = call_mcp("hourei", "search", args["query"])
    elif name == "get_tax_rate":
        result = call_mcp("zeiho", "rate", args["tax_type"])
    elif name == "check_insurance":
        result = call_mcp("romu", "insurance", args["insurance_type"])
    elif name == "search_corporate":
        result = call_mcp("zeiho", "corporate", args["company_name"])
    else:
        result = {"error": "Unknown tool"}
    return json.dumps(result, ensure_ascii=False)


# ---- Claude (Anthropic) での連携例 ----

from anthropic import Anthropic

client = Anthropic()

def subsidy_ai_chat(user_question: str):
    """補助金AIのメインチャット関数"""
    messages = [{"role": "user", "content": user_question}]

    response = client.messages.create(
        model="claude-sonnet-4-6",
        max_tokens=4096,
        system="""あなたは補助金申請の専門AIアシスタントです。
Puente MCP Hubの各ツールを使って、法令根拠・税制優遇・
労務要件を横断的に調査し、正確な情報を提供してください。""",
        tools=tools,
        messages=messages
    )

    # Tool Callを処理してループ
    while response.stop_reason == "tool_use":
        tool_results = []
        for block in response.content:
            if block.type == "tool_use":
                result = handle_tool_call(block.name, block.input)
                tool_results.append({
                    "type": "tool_result",
                    "tool_use_id": block.id,
                    "content": result
                })

        messages.append({"role": "assistant", "content": response.content})
        messages.append({"role": "user", "content": tool_results})

        response = client.messages.create(
            model="claude-sonnet-4-6",
            max_tokens=4096,
            tools=tools,
            messages=messages
        )

    return response.content[0].text


# 実行例
answer = subsidy_ai_chat(
    "IT導入補助金を申請したいです。従業員15名、年商2億の会社ですが、要件を教えてください。"
)
print(answer)

5.4 JavaScript (Node.js) での実装例

// Puente MCP Hub クライアント (Node.js)
const PUENTE_API_KEY = process.env.PUENTE_MCP_HUB_API_KEY;
const BASE_URL = "https://api.puentemcp.com/v1";

async function callMcp(mcpName, action, query) {
  const res = await fetch(`${BASE_URL}/${mcpName}`, {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${PUENTE_API_KEY}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      action,
      params: { query },
    }),
  });
  if (!res.ok) throw new Error(`API Error: ${res.status}`);
  return res.json();
}

// 使用例: 法令検索 + 税率確認を並列実行
async function checkSubsidyRequirements(keyword) {
  const [laws, taxRates, insurance] = await Promise.all([
    callMcp("hourei", "search", keyword),
    callMcp("zeiho", "rate", "法人税"),
    callMcp("romu", "insurance", "雇用保険"),
  ]);

  return { laws, taxRates, insurance };
}

6. 各MCP 詳細リファレンス

⚖️6.1 法令MCP(hourei)Free〜

e-Gov法令API v2 と連携。日本の全法令を検索・取得・改正履歴確認が可能。

アクション説明params.query
searchキーワードで法令を検索検索キーワード(法令名、分野など)
get法令番号を指定して全文取得法令番号(例: 平成十一年法律第十八号)
history法令の改正履歴を取得法令ID
categories法令カテゴリ一覧を取得不要(空文字可)

リクエスト・レスポンス例

// リクエスト
POST /v1/hourei
{ "action": "categories", "params": { "query": "" } }

// レスポンス
{
  "status": "ok",
  "categories": [
    { "name": "憲法", "description": "日本国憲法および関連法規" },
    { "name": "基本法", "description": "民法・商法等の私法の基本" },
    { "name": "商事法", "description": "会社法・金融商品取引法等" },
    { "name": "刑事法", "description": "刑法・刑事訴訟法等" },
    { "name": "行政法", "description": "行政手続法・行政不服申立法等" },
    { "name": "情報法", "description": "個人情報保護法・電子署名法等" },
    { "name": "知的財産法", "description": "著作権法・特許法・商標法等" },
    { "name": "消費者法", "description": "消費者契約法・特定商取引法等" },
    { "name": "不動産法", "description": "宅建業法・建築基準法等" },
    { "name": "労働法", "description": "労働基準法・労働契約法等" },
    { "name": "税法", "description": "所得税法・法人税法・消費税法等" }
  ],
  "source": "Puente MCP Hub 法令カテゴリ定義"
}

🏢6.2 税法MCP(zeiho)Standard〜

国税庁法人番号API + e-Gov法令API と連携。税法検索、税率情報取得、法人番号検索が可能。

アクション説明params.query
search税法関連法令を検索キーワード(所得税/法人税/消費税 等)
rate税率テーブルを取得税の種類(所得税/法人税/消費税/相続税/贈与税)
corporate法人番号で企業検索企業名

💊6.3 労務MCP(romu)Standard〜

厚生労働省データ + e-Gov法令API と連携。労働法検索、社会保険料率、医療機関検索が可能。

アクション説明params.query
search労働関連法令を検索キーワード(労働基準法/育児介護 等)
insurance社会保険料率テーブルを取得保険種類(健康保険/厚生年金/雇用保険 等)
medical医療機関を検索施設名/種別/住所

🏠6.4 不動産MCP(fudosan)Enterprise〜

国土交通省不動産API + e-Gov法令API と連携。建築基準、不動産法規、用途地域、不動産価格の検索が可能。

アクション説明params.query
search建築基準データを検索キーワード(耐震基準/容積率/建ぺい率 等)
law不動産関連法令を検索キーワード(宅建業法/建築基準法 等)
zoning用途地域情報を取得地域名(商業地域/住居専用 等)
price不動産価格データを取得地域コード

7. エラーハンドリング

HTTPステータス意味対処
400リクエスト不正(action/queryが不正)パラメータを確認してください
401認証エラー(APIキー不正・期限切れ)API KEYを再取得してください
403プラン不足(上位プランが必要なMCP)プランをアップグレードしてください
429レート制限超過(60req/分)リクエスト間隔を空けるか、プランを確認
500サーバーエラーしばらく待って再試行してください
// エラーレスポンス例
{
  "error": "Unknown action",
  "availableActions": ["search", "get", "history", "categories"]
}

8. 料金プランとAPI制限

項目FreeStandardEnterprise
月額(税別)¥0¥150,000¥500,000〜
初期費用(税別)無料¥300,000¥1,200,000
利用MCP法令のみ法令 + 税法 + 労務全4MCP
月間コール数1,00050,000無制限
APIキー本数1本3本10本
SLAなし99.5%99.5%
カスタムMCP開発対応可(別途見積)

9. FAQ

Q: どのAIエージェントに対応していますか?

Claude(Anthropic)、ChatGPT(OpenAI)、Gemini(Google)など、HTTP APIを呼び出せるAIエージェントすべてに対応しています。Function Calling / Tool Use 機能を持つモデルとの組み合わせが最適です。

Q: MCP(Model Context Protocol)とは何ですか?

Anthropic社が提唱するオープンプロトコルで、AIモデルが外部データソースやツールに安全に接続するための標準仕様です。Puente MCP HubはこのMCPに準拠し、政府データへのアクセスを標準化しています。

Q: Freeプランでどこまで試せますか?

法令MCP(e-Gov法令API連携)を月1,000コールまで無料でご利用いただけます。法令検索、条文取得、改正履歴確認、カテゴリ一覧の全アクションが利用可能です。

Q: API KEYはどこで取得しますか?

ログイン後、ダッシュボード > 設定 > 「Puente MCP Hub API KEY」セクションからコピーできます。

Q: カスタムMCPサーバーの開発は依頼できますか?

はい。Enterpriseプランのお客様を対象に、業界特化型のカスタムMCPサーバー開発を承っております。詳しくはお問い合わせフォームからご連絡ください。