kadro-mcp-server について
kadro-mcp-serverは、AIアシスタントをイランのKadroのフォトグラファー検索・予約フローに接続します。検索やプラン・料金の確認、ゲスト予約の仮押さえに対応し、支払いリンクは利用者自身が開きます。
主な機能
- 01撮影サービスの種類を一覧表示
- 02サービス種別と都市からフォトグラファーを検索
- 03プランと料金を確認
- 0415分間のゲスト予約を仮押さえ
- 05支払いリンクと予約状況を取得
活用シーン
- 01希望する撮影内容と都市からフォトグラファーを探す
- 02プランや料金を比較
- 03顧客の支払い前に予約を仮押さえ
- 04予約の支払い・確定状況を確認
MCP 対応
Kadroのフォトグラファー検索とゲスト予約の操作をMCPクライアントに提供します。電話番号認証と支払いは利用者がリンク先で行い、ツールはカード情報、OTPコード、パスワードを扱いません。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://www.shootempire.com/kadro-mcp-relay/mcpclaude mcp add --transport http amvaleh-kadro https://www.shootempire.com/kadro-mcp-relay/mcp{"mcpServers":{"amvaleh-kadro":{"type":"http","url":"https://www.shootempire.com/kadro-mcp-relay/mcp"}}}Cursor で開く{"servers":{"amvaleh-kadro":{"type":"http","url":"https://www.shootempire.com/kadro-mcp-relay/mcp"}}}VS Code で開く{"mcpServers":{"amvaleh-kadro":{"type":"http","url":"https://www.shootempire.com/kadro-mcp-relay/mcp"}}}{"mcpServers":{"amvaleh-kadro":{"serverUrl":"https://www.shootempire.com/kadro-mcp-relay/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
6このツールにパラメーターはありません。
詳細
kadro-mcp-server
AI アシスタントが Kadro のフォトグラファーやパッケージを検索し、ユーザーに代わってゲスト予約を行い、最後に支払いリンクを提示できる MCP(Model Context Protocol)サーバーです。アシスタントが支払いやログインに直接関与することはありません。これは Kadro の Api::Agent::V1 REST API(Main-Rails リポジトリの app/controllers/api/agent/v1/ を参照)を薄くラップしたものです。
ツール
search_shoot_types— サービスの種類とその ID を一覧表示します。search_photographers— 撮影タイプ ID(任意で市区町村 ID も指定)に対応するフォトグラファーを検索します。get_photographer_packages— フォトグラファーの実際のパッケージと料金を取得します。create_reservation— 15 分間のゲスト予約を確保します。支払いは発生しません。get_payment_link— 人間が自分で開いて電話番号を確認し、支払いを行うための URL です。ここが境界となります。このサーバーのツールがカード情報、OTP コード、パスワードを要求したり、扱ったりすることはありません。get_reservation_status— 支払いや予約確定のステータスを確認します。支払い済みと予約確定は同じではありません。ツールの説明を参照してください。
セットアップ
npm install
cp .env.example .env
npm run register -- "your-platform-name" "[email protected]" # prints a token
# paste the printed KADRO_API_TOKEN into .env
npm run build
npm start # listens on :3100 (or $PORT), MCP endpoint is POST /mcp
登録はセルフサービスで、すぐに利用できます。デフォルトでは daily_limit により、1 日あたりのリクエスト数は 5 件に制限されています(Main-Rails の ApiPartner を参照)。このサーバーを実際にデプロイした後、このサーバーのトークンの上限引き上げを Kadro にメールで依頼してください。
Docker で実行する
docker build -t kadro-mcp-server .
docker run -p 3100:3100 --env-file .env kadro-mcp-server
Rails アプリと同じサーバーへのデプロイ
これは Rails アプリとは別の Node プロセスであり、Capistrano は経由しません。このサーバーで他のサービス(gitlab、typesense)にすでに使用している Docker の利用方法に合わせると、次のような構成が妥当です。
-
上記の Docker イメージをサーバー上でビルドして実行します(または、
systemdやpm2などのプロセスマネージャーの下でnpm run build && npm startを実行します)。 -
既存の設定に基づいて kadro.co の TLS をすでに終端している仕組み(nginx など)を使い、パスまたはサブドメインをこのサーバーに向けます。nginx の設定例です。実際のサーバーブロック構成に合わせて調整してください。このリポジトリからは構成を確認できません。
location /mcp { proxy_pass http://127.0.0.1:3100/mcp; proxy_set_header Host $host; proxy_http_version 1.1; proxy_set_header Connection ""; } -
公開 MCP エンドポイントは、
https://www.kadro.co/mcpまたはhttps://mcp.kadro.co/mcpのような URL になります。どちらを使うかは、このリポジトリの運用者が決めてください。公開されたら、その URL を Main-Rails のpublic/llms.txtに記載し、すでにある REST API のセクションに追加します。
稼働確認
curl https://<wherever-it's-deployed>/healthz # -> ok
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。