亚马逊广告API服务

一个提供与亚马逊广告API交互工具的模型上下文协议(MCP)服务器,用于访问和管理亚马逊广告活动、关键词及性能数据等。

  • by cprice70
  • TypeScript
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 cprice70/amazonads-mcp

使用说明

亚马逊广告MCP服务器

模型上下文协议(MCP)服务器,提供与亚马逊广告API交互的工具。该服务器使AI助手能够访问和管理亚马逊广告活动、关键字、性能数据等。

特性

此MCP服务器提供以下工具:

  • 获取文件:列出所有可用的亚马逊广告配置文件/帐户
  • get_campaigns:通过可选的按州和类型过滤来检索广告活动
  • get_campaign_性能:获取活动的绩效指标(印象、点击、成本、销售额)
  • 获取关键字:检索活动或广告组的关键字
  • update_keyword_bid:更新特定关键字的出价金额
  • create_campaign:创建新的广告活动
  • get_product_ads:检索活动或广告组的产品广告

先决条件

  1. 亚马逊广告账户:您需要一个有效的亚马逊广告帐户
  2. API证书:注册亚马逊广告API访问并获得:
    • 客户端ID
    • 客户端密钥
    • 刷新令牌

获取亚马逊广告API凭据

第一步:注册您的申请

  1. 首选 亚马逊广告API
  2. 使用您的Amazon Ads帐户登录
  3. 导航到开发人员中心并创建新应用程序
  4. 你会得到一个 客户端ID 和 客户端密钥 -保存这些!

第二步:获取刷新令牌

我们提供了一个帮助脚本,通过OAuth流获取您的刷新令牌:

  1. 创建一个 .env 项目根目录中的文件:

    AMAZON_ADS_CLIENT_ID=your_client_id_here
    AMAZON_ADS_CLIENT_SECRET=your_client_secret_here
    
  2. 运行OAuth帮助程序脚本:

    npm run get-token
    
  3. 您的浏览器将打开亚马逊的授权页面

  4. 登录并授权申请

  5. 脚本将显示您的 刷新令牌 -将其复制到您的 .env 文件

第三步:记下你所在的地区

确定您的广告区域:

  • 不适用:北美(亚马逊)
  • 欧盟:欧洲(amazon.co.uk、amazon.de等)
  • 铁:远东(amazon.co.jp等)

安装

  1. 克隆此存储库:
git clone <your-repo-url>
cd amazonads-mcp
  1. 安装依赖项:
npm install
  1. 构建项目:
npm run build

配置

环境变量

创建一个 .env 文件或设置以下环境变量:

AMAZON_ADS_CLIENT_ID=your_client_id
AMAZON_ADS_CLIENT_SECRET=your_client_secret
AMAZON_ADS_REFRESH_TOKEN=your_refresh_token
AMAZON_ADS_REGION=NA  # Options: NA, EU, FE
AMAZON_ADS_SANDBOX=false  # Set to true for testing with sandbox API

Claude桌面配置

将此服务器添加到您的Claude Desktop配置文件中:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json 视窗: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "amazonads": {
      "command": "node",
      "args": ["/absolute/path/to/amazonads-mcp/build/index.js"],
      "env": {
        "AMAZON_ADS_CLIENT_ID": "your_client_id",
        "AMAZON_ADS_CLIENT_SECRET": "your_client_secret",
        "AMAZON_ADS_REFRESH_TOKEN": "your_refresh_token",
        "AMAZON_ADS_REGION": "NA"
      }
    }
  }
}

用法示例

在Claude Desktop中配置后,您可以要求Claude:

  • “显示我的所有亚马逊广告活动”
  • “从1月1日到1月31日,活动ID 12345的绩效指标是什么?”
  • “列出活动12345的所有关键字”
  • “将关键字67890的出价更新为1.50美元”
  • “创建一个新的赞助产品活动,每日预算为50美元”
  • “显示活动12345中的所有产品广告”

发展

项目结构

amazonads-mcp/
├── src/
│   ├── index.ts              # Main MCP server implementation
│   └── amazon-ads-client.ts  # Amazon Ads API client
├── build/                     # Compiled JavaScript output
├── package.json
├── tsconfig.json
└── README.md

建筑

npm run build

发展模式

注意更改并自动重建:

npm run watch

测试服务器

直接运行服务器:

npm start

服务器通过stdio进行通信,并期望收到MCP协议消息。

API覆盖范围

此服务器当前支持:

  • 赞助商品:完全支持活动、关键字和产品广告
  • 赞助品牌:活动管理(部分支持)
  • 赞助展示:活动管理(部分支持)
  • 报告:基本绩效指标(简化实施)

重要说明

  1. 速率限制:亚马逊广告API有费率限制。客户端当前未实现速率限制逻辑。

  2. 报告API:The get_campaign_performance 该工具使用简化的实现。对于生产使用,您应该实现完整的异步报告流程:

    • 创建报告请求
    • 报告完成投票
    • 下载并解析报告
  3. 错误处理:API错误返回给调用方。确保正确的凭据配置,以避免身份验证错误。

  4. 区域:请确保根据您的亚马逊广告帐户设置正确的地区(北美、欧盟、FE)。

安全

  • 永远不要承诺你的 .env 文件或公开API凭据
  • 刷新令牌应安全存储
  • 考虑实施生产使用的凭证轮换

资源

许可证

麻省理工学院

贡献

欢迎投稿!请随时提交拉取请求。