2026年4月に非推奨化された Global Catalog REST API が、2026年11月2日にトラフィックの受け付けを止める。以降は保存済みカタログも含めすべてのリクエストが失敗する。移行先は Universal Commerce Protocol(UCP)を実装した Global Catalog MCP。
https://discover.shopifyapps.com/global/... へのリクエストはすべて失敗するようになる。保存済みカタログ(saved catalogs)へのリクエストも含む。
https://catalog.shopify.com/api/ucp/mcp で提供。UCP のカタログツール search_catalog / lookup_catalog / get_product を使う。
ベース URL : https://discover.shopifyapps.com/global/...
GET /global/v2/searchGET /global/v2/p/{upid}GET /global/v2/p/by-variant/{vid}POST /global/v2/lookupエンドポイント : https://catalog.shopify.com/api/ucp/mcp(Universal Commerce Protocol 実装)
search_catalog全 Shopify マーチャントを横断して商品を検索。フィルタ・ページネーション・購入者コンテキスト(buyer context)に対応。
lookup_catalog識別子で商品・バリアントをバッチ参照。1 リクエストあたり最大 50 件。
get_product商品の詳細を全量取得。バリアント選択と在庫・購入可否のシグナル(availability signals)付き。
| 用途 | REST(停止) | UCP ツール | 引数のポイント |
|---|---|---|---|
| 検索 | GET /global/v2/search |
search_catalog | フィルタ・ページネーション・buyer context |
| 商品参照 | GET /global/v2/p/{upid} |
get_product | gid://shopify/p/{upid} を渡す |
| バリアントから参照 | GET /global/v2/p/by-variant/{vid} |
get_product | gid://shopify/ProductVariant/{id} を渡す |
| 一括参照 | POST /global/v2/lookup |
lookup_catalog | 1 リクエスト最大 50 件 |
| 保存済みカタログ | 保存済みカタログ用エンドポイント URL | 各ツール共通 | ID を catalog.catalog_id として渡す |
上の対応表どおり、各 REST 呼び出しを対応するツールに切り替える。
catalog.shopify.com/api/ucp/mcp に送信。全リクエストに meta.ucp-agent.profile(agent profile の URL)を含める。
保存済みカタログ用の URL ではなく、catalog.catalog_id に ID を渡す。
リクエスト/レスポンスを UCP catalog のスキーマに合わせてアプリ側を改修。
引き続き Dev Dashboard のクライアント認証情報(client credentials)から bearer トークンを生成して使える。
Shopify AI Toolkit を使うか、UCP CLI で ucp catalog search を実行してツールを試せる。
停止日以降は discover.shopifyapps.com/global/... への全リクエストが失敗。保存済みカタログも例外なし。告知から停止まで 1 か月弱なので、まず呼び出し箇所の棚卸しを最優先に。
get_product には gid://shopify/p/{upid} または gid://shopify/ProductVariant/{id} を渡す。REST のパス変数で持っていた upid / vid を GID 文字列に組み立て直す変換が必要。
meta.ucp-agent.profile に自分の agent profile URL を毎回入れる。HTTP クライアントの共通ラッパー側で付与しておくと漏れがない。
get_product 1 本に統合商品 ID 参照とバリアント ID 参照が同じツールに集約される。バリアント選択・在庫シグナルも返るので、呼び出し側の分岐を減らせる。一括は lookup_catalog(最大 50 件/回)でチャンク分割を前提に。
Dev Dashboard のクライアント認証情報から bearer トークンを発行する仕組みは継続。改修範囲は送信先 URL・ツール呼び出し形式・UCP のリクエスト/レスポンススキーマに絞られる。保存済みカタログはエンドポイント URL ではなく catalog.catalog_id 指定に変わる点もスキーマ改修に含めること。
discover.shopifyapps.com/global で横断検索 → 4 エンドポイントの利用箇所を一覧化 → 対応表に沿って UCP ツールへ置換する移行計画を顧客に提示。catalog.catalog_id への置換が必要なので、URL 直書き箇所も検索対象に含める。search_catalog(buyer context 付き検索)と get_product(バリアント選択・在庫シグナル)をエージェントのツールとして接続する構成に置き換える。meta.ucp-agent.profile が必要。事前に Shopify AI Toolkit や ucp catalog search で挙動を確認してから設計する。lookup_catalog に寄せるPOST /global/v2/lookup や単品参照を大量に回して商品情報を定期同期している。lookup_catalog に投げる。詳細が必要なものだけ get_product で補完。