インストール不要。2分以内に動きます。
cloud.anythingmcp.com で無料トライアルを開始し、OTTO Sponsored Product Ads をワンクリックで追加して、AI クライアント(Claude、ChatGPT、Copilot、Cursor)を生成された MCP エンドポイントに向けるだけ。Docker も git clone も、開発経験も不要です。
概要
OTTO Market の Sponsored Product Ads に対応します。キャンペーン、広告対象の SKU (ターゲット)、キーワードと入札単価に加え、otto.de の広告主向けの SPA レポート (キャンペーン別・商品別の KPI、CSV レポート) を扱います。認証は広告スコープ付きの OAuth 2.0 クライアントクレデンシャルです。
こう聞いてみよう
OTTO Sponsored Product Ads のサンプルプロンプト
プロンプトをクリックでコピー。Claude / ChatGPT / Cursor / Gemini / Copilot / OpenClaw に貼り付けて、このコネクターで実行できます。
Claude は AI のため誤ることがあります。回答をご確認ください。
💡 インストール不要? cloud.anythingmcp.com を直接利用してください。 サインインし、Connectors → OTTO Sponsored Product Ads をクリック、認証情報を貼り付け、MCP API キーを発行すれば完了です。Docker も
git cloneもローカルサーバーも不要。
OTTO Sponsored Product Ads + Gemini
OTTO Market の Sponsored Product Ads に対応します。キャンペーン、広告対象の SKU (ターゲット)、キーワードと入札単価に加え、otto.de の広告主向けの SPA レポート (キャンペーン別・商品別の KPI、CSV レポート) を扱います。認証は広告スコープ付きの OAuth 2.0 クライアントクレデンシャルです。
前提条件
完全なセットアップ手順はコネクタ自体に組み込まれています (ストアでコネクタを選択すると表示)。必要な環境変数:
OTTO_ADS_CLIENT_ID, OTTO_ADS_CLIENT_SECRET
ステップ 1 — 認証情報を取得
セットアップは約 5 分です。Sponsored Product Ads を利用している OTTO Market のパートナーアカウントと、OTTO Partner Connect のアプリが必要です。ユーザーのサインインはなく、コネクターはクライアントクレデンシャルを使います。
- OTTO Partner Connect で自分のアカウント用のアプリを作成し (Partner API で使っているアプリを開いても構いません)、Sponsored Product Ads のインターフェースを有効にします。
- アプリの client id と client secret をコピーします。secret は作成時に一度だけ表示されます。手元にない場合は OTTO Partner Connect で再発行してください。
- client id を
OTTO_ADS_CLIENT_IDに、secret をOTTO_ADS_CLIENT_SECRETに貼り付けます。AnythingMCP はadvertising-servicesスコープで OTTO のクライアントクレデンシャルフローを実行します。トークンの有効期間は 30 分で、期限が切れると自動で取得し直します。 - コネクターをインストールし、
otto_ads_list_campaignsを実行します。キャンペーンがステータス、タイプ、予算とともに一覧表示されます。
OTTO Market コネクターとは別です: Sponsored Product Ads には専用の OAuth スコープがあります。注文、商品、在庫、返品は OTTO Market コネクターで扱います。広告を分けておくことで、広告インターフェースのないアプリもそちらで引き続き使えます。
読み取れるデータ: ステータス、タイプ (AUTOMATIC または MANUAL)、予算、予算タイプ、ペーシング、期間を含むキャンペーン。入札単価付きの広告対象 SKU (ターゲット)。マッチタイプ、ポジティブかネガティブか、入札単価を含む各ターゲットのキーワード。キャンペーン別と SKU 別の KPI (表示回数、クリック数、費用、アトリビューションされた売上、注文された SKU、クリック率、クリック単価、広告費用対効果)。そしてキャンペーン別、キーワード別 (購入者が実際に入力した検索語を含む)、商品別の CSV レポートです。
金額はユーロセント単位です: 予算、入札単価、費用は {"amount": 160, "currency": "EUR"} の形で届き、これは 1.60 ユーロです。入札単価と予算の最小額は 20 (0.20 ユーロ) です。レポートの TOTAL_COSTS 列と TOTAL_SALES 列もセント単位です。
入札単価は 2 か所にあります: AUTOMATIC キャンペーンはターゲット (SKU) ごとに、MANUAL キャンペーンはポジティブキーワードごとに入札します。ネガティブキーワード (入札なし) はどちらでも使え、1 つのターゲットに属します。キャンペーン全体で検索語を除外するには、AI がすべてのターゲットに追加します。
レポート: KPI の対象は最大で直近 90 日間で、当日は含まれません。日付を指定しない場合、OTTO は直近 7 日間を使います。OTTO はクリック後 14 日までの売上を、同じブランドの他の商品も含めてアトリビューションするため、直近の数日はまだ変わります。CSV レポートは、AI がリクエストし、otto_ads_get_report_status で READY になるまで確認してから otto_ads_download_report で取得します。ファイルは 24 時間保持されます。レポートのリクエストでキャンペーンが変わることはありません。
変更の前に必ず確認します: otto_ads_create_campaign、otto_ads_update_campaign、otto_ads_add_targets、otto_ads_update_target_bids、otto_ads_add_keywords、otto_ads_update_keywords は配信中の広告を変更し、費用が発生します。AI はキャンペーン、ターゲット、キーワードとユーロでの金額を示し、金額を確認したうえで承認を待ちます。書き込みは非同期です。OTTO は変更リクエストを返し、AI は otto_ads_get_change_request で ACCEPTED または REJECTED (理由付き) になるまで追跡します。
インストール時はオフ: otto_ads_delete_keywords。ターゲットのキーワードを 1 件から 50 件まで削除し、元に戻せません。多くの場合、入札単価を下げるほうが適切です。管理者が意図して有効にできます。
制限: OTTO で作成できるレポートは、すべての種類を合わせて 24 時間あたり最大 200 件です。レポートが何も変更しない場合でも数えられます。1 つのキャンペーンで保留中にできる変更リクエストは一度に 1 件だけです。一覧は最大 1000 件ずつのページで返り、AI は nextCursor でページをたどります。変更リクエストを確認するときは、429 を避けるために待ち時間を少しずつ延ばします (1 秒、2 秒、4 秒)。
よくあるエラー: トークンが拒否された場合は、client id または secret が誤っているか、アプリで Sponsored Product Ads のインターフェースが有効になっていません。OTTO Partner Connect でアプリを確認してください。409 は同じキャンペーンへの別の変更がまだ保留中であることを示します。"Invalid status transition PAUSED to PAUSED" のような却下は、キャンペーンがすでにそのステータスであることを示します。KPI での 404 "Data not found" は、その期間にキャンペーンの表示がなかったことを示します。ダウンロードでの 404 はレポートがまだ準備できていないこと、410 は期限切れであることを示します。
このコネクターは、注文、商品、在庫、返品の読み取り (それらは OTTO Market コネクターで扱います)、当日や 90 日より前のデータの表示、キャンペーンやターゲットの削除は行いません。
ステップ 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 — Gemini にコネクタを追加
サーバーURL: AnythingMCP で MCP Servers を開き、このコネクタがあるサーバーを選んで URL(
https://cloud.anythingmcp.com/mcp/…)をコピーします。このガイドでYOUR_SERVER_IDと表示されている箇所に使ってください。
Gemini CLI は ~/.gemini/settings.json(Windows では %USERPROFILE%\.gemini\settings.json)から MCP サーバーを読み込みます。次を追加してください:
{
"mcpServers": {
"anythingmcp": {
"httpUrl": "https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID",
"headers": { "X-API-Key": "YOUR_MCP_API_KEY" }
}
}
}
- AnythingMCP の MCP Servers → 対象のサーバー → API keys で MCP API キーを作成し、
YOUR_MCP_API_KEYと置き換えます。 - ファイルを保存し、
geminiを再起動します。 - Gemini CLI で
/mcpを実行します(またはシェルでgemini mcp list)。anythingmcpが接続済みとして表示されるはずです。 - プロンプトを入力しましょう。Gemini CLI が
OTTO Sponsored Product Adsのツールを呼び出せるようになりました。
利用可能なツール
| Tool | What it does |
|---|---|
otto_ads_list_campaigns | List Sponsored Product Ads campaigns: campaignId, name, status (PENDING, WAITING, ACTIVE, PAUSED, ENDED, CANCELED), campaignType (AUTOMATIC… |
otto_ads_get_campaign | Read one campaign: status, type, budget (euro cents), budgetType, pacing and dates |
otto_ads_list_targets | List the targets (advertised SKUs) of a campaign with targetId, sku and bid |
otto_ads_get_target | Read one target (advertised SKU) of a campaign with its bid |
otto_ads_list_keywords | List the keywords of one target: keywordId, keyword, matchType (EXACT, PHRASE, BROAD), keywordType (POSITIVE or NEGATIVE) and bid (euro… |
otto_ads_get_change_request | Status of an asynchronous write: PENDING, ACCEPTED or REJECTED |
otto_ads_get_campaign_kpis | KPIs of one campaign for a date range: views, clicks, costs, attributed sales, ordered SKUs, click-through rate, cost per click and return… |
otto_ads_get_product_kpis | KPIs of one SKU inside one campaign for a date range, the same metrics as the campaign KPIs plus totalSalesSeller (attributed sales of… |
otto_ads_request_campaign_report | Start a CSV campaign report across campaigns and days |
otto_ads_request_keyword_report | Start a CSV keyword report: performance per keyword and per actual search term, the basis for new negative keywords and bid changes |
otto_ads_request_product_report | Start a CSV product report: performance per advertised SKU |
otto_ads_get_report_status | Status of a requested report: IN_PROGRESS, READY or FAILED (request a new one after FAILED). report_type must match the tool that requested… |
otto_ads_download_report | Download a READY report as CSV text. 404 means it is not ready yet, 410 that it expired (files are kept 24 hours) |
otto_ads_create_campaign | Create a campaign |
otto_ads_update_campaign | Change a campaign: status (ACTIVE, PAUSED, WAITING), budget (euro cents), pacing, name, start or end date |
otto_ads_add_targets | Add SKUs to a campaign |
otto_ads_update_target_bids | Change target bids in an AUTOMATIC campaign |
otto_ads_add_keywords | Add keywords to one target |
otto_ads_update_keywords | Change the bid (euro cents) or matchType of existing keywords of one target |
otto_ads_delete_keywords | Delete 1 to 50 keywords of one target by keywordId |
プロンプトの例
- 「直近 30 日間で広告費用対効果が最も高かった OTTO のキャンペーンはどれですか。それぞれの費用もユーロで教えてください。」
- 「キャンペーン『Gartenmöbel Sommer』を一時停止してください。先に現在のステータスを確認し、OTTO が変更を承認したら知らせてください。」
- 「自動キャンペーン『Bettwäsche』の SKU BL-4711 の入札単価を 0.80 ユーロに上げてください。変更前に、現在の入札単価と新しい入札単価を見せてください。」
- 「直近 30 日間のキーワードレポートをリクエストし、費用がかかったのに売上がなかった検索語を、ネガティブキーワードの候補として一覧にしてください。」
- 「自動キャンペーン『Winterjacken』を、1 日の予算 25 ユーロ、均等配信、来週の月曜日開始で作成し、SKU JK-100 と JK-200 をそれぞれ入札単価 0.50 ユーロで追加してください。」
FAQ
Gemini CLI はどこから MCP サーバーを読み込みますか? ユーザー単位では ~/.gemini/settings.json、プロジェクト単位ではプロジェクト内の .gemini/settings.json です。gemini mcp list で各サーバーと接続状態を確認できます。
次のステップ
このガイドは役に立ちましたか?