MCP接続ガイド
Model Context Protocol(MCP)経由で、Claude・ChatGPT等のAIツールから直接、防災DBの災害リスクデータを利用できます。「豊洲三丁目の災害リスクを教えて」と聞くだけで、AIが自動でツールを呼び出します。
エンドポイント
| URL | https://ai.bousaidb.jp/mcp |
|---|---|
| プロトコル | MCP Streamable HTTP(JSON-RPC 2.0、protocolVersion 2025-03-26) |
| 認証 | APIキー(brdb_プレフィックス、Authorization: BearerまたはX-API-Keyヘッダー)、またはOAuth(claude.ai / ChatGPT接続時に自動) |
| 認証不要のメソッド | initialize / tools/list / ping |
利用できるツール
assess_risk
住所(または緯度経度)を1件指定して、地震・洪水・津波・土砂災害・高潮・液状化の6種のリスクスコアと、標高・最寄りの避難場所・データ出典を取得します。/v1/riskと同じデータを返します。
compare_locations
2〜5件の住所を一括で比較します。内部的には assess_risk を件数分呼び出すため、消費するリクエスト数(レート制限)も比較地点数と同じになります。移転先の検討やBCP拠点選定に向いています。
create_disaster_page 秘密URL発行
自宅・職場など最大3拠点のラベルと住所、世帯人数を渡すと、リスク要約・避難所・備蓄目安をまとめたマイ防災ページを秘密URL付きで新規作成します。住所の番地レベルの原文はサーバーに保存されません。
get_disaster_page
作成済みのマイ防災ページを page_token(秘密URLのトークン部分)で取得します。世帯人数から計算した備蓄目安(水・主食・携帯トイレ)も含みます。
add_location
作成済みのマイ防災ページに拠点を1件追加します(最大3拠点)。実家・避難先候補などを後から追加したい時に使います。
会話例
ツール名を意識する必要はありません。チャットで日本語のまま話しかければ、AIが自動で適切なツールを選びます。
- 「渋谷区の災害リスクを教えて」→
assess_risk - 「新宿区と豊洲、どっちがBCP拠点として安全?」→
compare_locations - 「自宅と職場の防災ページを作って」→
create_disaster_page - 「さっき作った防災ページ、もう一度見せて」→
get_disaster_page - 「防災ページに実家も追加して」→
add_location
claude.ai(ウェブ版)で接続
設定 → コネクタ を開く
claude.aiにログイン → プロフィールアイコン → Settings → Connectors
カスタムコネクタを追加
「Add custom connector」から https://ai.bousaidb.jp/mcp を入力します。
「接続」をクリック OAuth
Googleアカウントでのサインイン画面が表示されます。サインインするとAPIキーが自動発行され、接続が完了します(APIキーを手動で発行・入力する必要はありません)。
話しかける
チャットで「渋谷区の災害リスクを教えて」と聞くだけで、防災DBのツールが自動的に呼び出されます。
Claude Desktopで接続 APIキー
先に/developersでAPIキーを発行してください。Claude Desktopは現時点でリモートMCPのネイティブ接続に対応していないため、mcp-remoteパッケージ(Node.js 18以上が必要)経由で接続します。
設定ファイル(macOS: ~/Library/Application Support/Claude/claude_desktop_config.json / Windows: %APPDATA%\Claude\claude_desktop_config.json)に追加:
{
"mcpServers": {
"bousaidb": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://ai.bousaidb.jp/mcp",
"--header",
"Authorization: Bearer YOUR_API_KEY"
]
}
}
}
Claude Code(CLI)で接続 APIキー
ターミナルで以下を実行:
claude mcp add bousaidb \
--transport http \
--url https://ai.bousaidb.jp/mcp \
--header "Authorization: Bearer YOUR_API_KEY"
または .claude/settings.local.json に直接記述することもできます:
{
"mcpServers": {
"bousaidb": {
"type": "http",
"url": "https://ai.bousaidb.jp/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}
ChatGPTで接続 OAuth
Developer Modeを有効化
設定 → アプリ&コネクタ → 高度な設定 → Developer Modeをオン(Plus / Pro / Business / Enterprise / Eduプランが必要)
MCPコネクタを追加
設定 → コネクタ → 作成する → URLに https://ai.bousaidb.jp/mcp を入力し、認証は「OAuth」を選択します。
Googleアカウントで認証
claude.aiと同様にGoogleサインイン画面が表示されます。サインインすると接続が完了します。
curl / 直接接続(API/Codex等) APIキー
標準的なMCP Streamable HTTPリクエストです。initialize と tools/list は認証不要ですが、tools/callにはAPIキーが必要です。
# 1. Initialize(認証不要)
curl -X POST https://ai.bousaidb.jp/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize",
"params":{"protocolVersion":"2025-03-26","capabilities":{},
"clientInfo":{"name":"my-app","version":"1.0"}}}'
# 2. リスク評価(要APIキー)
curl -X POST https://ai.bousaidb.jp/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call",
"params":{"name":"assess_risk",
"arguments":{"address":"東京都渋谷区"}}}'
トラブルシューティング
| 401 Authentication required | APIキーが未設定です。/developersでキーを発行し、Authorization: Bearer YOUR_KEYヘッダーを設定してください。 |
| 接続していたのに急にツール呼び出しでエラーになる | claude.ai・ChatGPT の OAuth 接続は、本体側のAPIキーが失効すると自動で立て直しますが、まれに反映まで時間がかかることがあります。改善しない場合はコネクタを一度切断して再接続(Google サインインをやり直す)してください。APIキー直接接続の場合は/developersで新しいキーを発行し直してください。 |
| 接続はできるがツール呼び出しでエラー | initializeとtools/listは認証不要ですが、tools/call(実際のデータ取得)にはAPIキーが必要です。 |
| Invalid or expired session | Mcp-Session-Idヘッダーが1時間で失効します。initializeから接続をやり直してください(多くのMCPクライアントは自動で再接続します)。 |
| 429 Too many requests | /mcpエンドポイント自体の簡易レート制限に達しています。少し時間を置いてから再試行してください。APIキー側の上限(1,000回/日)とは別のガードです。 |
| Claude Desktopで接続できない | Claude DesktopはリモートのHTTP MCP接続にネイティブ対応していません。上記のmcp-remoteパッケージ経由の設定を使用してください(Node.js 18以上が必要)。 |