# Amazon Ads

Connects your MCP assistant directly to the Amazon Ads API. Pulls performance reports, checks campaign setups, and safely stages changes.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI
- Author: get-mcp-ads
- License: Apache-2.0 · policy=link-only · description only; the file stays with the author
- Source: https://github.com/get-mcp-ads/amazon-ads-mcp-server
- Updated: 2026-10-23
- HTML: https://affpapa.org/en/nevibecode/mcp/get-mcp-ads-amazon-ads

## What it does

The server links your client to Sponsored Products and Sponsored Brands data. It provides 31 read tools covering Reporting v3, creative asset libraries, and product metadata. Calls travel directly to regional Amazon endpoints via standard I/O.

Modifying ad resources requires setting `AMAZON_ADS_ENABLE_WRITES=true`. By default, all 77 mutation tools remain locked. When active, new campaigns and ads are initialized in a paused state, verifying each payload against Amazon contracts before confirmation.

Credentials stay protected in memory. Access tokens refresh automatically and never touch persistent storage. Running the server requires Node.js 22.23.4, 24.22.1, 26.12.1, or higher.

## Requirements
- Needs: Node.js (commands run via npx)
- Environment variables: `AMAZON_ADS_CLIENT_ID`, `AMAZON_ADS_CLIENT_SECRET`, `AMAZON_ADS_REFRESH_TOKEN`, `AMAZON_ADS_REGION`, `AMAZON_ADS_PROFILE_IDS`, `AMAZON_ADS_ENABLE_WRITES` — keys and tokens: ask the human for the values, never commit them or put them in shared files.

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add amazon-ads -e AMAZON_ADS_CLIENT_ID=<AMAZON_ADS_CLIENT_ID> -e AMAZON_ADS_CLIENT_SECRET=<AMAZON_ADS_CLIENT_SECRET> -e AMAZON_ADS_REFRESH_TOKEN=<AMAZON_ADS_REFRESH_TOKEN> -e AMAZON_ADS_REGION=<AMAZON_ADS_REGION> -e AMAZON_ADS_PROFILE_IDS=<AMAZON_ADS_PROFILE_IDS> -- npx -y @getmcpads/amazon-ads-mcp-server
```
Replace <…> with your own values. 1 more environment variable is in the server README

### Codex

**Platform CLI**
```bash
codex mcp add get-mcp-ads-amazon-ads --env AMAZON_ADS_CLIENT_ID=<AMAZON_ADS_CLIENT_ID> --env AMAZON_ADS_CLIENT_SECRET=<AMAZON_ADS_CLIENT_SECRET> --env AMAZON_ADS_REFRESH_TOKEN=<AMAZON_ADS_REFRESH_TOKEN> --env AMAZON_ADS_REGION=<AMAZON_ADS_REGION> --env AMAZON_ADS_PROFILE_IDS=<AMAZON_ADS_PROFILE_IDS> -- npx -y @getmcpads/amazon-ads-mcp-server
```
Replace <…> with your own values. 1 more environment variable is in the server README

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "get-mcp-ads-amazon-ads": {
            "command": "npx",
            "args": [
                "-y",
                "@getmcpads/amazon-ads-mcp-server"
            ],
            "env": {
                "AMAZON_ADS_CLIENT_ID": "<AMAZON_ADS_CLIENT_ID>",
                "AMAZON_ADS_CLIENT_SECRET": "<AMAZON_ADS_CLIENT_SECRET>",
                "AMAZON_ADS_REFRESH_TOKEN": "<AMAZON_ADS_REFRESH_TOKEN>",
                "AMAZON_ADS_REGION": "<AMAZON_ADS_REGION>",
                "AMAZON_ADS_PROFILE_IDS": "<AMAZON_ADS_PROFILE_IDS>"
            }
        }
    }
}
```
Replace <…> with your own values. 1 more environment variable is in the server README

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "get-mcp-ads-amazon-ads": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@getmcpads/amazon-ads-mcp-server"
            ],
            "env": {
                "AMAZON_ADS_CLIENT_ID": "<AMAZON_ADS_CLIENT_ID>",
                "AMAZON_ADS_CLIENT_SECRET": "<AMAZON_ADS_CLIENT_SECRET>",
                "AMAZON_ADS_REFRESH_TOKEN": "<AMAZON_ADS_REFRESH_TOKEN>",
                "AMAZON_ADS_REGION": "<AMAZON_ADS_REGION>",
                "AMAZON_ADS_PROFILE_IDS": "<AMAZON_ADS_PROFILE_IDS>"
            }
        }
    }
}
```
Replace <…> with your own values. 1 more environment variable is in the server README

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add -e AMAZON_ADS_CLIENT_ID=<AMAZON_ADS_CLIENT_ID> -e AMAZON_ADS_CLIENT_SECRET=<AMAZON_ADS_CLIENT_SECRET> -e AMAZON_ADS_REFRESH_TOKEN=<AMAZON_ADS_REFRESH_TOKEN> -e AMAZON_ADS_REGION=<AMAZON_ADS_REGION> -e AMAZON_ADS_PROFILE_IDS=<AMAZON_ADS_PROFILE_IDS> get-mcp-ads-amazon-ads npx -y @getmcpads/amazon-ads-mcp-server
```
Replace <…> with your own values. 1 more environment variable is in the server README

## When to use it
- inspect Sponsored Products campaign configurations
- retrieve advertising metrics using Reporting v3
- filter accounts strictly by `AMAZON_ADS_PROFILE_IDS`
- draft paused campaign and bid updates before applying

## Example prompts
- List my configured Amazon Ads profiles
- Pull the last week of performance metrics for Sponsored Display campaigns
- Check current ad groups and product metadata for my active brand

## Similar
- [amazon-ads](https://affpapa.org/en/nevibecode/mcp/amazon-ads.md) — MCP server
- [amazon_ads_mcp](https://affpapa.org/en/nevibecode/mcp/amazon-ads-mcp.md) — MCP server · ★ 74
- [ads-amazon](https://affpapa.org/en/nevibecode/skills/ads-amazon.md) — skill · 3300 installs
- [amazon-display-ads](https://affpapa.org/en/nevibecode/skills/amazon-display-ads.md) — skill · 1100 installs
- [LinkedIn Ads MCP by AdPlug](https://affpapa.org/en/nevibecode/mcp/linkedin-ads-mcp-by-adplug.md) — MCP server · ★ 41
- [Google Ads MCP by Markifact](https://affpapa.org/en/nevibecode/mcp/google-ads-mcp-by-markifact.md) — MCP server · ★ 1

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
