Shopify Catalog の 10 億点以上の商品を検索し、カートを作り、Shop Pay でチェックアウトを完了するところまでを 1 つの MCP 接続でエージェントに持たせられる。検索に API キーは不要。既存の Catalog API 連携は変更なし・対応不要。
エージェントは Catalog で商品を発見 → 支払いはストアのウェブサイトに遷移。この遷移で離脱が多発。
検索 → カート → チェックアウト → Shop Pay 決済 → 注文追跡まで、MCP 接続 1 本で提供。
https://mcp.shop.com と、MCP 対応エージェントが読めるスキル説明 https://mcp.shop.com/skill.md。search_cataloglookup_catalogget_product
Shopify Catalog を読む。
買い物客は 1 回サインインするだけ。以降、検索ツールが保存済みの好み(preferences)を利用。
販売ストアでカート作成 → チェックアウト作成。完了は complete_checkout、状態確認は get_checkout。
search_orders
サインイン済みの買い物客の注文と配送追跡を探す。
| 機能 | サインインなし | Shop でサインイン済み |
|---|---|---|
| 商品検索・詳細 | 可 認証情報なしで動作 | 可 保存済みの好みを反映 |
| カート・チェックアウト作成 | 可 | 可 保存済みの住所を利用可能 |
| Shop Pay で支払い | 不可 | 可 保存済み Shop Pay 情報で支払い |
| エージェントによる購入完了 complete_checkout |
記載なし | 可 買い物客が合計額と支払方法を確認した後 |
| 注文・配送追跡 search_orders |
不可 | 可 |
| 項目 | 従来 | Shop MCP |
|---|---|---|
| 商品発見 | 可 Catalog で検索 | 可 同じく Catalog(10億点以上) |
| 支払い | 外部遷移 ストアのサイトへ送る | エージェント内 Shop Pay で完結 |
| 離脱リスク | 遷移で離脱が起きがち | 遷移不要で離脱ポイントを削減 |
| 接続方式 | Catalog API を直接利用 | MCP 接続 1 本(+ shop CLI) |
| 注文の扱い | — | マーチャントの管理画面に通常の注文として表示 |
| 既存連携への影響 | 影響なし Catalog API を直接使う既存連携は変更不要・対応不要 | |
CLI をインストールし shop search でターミナルから結果を確認。
コーディングエージェントに skill.md を読ませるか、mcp.shop.com を MCP サーバーとして設定に追加。
Shop Pay で払うには買い物客のサインインが必要。自作コードは device flow。
チェックアウトが status: completed と注文を返せば成功。
# shop CLI をインストール(エージェントと同じサーバーを叩く)
npm install -g @shopify/shop
# 検索を試す(API キー不要)
shop search "ceramic coffee dripper"
どのストアの商品か
販売価格
在庫があるかどうか
クエリを自分のエージェントが扱う商品に置き換えると、エージェントが受け取るデータの形が確認できる。
チェックアウト状態は get_checkout をポーリングして取得する必要がある。リトライ間隔・タイムアウト設計を最初から組み込むこと。
complete_checkout は、買い物客が合計額と支払方法を確認した後に呼ぶ。確認ステップを UI/会話フローで必ず挟む設計にする。
Claude / ChatGPT 等の MCP クライアントは代行してくれるが、自作コードでは device flow を実装する。サインインなしでもカート・チェックアウトは動くので段階的に導入可能。
E2E テストの合格基準が明示されている。チェックアウトが status: completed と注文を返すことをテストのアサーションにする。
エージェント経由の注文はマーチャントの Shopify 管理画面に他の注文と同様に表示される。マーチャント側の既存のフルフィルメント運用はそのまま。また Catalog API を直接使う既存連携は変更不要なので、移行は任意・並行運用も可能。
mcp.shop.com を MCP サーバーとして追加。検索 → カート → チェックアウト → Shop Sign-in → 確認後 complete_checkout の流れを組む。get_checkout のポーリング。自作クライアントのサインインは device flow。npm install -g @shopify/shop → 想定商品で shop search を実行し、ストア・価格・在庫の返り方を確認してから設計。status: completed と注文生成を確認する手順を共有。