MCP Server for Amazon Ads management via PPC Prophet - manage campaigns, keywords, and bids through Claude
An MCP (Model Context Protocol) server for managing Amazon Advertising campaigns through natural language via AI assistants like Claude.
- Node.js 18+
- A PPC Prophet account
- Your PPC Prophet API token
No installation required - use npx to run directly:
``bash`
npx ppc-prophet-mcp
Or install globally:
`bash`
npm install -g ppc-prophet-mcp
`bash`Clone or download the mcp-server directory
cd mcp-server
npm install
npm run build
Log in to your PPC Prophet account and generate an API token from Settings > API Access.
Edit your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json
Windows:
#### Using npx (Recommended)
`json`
{
"mcpServers": {
"ppc-prophet": {
"command": "npx",
"args": ["-y", "ppc-prophet-mcp"],
"env": {
"PPC_PROPHET_API_KEY": "YOUR_API_TOKEN_HERE"
}
}
}
}
#### Using Global Install
`json`
{
"mcpServers": {
"ppc-prophet": {
"command": "ppc-prophet-mcp",
"env": {
"PPC_PROPHET_API_KEY": "YOUR_API_TOKEN_HERE"
}
}
}
}
#### Using Local Build
`json`
{
"mcpServers": {
"ppc-prophet": {
"command": "node",
"args": ["/path/to/mcp-server/build/index.js"],
"env": {
"PPC_PROPHET_API_KEY": "YOUR_API_TOKEN_HERE"
}
}
}
}
After editing the configuration, restart Claude Desktop to load the MCP server.
Before configuring Claude Desktop, you can test the server with the MCP Inspector:
`bash`
npm run inspect
This opens a web UI where you can test all the tools interactively.
- List all Amazon advertising profiles
- get_profile - Get details about a specific profile$3
- list_campaigns - List campaigns for a profile
- get_campaign - Get campaign details
- update_campaign_status - Pause, enable, or archive a campaign
- update_campaign_budget - Change daily budget
- search_campaigns - Search campaigns by name$3
- list_keywords - List keywords for a profile/campaign
- update_keyword_bid - Change keyword bid
- update_keyword_status - Pause, enable, or archive a keyword$3
- get_performance - Get performance metrics for a date rangeExample Conversations
$3
`
User: "Show me my Amazon accounts"
Claude: [Uses list_profiles tool]
`$3
`
User: "How did my campaigns perform last week?"
Claude: [Uses get_performance tool with date range]
`$3
`
User: "Increase the bid for keyword 'blue widget' to $1.50"
Claude: [Uses update_keyword_bid tool]
`$3
`
User: "Pause my Brand Defense campaign"
Claude: [Uses search_campaigns to find it, then update_campaign_status]
`Development
`bash
Watch mode for development
npm run devBuild for production
npm run build
`Architecture
`
Claude Desktop → MCP Server (this) → Laravel API → MySQL Database
`The MCP server acts as a bridge between Claude and your PPC Prophet Laravel API, translating natural language requests into API calls.
Troubleshooting
$3
- Ensure your Laravel API is running (php73 artisan serve)
- Check the API URL in your configuration$3
- Verify your Sanctum token is valid
- Ensure the token hasn't expired
- Check the user has access to the requested profiles$3
- Restart Claude Desktop after configuration changes
- Check the configuration file path is correct
- Verify the build directory exists (npm run build`)