インストール不要。2分以内に動きます。
cloud.anythingmcp.com で無料トライアルを開始し、noon Marketplace をワンクリックで追加して、AI クライアント(Claude、ChatGPT、Copilot、Cursor)を生成された MCP エンドポイントに向けるだけ。Docker も git clone も、開発経験も不要です。
概要
noon Partner API を通じて、AI エージェントから noon.com(UAE、サウジアラビア、エジプト)で販売できます。倉庫、カタログコンテンツと商品グループ、オファー、価格、在庫、FBPI 注文と出荷、発注書(purchase order)、返品の照会、一括エクスポートに対応します。サービスアカウントと署名付き JWT でログインし、価格・在庫・商品・注文の書き込みはインストール時にオフです。
こう聞いてみよう
noon Marketplace のサンプルプロンプト
プロンプトをクリックでコピー。Claude / ChatGPT / Cursor / Gemini / Copilot / OpenClaw に貼り付けて、このコネクターで実行できます。
Claude は AI のため誤ることがあります。回答をご確認ください。
💡 インストール不要? cloud.anythingmcp.com を直接利用してください。 サインインし、Connectors → noon Marketplace をクリック、認証情報を貼り付け、MCP API キーを発行すれば完了です。Docker も
git cloneもローカルサーバーも不要。
noon Marketplace + Microsoft Copilot
noon Partner API を通じて、AI エージェントから noon.com(UAE、サウジアラビア、エジプト)で販売できます。倉庫、カタログコンテンツと商品グループ、オファー、価格、在庫、FBPI 注文と出荷、発注書(purchase order)、返品の照会、一括エクスポートに対応します。サービスアカウントと署名付き JWT でログインし、価格・在庫・商品・注文の書き込みはインストール時にオフです。
前提条件
完全なセットアップ手順はコネクタ自体に組み込まれています (ストアでコネクタを選択すると表示)。必要な環境変数:
NOON_KEY_ID, NOON_PRIVATE_KEY, NOON_PROJECT_CODE
ステップ 1 — 認証情報を取得
セットアップは約 5 分です。noon Partner ポータルにアクセスできる noon.com(UAE、サウジアラビア、エジプト)のセラーアカウントと、noon Partner API 用のサービスアカウントキーが必要です。
- noon Partner ポータルにサインインし、Access App(または User & Access > User access)を開いて、左サイドバーの API Users を選びます。
- Add Service Account をクリックし、表示名とユーザー名を入力してロールを選びます。読み取りツールだけなら Project Viewer で足ります。書き込みツールには、カタログ、価格、在庫、注文を変更できるロールが必要です(Project Owner はすべてを許可します)。キーを IP アドレスで制限したり、有効期限を付けたりできます。どちらも設定しなければ、どの IP からでも使え、期限切れになりません。各パートナーが作成できるサービスアカウントは 1 つで、キーは最大 5 つです。
- Add をクリックすると
.jsonのキーファイルがダウンロードされます。表示されるのは一度だけなので、紛失したら新しいキーを作成してください。 - そのファイルの 3 つのフィールドをコピーします。
key_idをNOON_KEY_IDに、private_keyをNOON_PRIVATE_KEYに、project_codeをNOON_PROJECT_CODEに設定します。秘密鍵は-----BEGIN PRIVATE KEY-----から-----END PRIVATE KEY-----までの PEM 全体です。ファイルにある\nのシーケンスをそのまま残して 1 行で貼り付けてもかまいません。 - コネクターをインストールし、
noon_marketplace_whoamiを実行します。セッションのサービスアカウント(ユーザーコードとユーザー名)が表示されます。
ログインの仕組み: 固定の API キーはありません。ログインのたびに、コネクターは秘密鍵で新しい RS256 JWT(サブジェクトにキー ID、現在時刻、ランダムなトークン ID)に署名し、プロジェクトコードと一緒に noon のログインエンドポイントへ送ります。noon はセッション Cookie を返し、以降のすべての呼び出しでそれが送られます。セッションの有効期間は 30 日で、コネクターは期限が切れる前と、呼び出しが 401 を返したときに再ログインします。さらにすべてのリクエストには、noon のコンテンツ API が必須とする X-Project ヘッダー(値はプロジェクトコード)が付きます。
識別子: partner_sku はすべての商品で一意な自社の SKU で、価格、在庫、オファーはこれに紐づきます。sku_parent(Z で始まる)はすべてのバリエーションを含む商品に noon が付ける ID で、コンテンツと商品グループで使います。noon SKU(sku、N で始まる)と psku_code(P で始まる)は 1 つのバリエーションを表します。warehouse_code は noon_marketplace_list_warehouses で取得します。FBPI の注文と出荷はインテグレーション倉庫に属します。country_code は小文字の ae、sa、eg で、価格は SKU と国ごとに AED、SAR、EGP で設定されます。注文と出荷は fbpi_order_nr、mp_item_nr(注文内の 1 明細)、自社で付ける integration_shipment_nr で識別します。
読み取れるデータ: サービスアカウントと倉庫、noon カタログのすべてのカテゴリコード、カテゴリが必要とする属性とその値の検証ルール、商品コンテンツの完成度・QC ステータス・公開されていない理由、商品グループ(1 ページにまとめて表示されるバリエーション)、partner SKU ごとの各国のオファー(価格、在庫、公開状態、オフラインになっている原因)、SKU と国ごとの価格・MSRP(取り消し線で表示される参考価格)・有効状態、倉庫と SKU ごとの在庫、FBPI 注文(自社倉庫から出荷する注文)の明細・注文の顧客・出荷、発注書(purchase order)、AWB 番号または返品バーコードによる返品商品、カタログインポートのステータスです。いくつかの読み取りは JSON ボディ付きの POST リクエストですが、これは noon の API の仕様で、データは何も変更しません。
一括エクスポートと AWB: noon_marketplace_list_export_categories でエクスポートできるレポートの種類を一覧し、noon_marketplace_create_export で開始し、noon_marketplace_get_export_status でファイルの準備ができたかどうかと download_url を確認します。noon_marketplace_generate_awbs は noon の配送業者に渡す荷物用の AWB(航空運送状)番号を発行します。どちらもデータを変更しないため、オンのままです。
インストール時はオフ: noon_marketplace_upsert_product、noon_marketplace_upsert_product_group、noon_marketplace_upsert_prices、noon_marketplace_update_stock、noon_marketplace_mark_items_unavailable、noon_marketplace_create_shipment、noon_marketplace_cancel_shipment。価格、在庫、商品、注文、出荷の書き込みは、顧客が目にして購入するもの(公開中の価格、販売可能数、公開コンテンツ)を変えたり、実際の注文に作用したりします。元に戻せないものもあります。商品を在庫切れとしてマークすると顧客に対してキャンセルされ、出荷をキャンセルするとその中のすべての商品がキャンセルされます。ワークスペースに必要なものは、管理者がコネクターのツール設定でオンにします。出荷を作成した後、noon の集荷用マニフェストは Seller Lab で完了させます。
バッチの結果: 価格、在庫、商品の呼び出しは、一部の項目が失敗しても 200 を返します。返された各項目のステータスを確認し、失敗したものだけを再送してください。noon_marketplace_update_stock は絶対数量を設定し、現在の数量に加算はしません。noon_marketplace_upsert_prices では、省略した項目や null で送った項目は値が保たれます。status_id 3 で保存された商品にはコンテンツの問題があり、noon_marketplace_get_content で確認できます。
制限: 一覧系のツールは next_token を返し、AI はそれが空になるまで、同じフィルターにそれを付けて呼び出しを繰り返します。レート制限はプロジェクトとエンドポイントごとに、メインのウィンドウと短いバーストウィンドウの両方で判定されます。ほとんどのエンドポイントは 60 秒あたり 1500 リクエスト、noon_marketplace_list_warehouses は 60 秒あたり 30 リクエスト(バーストは 30 秒あたり 15)です。429 が返ったら X-Ratelimit-Retry-After ヘッダーの秒数だけ待ちます。単一項目の呼び出しを何度も行うより、バッチ呼び出しを 1 回行うほうが適しています。
よくあるエラー: 401 はログインまたはセッションの失敗です。キー ID と秘密鍵が別々のキーファイルのものである、キーが無効化または期限切れになっている、あるいはサーバーの時計が noon の時計と 5 分以上ずれていて署名済みトークンが拒否された、といった原因が考えられます。403 PERMISSION_DENIED はサービスアカウントにその呼び出しのロールがないことを示します。Partner ポータルの User Access > Manage Role でロールを追加してください。400 INVALID_ARGUMENT は対象のフィールドと理由を示します。価格項目の NOT_FOUND は、その国でその SKU の価格レコードがまだないことを意味するので、先に価格を設定してください。
ステップ 2 — アダプターをインストール
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
ステップ 3 — Microsoft Copilot にコネクタを追加
サーバーURL: AnythingMCP で MCP Servers を開き、このコネクタがあるサーバーを選んで URL(
https://cloud.anythingmcp.com/mcp/…)をコピーします。このガイドでYOUR_SERVER_IDと表示されている箇所に使ってください。
Microsoft Copilot は、Copilot Studio で作成したエージェントを通じて MCP サーバーを使います。AnythingMCP をツールとしてエージェントに追加し、そのエージェントを Microsoft 365 Copilot と Teams に公開します。Copilot Studio は Microsoft のクラウドから Streamable HTTP で接続し、AnythingMCP はこれに対応しています。
- Copilot Studio でエージェントを開き(または新規作成し)、Tools で Add a tool → New tool → Model Context Protocol を選びます。
- Server name(例:
AnythingMCP)、コネクタでできることを説明する Server description、Server URLhttps://cloud.anythingmcp.com/mcp/YOUR_SERVER_IDを入力します。Copilot Studio はこの説明をもとに、いつサーバーを呼び出すかを判断します。 - 認証で API key を選び、Type を Header、ヘッダー名を
X-API-Keyにして Create を選びます。 - Add tool で Create a new connection を選び、AnythingMCP の MCP API キー(MCP Servers → 対象のサーバー → API keys)を貼り付けて Add to agent を選びます。
- エージェントの Test ウィンドウで試します。
noon Marketplaceのツールが必要になる依頼をしてみましょう。 - Publish を選び、Channels → Microsoft 365 and Microsoft Teams で Make agent available in Microsoft Copilot を選択したまま Add channel を選びます。See agent in Teams で自分用にインストールされます。Microsoft 365 Copilot では @ を入力してエージェントを選びます。
ユーザーごとにサインインさせたい場合は、API キーの代わりに OAuth 2.0 → Dynamic discovery を選びます。各ユーザーは、エージェントが初めて呼び出すときに AnythingMCP にサインインします。
セルフホストの場合は、https://cloud.anythingmcp.com の代わりにインスタンスの公開 HTTPS アドレスを使ってください。Copilot Studio は Microsoft のクラウドから接続するため、localhost は使えません。
利用可能なツール
| Tool | What it does |
|---|---|
noon_marketplace_whoami | Show which service account the session belongs to (user_code and username) |
noon_marketplace_list_warehouses | List the warehouses of the partner with warehouse_code, display name, fulfillment system code and whether each is active |
noon_marketplace_list_categories | List every product category code of the noon catalog, each a full family-type-subtype path such as electronics-mobiles-smartphones |
noon_marketplace_list_category_attributes | List the attributes a category accepts, with is_mandatory, attribute_type, is_localizable (send EN and AR values), is_multivalued, the… |
noon_marketplace_get_content | Read a product's content by sku_parent: its attribute values, images with review status, and per language the completeness, missing and… |
noon_marketplace_upsert_product | Create a product, or update the one its partner SKUs belong to, in the noon catalog: brand, category, images and attribute values, plus one… |
noon_marketplace_get_product_group | Read a product group (variants shown together on one page): the attribute codes it varies by and its member products with their values for… |
noon_marketplace_upsert_product_group | Create a product group or change one. attribute_codes and sku_parents are FULL lists: what you send REPLACES the current list and anything… |
noon_marketplace_get_product_offers | Show a partner SKU's offers in every country and business model: noon sku, title, brand, and per offer the price and currency, whether it… |
noon_marketplace_get_prices | Read price, MSRP and active state for partner SKUs, one item per SKU and country |
noon_marketplace_upsert_prices | Set the selling price, MSRP (crossed-out reference price) and/or active state of partner SKUs, one item per SKU and country |
noon_marketplace_get_stock | Read the available quantity, processing time and last update time for warehouse and partner SKU pairs |
noon_marketplace_update_stock | Set the available quantity of partner SKUs in your warehouses. qty is ABSOLUTE: it becomes the new quantity noon sells, it is not added to… |
noon_marketplace_list_orders | List FBPI orders (fulfilled from your own warehouse) of one integration warehouse, optionally created within a UTC window, 50 per page |
noon_marketplace_get_order | Read one FBPI order: marketplace and order number, countries, merchant, currency, warehouse, creation time and the items with mp_item_nr… |
noon_marketplace_get_order_customer | Read the customer of an FBPI order: first and last name, city and administrative division, in Latin characters |
noon_marketplace_mark_items_unavailable | Mark items of an FBPI order as out of stock before any shipment is created. noon cancels those items for the customer; the rest of the… |
noon_marketplace_generate_awbs | Generate noon logistics AWB (air waybill) numbers for shipments handed to noon's courier, one per parcel or up to 1000 at once to keep in… |
noon_marketplace_create_shipment | Create a shipment for an FBPI order: your unique shipment number, the AWB (noon-generated or your courier's) and the items in the parcel |
noon_marketplace_get_shipment | Read a shipment by warehouse and your shipment number: its FBPI order, AWBs with courier, and items |
noon_marketplace_cancel_shipment | Cancel a shipment |
noon_marketplace_get_purchase_order | Read a purchase order by number: currency, merchant, warehouse, status (pending or released), release date and the lines with partner SKU… |
noon_marketplace_list_return_references | Find returned items by a barcode (an AWB number or a returns barcode): marketplace, order number, purchase item number, partner SKU… |
noon_marketplace_list_export_categories | List the report types that can be exported (export_category_code) with the params each one takes |
noon_marketplace_create_export | Start an export (a bulk report file) of one export category |
noon_marketplace_get_export_status | Check an export: its status, parameters, who created it, timestamps and, once finished, the download_url of the file |
noon_marketplace_get_import_status | Check a catalog import (barcode, SKU backfill or SKU grouping import): status (pending, processing, completed, failed, partial)… |
プロンプトの例
- 「ドバイ倉庫で partner SKU TS-100-BLK、TS-100-WHT、TS-100-RED の在庫を確認して、10 個未満のものを教えてください。」
- 「SKU TS-100-BLK の UAE とサウジアラビアでの価格を確認してください。価格、MSRP、各オファーが公開中かどうか、オフラインのオファーがあればその原因も教えてください。」
- 「インテグレーション倉庫の今日の FBPI 注文を明細とステータス付きで一覧にして、まだ出荷していないものを教えてください。」
- 「エクスポートできるレポートの種類を見せてください。私が選んだものを開始して、ダウンロードリンクが用意できるまでステータスを確認してください。」
- 「新しいスマホケースを出品する前に、適切なカテゴリコードを探して、必須属性と、英語とアラビア語の両方の値が必要な属性を教えてください。」
FAQ
どの Copilot が対象ですか? 職場で使う Microsoft 365 Copilot で、Copilot Studio のエージェントを通じて利用します。個人アカウント向けの Microsoft Copilot アプリでは、独自の MCP サーバーを追加できません。
何が必要ですか? エージェントを作成するために、Copilot Studio を利用できる職場アカウント(ライセンスまたは試用版)が必要です。Microsoft 365 Copilot や Teams でエージェントを使う人には、エージェントへのアクセス権が必要です。共有するか、管理者に組織向けに公開してもらってください。組織が Power Platform コネクタにデータ ポリシーを適用している場合は、MCP サーバーにも適用されます。
エージェントがツールを呼び出しません。 ヘッダー名が正確に X-API-Key であること、キーが URL と同じ MCP サーバーのものであることを確認し、Server description を具体的に書いてください。Copilot Studio はこの説明をもとにサーバーを呼び出すかどうかを判断します。変更のたびにエージェントを再公開し、開いているチャットでは "start over" と入力すると新しいバージョンになります。
次のステップ
このガイドは役に立ちましたか?