Ebay Mcp について
Ebay Mcpは、eBay Sell APIを操作するAIアシスタント向けのオープンソースMCPサーバーです。在庫、注文処理、マーケティング、分析、開発者向け操作を扱い、認証情報はユーザーのマシン内に保持します。
主な機能
- 01eBay Sell API操作用ツール
- 02在庫、出品、注文の管理
- 03マーケティングと分析の処理
- 04OAuthトークンの管理と更新
- 05STDIOまたはローカルHTTPでの実行
- 06サンドボックスと本番環境の切り替え
活用シーン
- 01在庫と利用可能数の確認
- 02未発送の注文と返金の追跡
- 03プロモーテッドリスティングキャンペーンの管理
- 04セラー指標とAPIレート制限の確認
MCP 対応
ローカルMCPサーバーは379個のツールを通じてeBay Sell API操作をMCPクライアントに公開します。STDIOまたはローカルHTTPで動作します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
eBay MCP サーバー — Claude、Cursor、あらゆる AI アシスタントに eBay Sell API へのフルアクセスを提供します。在庫、注文、マーケティング、分析に対応する 379 個のツールを、お客様自身のキーを使ってローカルで実行できます。
非公式のオープンソースプロジェクトです。eBay Inc. との提携、認可、推奨を受けていません。
eBay MCP は、AI アシスタント — Claude Desktop、Claude Code、Cursor、Cline、Windsurf、Zed、Continue.dev、Roo Code、Amazon Q Developer — を**eBay Sell APIに直接接続する、ローカルのModel Context Protocolサーバーです。在庫管理、注文処理、プロモーテッドリスティングのマーケティング、分析、開発者向けツールに対応する379 個のツールを提供し、対象としているeBay Sell、Commerce、Developer API の 100%**(356 個の固有エンドポイント)をカバーします。すべて STDIO またはローカル HTTP 経由でお使いのマシン上で実行され、クラウド中継は不要です。また、eBay の認証情報がお使いのコンピューターから外部に送信されることはありません。
**免責事項:**非公式のサードパーティプロジェクトであり、**eBay Inc. との提携や推奨を受けていません。**保証なしの「現状有姿」で提供されます。eBay API ライセンス契約およびデータ取り扱い要件の遵守、認証情報の安全な管理、レート制限の遵守は、お客様の責任です。本番環境で使用する前に、サンドボックスでテストしてください。LICENSEをご覧ください。
目次
- 機能
- 機能マップ
- eBay MCP と eBay API そのものの比較
- ワンクリック AI セットアップ
- クイックスタート
- デモ
- 設定
- 利用可能なツール
- インタラクティブ UI(MCP Apps)— ベータ版
- 使用例
- 対象範囲と安全性
- ログとトラブルシューティング
- FAQ
- コントリビューション
- リソース
- ライセンス
- コントリビューター
機能
- eBay API ツール 379 個 — 在庫、注文、マーケティング、分析、メタデータ、分類、開発者向けツールを含む、eBay Sell API を 100% カバーしています。
- AI クライアント 9 種類を自動設定 — Claude Desktop、Cursor、Zed、Cline、Continue.dev、Windsurf、Roo Code、Claude Code CLI、Amazon Q Developer。
- OAuth 2.0 を組み込み — ユーザートークンを包括的に管理し、自動更新に対応します。また、ユーザートークン(1 日あたり 10,000〜50,000 リクエスト)からクライアント認証情報(1 日あたり 1,000 リクエスト)へスマートにフォールバックします。
- デフォルトで高い耐障害性 —
429レート制限時に指数バックオフで自動再試行し、エラーを一貫して明確に通知します。 - 型安全 — TypeScript をエンドツーエンドで使用し、Zod でツール入力を検証し、OpenAPI から型を生成しています。
- ローカル優先でプライバシーを保護 — STDIO またはローカル HTTP 経由で動作します。認証情報やデータがお使いのマシンから外部に送信されることはありません。
- サンドボックスと本番環境 — 1 つの変数で環境を切り替えられます。
- 1 コマンドでセットアップ —
npm run setupで認証情報、OAuth、MCP クライアントを設定し、OAuth フローのためにブラウザーを自動的に開きます。 - 十分なテスト — GitHub Actions を通じて、変更のたびに CI で 1,000 件以上の自動テストを実行します。
機能マップ
公開するツールファミリーを選ぶときや、アシスタントに何ができるかを尋ねるときは、このマップを使用してください。ファミリー名は EBAY_MCP_TOOLS と一致するため、すべてのツールを使用することも、動的に検出することも、特定のワークフローに必要なファミリーだけを使用することもできます。
| ファミリー | 利用できる機能 | 最初におすすめのリクエスト |
|---|---|---|
account | ビジネスポリシー、フルフィルメントポリシー、支払いポリシー、返品ポリシー、売上税、サブスクリプション、プログラム、レートテーブルによる配送コスト、支払い設定、同梱配送ルール、ユーザー設定(Account API v2) | 「eBay のフルフィルメントポリシーを表示してください。」 |
finances | 支払い、支払いサマリー、取引、資金移動、販売者資金、請求アクティビティ、注文収益 | 「過去 30 日間の支払いを要約してください。」 |
inventory | 在庫商品、オファー、在庫ロケーション、商品グループ、一括オファーのワークフロー、SKU/ロケーションのマッピング | 「出品中の在庫商品とその販売可能数量を一覧表示してください。」 |
feed | 注文、在庫、カスタマーサービス指標に関する非同期レポートタスク、定期スケジュール、フィードファイルのアップロード/ダウンロード | 「過去 10 日間の注文レポートタスクを作成してください。」 |
stores | eBay Store の詳細、ストアカテゴリ(追加、名前変更、移動、削除)、カテゴリタスクのステータス | 「eBay Store のカテゴリツリーを表示してください。」 |
fulfillment | 注文、配送フルフィルメント、返金、支払いに関する異議申し立て、異議申し立ての証拠 | 「過去 7 日間の未処理注文を表示してください。」 |
logistics | 配送料金の見積もり、ラベルの購入、配送、ラベルのダウンロード(限定リリースの Logistics API) | 「この注文の配送料金を見積もってください。」 |
browse | 市場調査向けの出品中商品の検索と商品詳細(Browse API) | 「現在出品されている類似商品はありますか?」 |
marketing | プロモーテッドリスティングキャンペーン、広告、プロモーション、入札、マーケティングレポート | 「有効なプロモーテッドリスティングキャンペーンを一覧表示してください。」 |
analytics | トラフィックレポート、販売者基準、カスタマーサービス指標 | 「販売者基準のプロフィールを表示してください。」 |
communication | 購入者と販売者のメッセージ、交渉、通知、フィードバック | 「返信が必要な最近の購入者からのメッセージを表示してください。」 |
metadata / taxonomy | カテゴリツリー、商品属性、商品状態、返品ポリシーのメタデータ、課税管轄区域、車両適合情報、配送業者/サービス/ロケーション、取扱時間、期限切れカテゴリ、商品属性の一括エクスポート、慈善団体 | 「このカテゴリで必須の商品属性を探してください。」 |
other | ID、VeRO、翻訳、国際配送のサポート API | 「現在の販売者 ID の詳細を表示してください。」 |
developer / token-management | レート制限、署名キー、OAuth URL、トークンの更新、診断 | 「eBay API のレート制限を確認してください。」 |
trading | 固定価格商品とオークション向けのレガシー XML による出品作成、改訂、再出品、終了操作 | 「この SKU から固定価格出品の下書きを作成してください。」 |
connector | eBay MCP カタログを対象とする ChatGPT コネクターの検索/取得ツール | 「eBay ツールカタログから注文ツールを検索してください。」 |
出品前の確認:必須の商品属性
ebay_create_or_replace_inventory_item、ebay_create_offer、または
ebay_get_listing_fees を呼び出す前に、選択したカテゴリの最新の要件を取得してください。
ebay_get_default_category_tree_id → ebay_get_category_suggestions →
ebay_get_item_aspects_for_category
商品属性のレスポンスには、必須および推奨の商品属性が示されます。オファーを作成する前に、必須の商品属性をすべて在庫商品に設定してください。要件はカテゴリやマーケットプレイスによって異なるため、いずれかが変更された場合は検索をやり直してください。例や固定のグローバルな代替値に頼らないでください。
オークション出品
ebay_create_offer、ebay_update_offer、ebay_bulk_create_offer は、同じ Inventory モデルを使って両方の出品形式を受け付けます。
| フィールド | FIXED_PRICE | AUCTION |
|---|---|---|
pricingSummary.price | 出品価格 | オプションの即決価格。開始価格より少なくとも 30%高くする必要があります |
pricingSummary.auctionStartPrice | — | 開始価格 |
pricingSummary.auctionReservePrice | — | オプション。開始価格を上回る必要があり、eBay の手数料がかかります |
listingDuration | GTC | DAYS_7 などの日数(GTC は不可) |
availableQuantity | 任意 | 省略するか 1 を指定します。オークションでは 1 点のみ販売されます |
| ベストオファー | 許可 | カテゴリーが対応していれば許可されますが、即決価格との併用はできません |
quantityLimitPerBuyer / eBayPlusIfEligible | 許可 | 不可 |
listingStartDate | 開始日時の予約が明示的に指定された場合のみ(eBay の手数料がかかる場合があります) | 同左 |
カテゴリーで許可されている形式と期間は ebay_get_listing_type_policies で確認し、その後 ebay_publish_offer の前に ebay_get_listing_fees を実行してください。2 つの形式が混在したリクエスト本文は、eBay にリクエストが送信される前にローカルで拒否されます。
Trading(XML)経由のオークション
レガシーツールでは、同じ切り替え指定をトップレベルの format 引数で受け取ります(デフォルトは FIXED_PRICE)。format: "AUCTION" を指定した ebay_create_listing、ebay_revise_listing、ebay_end_listing、ebay_relist_item は、*FixedPriceItem 系ではなくオークション対応の呼び出し(AddItem、ReviseItem、EndItem、RelistItem)を使用します。また、ebay_create_listing は Item に ListingType: "Chinese" を追加します。
Trading の Item フィールド | FIXED_PRICE | AUCTION |
|---|---|---|
StartPrice | 出品価格 | 開始価格(新規出品時に必須) |
ReservePrice | 不可 | オプション。StartPrice を上回る必要があります(リザーブ価格には eBay の手数料がかかります) |
BuyItNowPrice | 不可 | オプション。StartPrice より少なくとも 30%高くする必要があります |
ListingDuration | GTC(eBay が受け付ける固定価格の期間はこれのみです) | Days_7 などの日数(新規出品時に必須。GTC は不可) |
Quantity | 任意 | 省略するか 1 を指定します |
BestOfferDetails.BestOfferEnabled | 許可 | カテゴリーが対応していれば許可されますが、BuyItNowPrice との併用はできません |
ebay_end_listing の理由 SellToHighBidder | 不可 | 入札があるオークションを終了します |
形式が混在したペイロードはローカルで拒否されます。既存商品の形式が不明な場合は、まず ebay_get_listing で ListingType を読み取ってください(Chinese = オークション)。
ローカルファイルからの写真と動画
オファーを公開するには、少なくとも 1 枚の写真が必要です。メディアツールは、eBay の Media API を通じてローカルファイルをアップロードし、Inventory API に必要な情報を返します。
| ツール | 機能 |
|---|---|
ebay_upload_images | 写真を eBay Picture Services にアップロードし(createImageFromFile)、product.imageUrls 用に順番どおりの EPS URL を返します |
ebay_upload_video | 動画のライフサイクル(createVideo → uploadVideo → getVideo)を実行し、product.videoIds 用の videoId を返します |
ebay_get_video | まだ PROCESSING 状態の動画を再確認します |
ebay_attach_media_to_inventory_item | 商品を読み取り、ファイルをアップロードし、product.imageUrls / product.videoIds のみを書き換えます。公開は行わず、allowPartial が設定されていない場合、アップロードに失敗すると商品は変更されません |
ローカルファイルへのアクセスは、許可するまで無効です。EBAY_MCP_MEDIA_DIRS(パス区切りのディレクトリ)および/または EBAY_MCP_MEDIA_ROOT(media://<relative-path> の参照も解決する単一のディレクトリ)を設定してください。包含チェックの前にシンボリックリンクを解決します。許可されたディレクトリの外にあるファイルは、アップロード前に拒否されます。対応形式:最大 12 MB の JPG、PNG、GIF、BMP、TIFF、WEBP、AVIF、HEIC、および最大 150 MB の MP4/MOV。未使用のアップロードは eBay 側で期限切れになります。出品で使用されると永続化されます。
画像 URL とドキュメント
これら 8 つのツールも inventory ファミリーに含まれます。
| ツール | 機能 |
|---|---|
ebay_create_image_from_url | HTTPS のソース URL を eBay に送信し、imageId、location、EPS URL を含む完全な image レスポンスを返します |
ebay_create_document | documentType と languages を使用して出品ドキュメントを準備します |
ebay_create_document_from_url | documentUrl(HTTPS)とメタデータを使って、出品ドキュメントを直接作成します |
ebay_upload_document | 準備済みの documentId にローカルファイルをアップロードします |
ebay_get_document | 出品ドキュメントのステータスとメタデータを返します |
ebay_upload_post_order_document | documentUsageType、entityType、entityId を指定してファイルをアップロードし、documentId と location を返します |
ebay_download_post_order_document | base64 のバイト列を含む埋め込み PDF MCP リソースを返します。ローカルファイルには書き込みません |
ebay_remove_post_order_document | 送信済みの注文後ドキュメントを削除します |
出品用マニュアルの場合は、ebay_create_document を
{"documentType":"USER_GUIDE_OR_MANUAL","languages":["ENGLISH"]} で呼び出し、
返された documentId と "path":"media://manual.pdf" を指定して
ebay_upload_document を呼び出します。代わりに、同じメタデータと
"documentUrl":"https://example.com/manual.pdf" を指定して
ebay_create_document_from_url を呼び出すこともできます。
出品に ID を関連付ける前に、ebay_get_document を使ってステータスが
ACCEPTED であることを確認してください。これらの呼び出しには、読み取りも含め、
sell.inventory に対するユーザーの同意が必要です。
出品ドキュメントで受け付けられる形式は PDF、JPEG/JPG、PNG で、サイズ上限は **10 MiB(10,485,760 バイト)**です。注文後ドキュメントでは BMP と GIF も受け付けられ、 サイズ上限は **5 MiB(5,242,880 バイト)**です。ローカルファイルのアップロードでは、 上記と同じメディア形式の許可リストが適用され、拡張子とファイルシグネチャが確認されます。 アニメーション PNG および複数ページの PNG はサポートされていません。複数ページの コンテンツには PDF を使用してください。PDF のページ数上限は、eBay によって用途ごとに 定められています。
返品ラベルの場合は、
{"path":"media://label.pdf","documentUsageType":"RETURN_SHIPPING_LABEL","entityType":"RETURNS","entityId":"YOUR_RETURN_ID"} を指定して ebay_upload_post_order_document を
呼び出します。初期状態は SUBMITTED です。公開するには、これらのツールの対象外である
別途の eBay GraphQL ミューテーションが必要です。送信済みドキュメントのダウンロードは所有者のみ可能です。公開済みドキュメントのダウンロードには、注文後のフローで認可が必要です。公開済みドキュメントは削除できず、期限切れのドキュメントは利用できません。
注文後ツールを利用するには、適格なキーセットと
https://api.ebay.com/oauth/api_scope/commerce.post_order.document に対するユーザーの同意が必要です。
このスコープを既存の EBAY_OAUTH_SCOPES リストに追加し、OAuth の設定と同意を再度行ってください。
この変数はリクエストするスコープのリストを置き換えるため、必要な他のスコープも残してください。
トークンを更新しても、追加のスコープは付与されません。このスコープは認識されますが、デフォルトの同意リクエストには追加されません。すべての Media API POST 操作には、ユーザーレベルで 5 秒あたり 50 リクエストという eBay の制限が適用されます。レート制限エラーは呼び出し元に返されます。
eBay の Media API の概要 とリリースノートを参照してください。
財務、フィード、ストア、配送ラベル
これらのファミリーでは、Sell API の残りの分野である Finances、Feed、Stores、Logistics、Account v2 に加え、これまで不足していた Metadata の配送、Taxonomy、Charity の各エンドポイントを網羅します。
| ファミリー | 追加される機能 |
|---|---|
finances | 読み取り専用のペイアウト、ペイアウトと取引の概要、取引、送金、出品者の資金、請求アクティビティ、注文の収益 |
feed | 注文、在庫、カスタマーサービス指標のレポートタスク、LMS と Seller Hub のアップロードタスク、定期スケジュールとテンプレート、入力ファイルと結果ファイル |
stores | eBay ストアの詳細と、タスクのポーリングを伴うストアカテゴリの変更(追加、名前変更、移動、削除) |
logistics | 配送料の見積もり、郵便料金の購入、配送、キャンセル、PDF ラベル |
account | Account API v2 の料金表、分割ペイアウト(中国本土の出品者)、同梱配送ルール、ユーザー設定 |
metadata / taxonomy | 配送業者、配送サービス、所在地、取り扱い時間、期限切れカテゴリ、一括属性エクスポート、チャリティ団体の検索 |
非同期の変更。 Feed タスクとストアカテゴリの変更では、eBay の Location ヘッダーから読み取った taskId が返されます(Feed のスケジュールでは scheduleId が返されます)。タスクが完了するまで ebay_get_feed_task または ebay_get_store_task をポーリングしてから、結果ファイルを取得してください。eBay では、同時に進行できるストアカテゴリの変更は1件までです。
ファイルの入出力。 ダウンロード(Feed の入力ファイル、結果ファイル、スケジュールファイル、配送ラベル、Taxonomy の属性エクスポート)は、バイト列を Base64 で格納した埋め込み MCP リソースとして返されます。ディスクには何も書き込まれません。ファイルサイズが判明した時点で 25 MiB を超えている場合、残りを読み込まずにエラーになります。EBAY_US などの大規模なマーケットプレイスでは属性エクスポートがこの制限を超えるため、そこで各カテゴリに対して ebay_get_item_aspects_for_category を使用してください。ebay_upload_feed_task_file は、メディアツールと同じ EBAY_MCP_MEDIA_DIRS / EBAY_MCP_MEDIA_ROOT の許可リストを通じて、最大15 MiB(eBay のデータファイル制限)のローカル .xml、.csv、.zip、または .gz ファイルを読み込みます。
資金の移動。 ebay_create_shipment_from_shipping_quote は郵便料金を購入し、出品者の請求契約に請求します。ebay_cancel_shipment は、ラベルが未使用の場合に料金を返金します。
オプションのスコープ。 次の2つのスコープは認識されますが、デフォルトでは要求されません。
- 3つの注文収益ツール用の
https://api.ebay.com/oauth/api_scope/sell.finances.earnings.read。 - すべての Logistics ツール用の
https://api.ebay.com/oauth/api_scope/sell.logistics。この API は限定リリースです。
対象のキーセットでは、必要な他のスコープを維持したままスコープを EBAY_OAUTH_SCOPES に追加し、OAuth の同意を再度行ってください。
デジタル署名(EU/UK の出品者)。 eBay では、EU または UK に居住する出品者について、Finances API のすべての呼び出しと issueRefund に
デジタル署名が必要です。署名がない場合、eBay は 403 Missing x-ebay-signature-key header を返します。署名を有効にするには、次の手順を実行してください。
ebay_create_signing_keyを実行します(ED25519 を推奨)。応答は必ず保管してください。eBay は秘密鍵を再表示しません。EBAY_SIGNING_KEY_JWEにそのjweを、EBAY_SIGNING_PRIVATE_KEYにそのprivateKeyを設定し(返された Base64 値、または PEM キー)、サーバーを再起動します。
これらの呼び出しには x-ebay-signature-key、Content-Digest、Signature-Input、Signature の各ヘッダー(RFC 9421)が付加されます。それ以外の呼び出しには署名されず、2つの変数が未設定の場合、動作は変わりません。EBAY_MCP_API_BASE_URL の背後で実行する場合、呼び出しは転送先の eBay のホストとパス(api.ebay.com または apiz.ebay.com)に対して署名されるため、プロキシは eBay の Host ヘッダーと元の eBay パスを転送する必要があります。
eBay MCP と eBay の生 API の比較
どちらも同じ eBay エンドポイントと通信します。違いは、それ以外に自分で構築する必要があるものすべてです。
| eBay MCP サーバー | eBay REST API を直接利用 | |
|---|---|---|
| インターフェース | AI アシスタントを介した自然言語 | 手書きの HTTP リクエストと JSON の解析 |
| OAuth とトークンの更新 | 標準搭載。自動で更新します | 自分で実装し、保守します |
| レート制限への対応 | 指数バックオフによる自動再試行 | 429 の処理とバックオフを手動で実装 |
| 入力の検証 | すべてのツールに Zod スキーマと TypeScript 型を用意 | なし。ペイロードを自分で検証します |
| セットアップ | 1 つのウィザード(npm run setup) | 呼び出しごとに認証、ヘッダー、マーケットプレイスの設定が必要 |
| AI クライアントのサポート | 9 つのクライアントを自動設定 | 該当なし |
| API の網羅範囲 | Sell API の 100% を網羅する 379 個のツールをすぐに呼び出せます | ドキュメントを参照してリクエストをひとつずつ構築します |
| ホスティング | ローカルで実行。クラウドリレーは不要です | 独自のインフラストラクチャが必要です |
ワンクリック AI セットアップ
AI アシスタントにセットアップを任せましょう。 下のプロンプトをコピーして、Claude、ChatGPT、または MCP に対応した任意の AI アシスタントに貼り付けてください。
クリックして AI セットアッププロンプトをコピー
I want to set up the eBay MCP Server for my AI assistant. Please help me:
1. Install the eBay MCP server:
npm install -g ebay-mcp
2. I need to configure it for [Claude Desktop / Cursor / Cline / Zed / Continue.dev / Windsurf / Claude Code CLI / Amazon Q] (choose one)
3. My eBay credentials are:
- Client ID: [YOUR_CLIENT_ID]
- Client Secret: [YOUR_CLIENT_SECRET]
- Environment: [sandbox / production]
- Redirect URI (RuName): [YOUR_REDIRECT_URI]
Please:
- Create the appropriate config file for my MCP client
- Set up the environment variables
- Help me complete the OAuth flow to get a refresh token for higher rate limits
- Test that the connection works
If I don't have eBay credentials yet, guide me through creating a developer account at https://developer.ebay.com/
クイックスタート
1. eBay の認証情報を取得する
- 無料の eBay Developer Account を作成します。
- Developer Portal でアプリケーションキーを生成します。
- Client ID と Client Secret を保存します。
2. インストールする
npm install -g ebay-mcp # from npm (recommended)
または、ソースからインストールします。
git clone https://github.com/YosefHayim/ebay-mcp.git
cd ebay-mcp && npm install && npm run build
3. セットアップウィザードを実行する
npm run setup
ウィザードで eBay の認証情報を設定し、OAuth(より高いレート制限に対応)をセットアップします。また、MCP クライアントを自動検出して設定し、すべてを自動的に保存します。
4. 読み取り専用リクエストで確認する
MCP クライアントを再起動し、次のように尋ねます。
「eBay API のレート制限を確認してください。」
ebay_get_rate_limits または ebay_get_user_rate_limits が呼び出され、販売者データを変更せずに、サーバー、認証情報、MCP クライアントの設定を確認できます。
5. 使用する
AI アシスタントを使って eBay の管理を始めましょう。まずは読み取り専用の質問から始め、対象環境がサンドボックスか本番環境かを確認してから、在庫、注文、キャンペーンを変更するツールを使ってください。
📸 セットアップ手順のビジュアルガイド(eBay Developer Portal)
セットアップウィザード(npm run setup)が OAuth を自動で処理します。eBay Developer Portal で認証情報を確認できる場所は次のとおりです。
ステップ 1 — Developer Portal で App ID(Client ID) と Cert ID(Client Secret) をコピーします。

ステップ 2 — アプリの User Tokens 設定で RuName(eBay のリダイレクト URL)をコピーします。

ステップ 3 — npm run setup を実行します。ブラウザーが開き、OAuth ログインを開始して、eBay へのサインイン手順が案内されます。

ステップ 4 — プロンプトが表示されたら、コールバック URL に含まれる認証コードを貼り付けます。

ウィザードがコードをトークンに交換して保存し、MCP クライアントを設定します。これでユーザートークン認証を利用できるようになります(デフォルトの 1 日あたり 1,000 リクエストではなく、1 日あたり 10,000~50,000 リクエスト)。
デモ
Claude Desktop で eBay MCP サーバーが動作する様子をご覧ください。
https://github.com/user-attachments/assets/0173c8df-221c-4943-a4ce-cd20bce79f4b
設定
環境変数、ツールの公開、認証、クライアントの互換性
npm run setupを実行すると.envが自動的に書き込まれます。以下の変数は参考情報です。
EBAY_CLIENT_ID=your_client_id
EBAY_CLIENT_SECRET=your_client_secret
EBAY_ENVIRONMENT=sandbox # or "production"
EBAY_REDIRECT_URI=your_runame
EBAY_MARKETPLACE_ID=EBAY_US # default marketplace (overridable per tool)
# EBAY_SITE_ID=0 # Trading API site override; defaults from EBAY_MARKETPLACE_ID
EBAY_CONTENT_LANGUAGE=en-US # default request content language
EBAY_USER_REFRESH_TOKEN=your_token # for higher rate limits
# EBAY_SIGNING_KEY_JWE=<jwe> # Digital Signatures for EU/UK sellers (jwe from ebay_create_signing_key)
# EBAY_SIGNING_PRIVATE_KEY=<key> # privateKey from the same response (base64 PKCS#8 or PEM)
EBAY_MCP_UI=on # interactive MCP Apps views (beta); "off" forces plain JSON
EBAY_MCP_TOOLS=all # tool exposure: "all", "dynamic", or a family list (see below)
EBAY_READ_ONLY=false # when true, only register read-only tools (gets/lists/searches)
# Local photo/video upload (optional — off until a directory is allowed):
# EBAY_MCP_MEDIA_DIRS=/srv/media # path-delimited directories the media and feed upload tools may read
# EBAY_MCP_MEDIA_ROOT=/srv/media # root for media://<relative-path> references (also allowed)
# HTTP deploy (optional — Docker / Railway / self-hosted):
# MCP_HOST=0.0.0.0 # default is 0.0.0.0 when PORT is set
# MCP_PORT=3000 # preferred over platform PORT
# MCP_AUTH_TOKEN=secret # static Bearer for HTTP MCP (skips OAuth verifier)
# MCP_CORS_ORIGINS=https://app.example.com # browser origins allowed cross-origin (comma-separated); default: loopback origins only
ツールの公開(EBAY_MCP_TOOLS)
デフォルトでは、すべてのツールが一度にエージェントに公開されます。会話が長くなると、このカタログがコンテキストウィンドウのかなりの部分を占めるため、オプトイン方式を2つ用意し、公開範囲を絞れるようにしています。
| 値 | 動作 | 対応環境 |
|---|---|---|
all (デフォルト、または未設定) | 起動時にすべてのツールを公開します。 | すべてのホスト |
dynamic | 検索用のツール3つ(list_ebay_tools、enable_ebay_tools、disable_ebay_tools)のみが表示されます。エージェントがカタログを検索して必要なツールだけを読み込み、読み込んだツールはネイティブに表示されます。 | tools/listChanged に対応するホスト(例:Claude) |
inventory,fulfillment,… | 指定されたファミリーのみを登録し、セッション中はその設定が固定されます。 | すべてのホスト(ChatGPT、Cursor を含む) |
ファミリーのリストはそのまま適用され、指定したものだけが利用可能になります。ChatGPT コネクターには connector ファミリー(search/fetch ツール)が必要です。たとえば、EBAY_MCP_TOOLS=connector,inventory のように明示的に追加してください。無効なファミリー名を指定すると、起動時に有効なリストを示して即座にエラーになります。有効なファミリー:connector、token-management、account、finances、inventory、feed、stores、fulfillment、logistics、marketing、analytics、metadata、taxonomy、communication、browse、other、developer、trading。
認証とレート制限
| モード | 1日の上限 | 適した用途 | セットアップ |
|---|---|---|---|
| クライアント認証情報(デフォルト) | 1,000 req/day | 開発、テスト | Client ID + Secret で自動設定 |
| ユーザートークン(推奨) | 10k–50k req/day | 本番環境、大量利用 | npm run setup から OAuth |
ユーザートークンの上限はアカウントのティアによって異なります(Individual:10k、Commercial:25k、Enterprise:50k+)。429 が発生すると、サーバーは指数バックオフで再試行し、エラーを通知します。Developer Portal で使用状況を確認してください。
MCP client compatibility
Auto-configured by npm run setup. Requires Node.js ≥ 24 and MCP protocol 1.0+ over STDIO (default) or HTTP.
| Client | Platform | Config path |
|---|---|---|
| Claude Desktop | macOS, Windows, Linux | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Cursor IDE | macOS, Windows, Linux | ~/.cursor/mcp.json |
| Zed Editor | macOS, Windows, Linux | ~/.config/zed/settings.json |
| Cline | VS Code extension | ~/...globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json |
| Continue.dev | VS Code, JetBrains | ~/.continue/config.json |
| Windsurf (Codeium) | macOS, Windows, Linux | ~/.codeium/windsurf/mcp_config.json |
| Roo Code | VS Code extension | ~/...globalStorage/rooveterinaryinc.roo-cline/settings/mcp_settings.json |
| Claude Code CLI | Terminal | ~/.claude.json |
| Amazon Q Developer | AWS | ~/.aws/amazonq/mcp.json |
利用可能なツール
カテゴリ別に379個のツール(Sell APIを100%カバー)
379個のツールでSell APIを100%カバーし、カテゴリ別に整理されています。各リンクから、src/tools/categories/ にあるツールの定義とハンドラーを確認できます。
| カテゴリ | できること |
|---|---|
| コネクター | eBay MCP カタログを対象とするChatGPTコネクターの検索/取得ツール |
| アカウント | ビジネス、フルフィルメント、決済、返品に関するポリシー、プログラム、サブスクリプション、売上税、料率表、支払い設定、同梱配送ルール、ユーザー設定(accountV2.ts、Account API v2) |
| 財務 | 支払い、取引、送金、出品者の資金、請求アクティビティ、注文収益 |
| 在庫 | 在庫商品、出品、ロケーション、商品グループ、一括操作、SKU/ロケーションのマッピング、ローカルでの写真/動画のアップロード(media.ts、Media API) |
| フィード | 注文、在庫、カスタマーサービス指標のフィードタスク、スケジュールとテンプレート、フィードファイルのアップロード/ダウンロード |
| ストア | eBayストアの詳細、ストアカテゴリ、カテゴリタスク |
| フルフィルメント | 注文、配送、返金、紛争、支払い紛争の証拠 |
| ロジスティクス | 配送料金の見積もり、ラベルの購入、配送、ラベルのダウンロード(限定リリース) |
| マーケティング | プロモーテッド・リスティングのキャンペーン、広告、プロモーション、入札、一括操作 |
| アナリティクス | トラフィックレポート、出品者基準、カスタマーサービス指標 |
| コミュニケーション | 購入者と出品者間のメッセージ、交渉、通知、フィードバック |
| メタデータ | 返品ポリシー、売上税管轄区域、自動車の適合情報、配送業者/サービス/ロケーション、取り扱い時間 |
| タクソノミー | カテゴリツリー、商品属性、商品状態、期限切れカテゴリ、商品属性の一括エクスポート、慈善団体(charity.ts、Charity API) |
| その他 | ID、VeRO、翻訳、国際配送のサポートAPI |
| トレーディング(旧XML) | 固定価格およびオークション出品の作成、改訂、再出品、終了 |
| 開発者 | レート制限、署名キー、クライアント登録 |
| トークン管理 | OAuth URLの生成とトークン管理 |
ツールの例: ebay_get_inventory_items、ebay_get_offers_by_skus、ebay_get_orders、ebay_create_offer、ebay_get_campaigns、ebay_get_oauth_url。
機械可読な完全なインデックスについては、llms.txt をご覧ください。
インタラクティブなテーブル、カード、チャート、統計ビュー(ベータ版)
ベータ版 — この機能は新しく、MCP Apps の仕様とともに進化しています。また、ホストのサポートはまだ順次展開中です。オプトイン方式で、通常の JSON にフォールバックするため、既存のクライアントに影響することはありません。
EBAY_MCP_UIで切り替えられます(設定を参照してください)。
MCP Apps に対応したホストでは、一般的な読み取りツールの結果が生の JSON ではなく、ホスト独自のテーマを使ったインタラクティブなビューとして表示されます。ビューは、並べ替え可能なテーブル、詳細を表示するカード、チャート、統計グリッドのいずれかです。それ以外の環境では、同じツールが通常の JSON を返すため、動作に影響はありません。これは公式の MCP Apps SDK(@modelcontextprotocol/ext-apps) を基盤としており、MCP サーバーが会話型クライアントにインタラクティブな UI を提供できるようにする拡張機能です。
- オプトイン方式で、ホストの対応が必要です。 ビューが提供されるのは、MCP Apps 機能を通知するクライアント(例:Claude)に限られます。対応していないホスト(例:Cursor)には、通常の JSON がそのまま返されます。
- キルスイッチを搭載しています。
EBAY_MCP_UI=offに設定すると、対応ホストでも含め、すべての環境で通常の JSON が返されます。 - トークン消費を抑えます。 各ビューの HTML は、ホストが帯域外で一度だけ取得します(モデルのコンテキストには入りません)。モデルに渡されるのは、1 行の要約と、もともと受け取るはずだった構造化データだけです。
- 読み取り専用です。 ビューから実行されるのは読み取りツールのみ(行の詳細表示、ページ移動、更新)で、eBay のデータが変更されることはありません。
現在、主要なワークフローに関する 15 個のツールが、次の 4 種類のビューに対応しています。
| 種類 | ツール |
|---|---|
| テーブル | ebay_get_orders、ebay_get_shipping_fulfillments、ebay_get_offers、ebay_get_inventory_items、ebay_get_inventory_locations、ebay_get_payment_dispute_summaries |
| カード | ebay_get_order、ebay_get_offer、ebay_get_inventory_item、ebay_get_payment_dispute、ebay_get_seller_standards_profile |
| チャート | ebay_get_traffic_report、ebay_get_customer_service_metric |
| 統計 | ebay_get_rate_limits、ebay_get_user_rate_limits |
ビューは pnpm build(または pnpm build:mcp-apps)で自己完結型の HTML としてビルドされ、公開済みのパッケージに含まれます。ビュー自体はネットワークアクセスなしで読み込まれます。
AI アシスタントに依頼するような、よくあるタスクの例です。
- OAuth を設定する — 「eBay アカウントの OAuth 設定を手伝ってください。」 →
ebay_get_oauth_urlを使って認証 URL を生成し、リフレッシュトークンを設定します。これにより、1 日あたり 1 万~5 万件のリクエストが可能になります。 - 在庫を管理する — 「有効な出品をすべて表示してください。」 →
ebay_get_inventory_itemsが SKU、数量、ステータスを返します。 - 出品に写真を追加する — 「~/listings/megadrive にある 3 枚の写真を SKU MD-001 に添付してください。」 →
ebay_attach_media_to_inventory_itemが写真を eBay Picture Services にアップロードし、product.imageUrlsを更新します(EBAY_MCP_MEDIA_DIRSを設定すると、そのフォルダーを使用できます)。 - オークションを実施する — 「この SKU を 7 日間のオークションとして、開始価格 9.99 ドル、最低落札価格 25 ドルで出品してください。」 →
format: "AUCTION"、auctionStartPrice、auctionReservePrice、listingDuration: "DAYS_7"を指定してebay_create_offerを呼び出し、その後ebay_publish_offerを呼び出します。旧方式では、format: "AUCTION"と Trading のItem(StartPrice、ReservePrice、ListingDuration: "Days_7")を指定してebay_create_listingを呼び出します。 - オファーを検索する —
ebay_get_offersは、必須の SKU を 1 つ指定すると、その SKU のオファーを返します。在庫全体のオファーを列挙するには、まずebay_get_inventory_itemsを呼び出し、その後 SKU ごとにebay_get_offersを 1 回ずつ呼び出します。 - フルフィルメントポリシーを管理する — 「配送ポリシーを作成してから、処理時間を更新してください。」 →
ebay_create_fulfillment_policyが再利用可能なポリシー ID を作成し、ebay_update_fulfillment_policyがその設定を置き換えます。 - 注文を処理する — 「過去 7 日間の未処理注文をすべて取得してください。」 → 日付とフルフィルメントステータスのフィルターを指定して
ebay_get_ordersを呼び出します。 - キャンペーンを作成する — 「電子機器のプロモーション出品キャンペーンを作成してください。」 →
ebay_create_campaignと関連するマーケティングツールを使用します。 - 一括操作を行う — 「『Vintage Watches』の商品すべてに 10% の割引を適用してください。」 → 該当する商品に対して
ebay_get_inventory_itemsとebay_update_offerを使用します。
対象範囲と安全性
- 非公式プロジェクトです。 これは eBay の製品ではなく、お使いの eBay Developer アカウントで認められている範囲を超える API 権限を付与するものではありません。
- ローカルサーバーからライブ API に接続します。 MCP サーバーはお使いのマシン上で動作しますが、ツールはインターネット経由で eBay のサンドボックス API または本番 API を呼び出します。
- 変更を行うツールはセラーデータを変更する場合があります。 在庫、フルフィルメント、マーケティング、アカウント、フィード、ストア、Trading の各ツールは、eBay のレコードを作成、修正、返金、終了、またはその他の方法で更新する場合があり、
ebay_create_shipment_from_shipping_quoteは送料を購入します。まずサンドボックスでテストしてください。 - ツールの公開範囲は設定できます。 より小さく、ワークフローに特化したツール群を使う場合は、
EBAY_MCP_TOOLS=dynamicまたはツールのカテゴリ一覧を指定してください。 - インタラクティブビューは読み取り専用です。 MCP Apps ビューでは、読み取りツールを使ってページ移動、更新、詳細表示ができますが、eBay のデータは変更されません。
- コンプライアンスは利用者の責任です。 認証情報を安全に管理し、レート制限を監視し、eBay の API 利用規約とデータ取り扱いルールに従ってください。
ログとトラブルシューティング
- ログ — Winston ベースで、stderr(MCP セーフ)に出力されます。オプションでファイルにも出力できます。
- トラブルシューティング — サーバーが表示されない、認証エラー、レート制限、結果が空などの問題が発生した場合は、
npm run diagnoseから始めてください。
よくある質問
eBay MCP サーバーとは何ですか?
Model Context Protocol に準拠したローカルサーバーです。AI アシスタントに、在庫、注文のフルフィルメント、マーケティング、分析、開発者向けツールなど、追跡対象の eBay Sell、Commerce、Developer API の 100%(356 エンドポイント)をカバーする 379 個のツールを提供します。
これは eBay の公式製品ですか?
いいえ。これは非公式のサードパーティ製オープンソースプロジェクトです。eBay Inc. との提携、認可、または推奨を受けていません。
どの AI アシスタントと MCP クライアントに対応していますか?
`npm run setup` によって、9 つのクライアントが自動設定されます。Claude Desktop、Cursor、Zed、Cline、Continue.dev、Windsurf、Roo Code、Claude Code CLI、Amazon Q Developer です。MCP 互換のクライアントであれば接続できます。Claude、ChatGPT、Cursor と一緒に使えますか?
はい。Claude Desktop と Claude Code ではそのまま利用でき、Cursor やその他の MCP 対応 IDE でも使えます。また、Model Context Protocol に対応するアシスタントであれば、どれでも利用できます。上記のワンクリックセットアッププロンプトは、ChatGPT やその他のアシスタントでも機能します。
インタラクティブなテーブルやチャートが表示されないのはなぜですか?
インタラクティブな MCP Apps ビューは、機能を通知するホスト(例:Claude)でのみ表示されます。それ以外のクライアントには、同じデータがプレーンな JSON として表示されます。また、EBAY_MCP_UI=off を設定していないことと、ビューがビルドされていること(pnpm build で build:mcp-apps が実行されます)も確認してください。
どのくらいの数の eBay API とツールに対応していますか?
356 個の固有エンドポイントにまたがる 379 個のツールに対応しており、追跡対象となる eBay Sell、Commerce、Developer API の 100% を網羅しています。
無料でオープンソースですか?
はい。MIT ライセンスの下で公開されています。
ローカルまたはクラウドで実行されますか?
STDIO(またはローカル HTTP)を介して、すべてお使いのマシン上で実行されます。クラウドリレーはなく、eBay の認証情報がコンピューターの外部に送信されることはありません。
使い始めるには何が必要ですか?
Node.js ≥ 24、無料の eBay Developer Account(Client ID + Client Secret)が必要です。その後、npm run setup を実行してください。
eBay API のレート制限はいくつですか?
クライアント認証情報(デフォルト)では、1 日あたり約 1,000 件のリクエストが可能です。OAuth を使用してユーザートークンで認証すると、アカウントのティアに応じて 1 日あたり 10,000~50,000 件に増加します。
サンドボックスと本番環境の両方に対応していますか?
はい。EBAY_ENVIRONMENT 変数(sandbox または production)で切り替えられます。
認証情報とデータは安全ですか?
認証情報は .env ファイルにローカル保存され、eBay への直接の呼び出しにのみ使用されます。
eBay API を直接呼び出す場合とどう違いますか?
AI アシスタントを通じて、自然言語で操作できます。OAuth トークン管理、バックオフを伴う自動再試行、型安全な Zod バリデーションが組み込まれています。上記の比較表をご覧ください。
写真や動画をアップロードできますか?
はい。ebay_upload_images、ebay_upload_video、ebay_attach_media_to_inventory_item はローカルファイル(絶対パスまたは media:// 参照)を読み取り、eBay の Media API を介してアップロードします。product.imageUrls/product.videoIds に使用する EPS 画像 URL と動画 ID が返されます。ebay_upload_feed_task_file も同様に、ローカルのフィードファイルをアップロードします。ファイルシステムへのアクセスはオプトイン方式です。EBAY_MCP_MEDIA_DIRS または EBAY_MCP_MEDIA_ROOT でディレクトリを指定するまでは、ファイルを読み取れません。ローカルファイルからの写真と動画をご覧ください。
オークション出品に対応していますか?
はい。REST Inventory の出品ツールを使用し、format: "AUCTION"、auctionStartPrice、任意の auctionReservePrice、日数で指定する listingDuration を設定して出品を作成し、その後公開します。オークション出品をご覧ください。従来の Trading API ツールでも同じ切り替えが使えます。format: "AUCTION" を指定して ebay_create_listing を実行すると、開始入札価格の StartPrice と日数で指定する ListingDuration を含む AddItem が送信されます。
eBay のレガシー Trading API(XML)に対応していますか?
はい。Trading API ツールを使って、固定価格の出品(AddFixedPriceItem ファミリー、デフォルト)とオークション(format: "AUCTION" → AddItem、ReviseItem、EndItem、RelistItem)の出品作成、変更、再出品、終了の各操作に対応しています。
レート制限を引き上げるにはどうすればよいですか?
npm run setup で OAuth フローを完了し、ユーザートークンで認証してください(デフォルトの 1k 件ではなく、1 日あたり 10k~50k 件のリクエストが可能になります)。
何を使って構築されていますか?
TypeScript と Node.js(ESM)を使用し、公式の MCP SDK、ツール入力用の Zod スキーマ、型付き非同期エラーのための Effect、OpenAPI から生成した型を採用しています。
最新バージョンに更新するにはどうすればよいですか?
npm install -g ebay-mcp@latest(または npm update -g ebay-mcp)を実行してください。
オフラインで動作しますか?
いいえ。「ローカルで実行」とは、サーバープロセスがご利用のマシン上で動作するという意味です。eBay のライブ API に接続するには、インターネット接続と有効な認証情報が必要です。
貢献
貢献を歓迎します。フォーク → ブランチ作成 → テスト追加 → 以下のチェックを実行 → Conventional Commits に沿ってコミット → PR を作成してください。
pnpm typecheck && pnpm typecheck:mcp-apps # TypeScript (server + MCP Apps views)
pnpm check:ci # Biome lint + format
pnpm test && pnpm test:integration # Vitest unit + integration
pnpm build # Build to build/
プッシュする前に Docker で CI ゲートをローカル実行するには、act を使用してください:act workflow_dispatch -W .github/workflows/ci.yml。マシンの ~/.actrc で、ランナー、アーキテクチャ、共有キャッシュを選択します。
リソース
プロジェクトのドキュメント:
- llms.txt — AI エージェント向けの簡潔なプロジェクト概要です。
- リリース と Issue トラッカー。
公式仕様とツール:
- eBay Developer Portal、Sell API ドキュメント、API ライセンス契約、データ取り扱い要件、API ステータス。
- Model Context Protocol と MCP Apps SDK。
- Node.js、npm パッケージ、TypeScript、Zod、Effect、Biome、Vitest、GitHub Actions。
- Claude Code と llms.txt。
ライセンス
MIT — LICENSE を参照してください。
コントリビューター
このプロジェクトの改善にご協力いただいた皆様、ありがとうございます!🎉
このプロジェクトを支援する · Yosef Hayim Sabag が作成
eBay MCP サーバー · eBay Sell API 向けの Model Context Protocol · Claude、Cursor、あらゆる AI アシスタントを eBay の在庫、注文、マーケティング、分析に接続します。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
