使用说明
元广告MCP服务器
用于元营销API的MCP服务器。让Claude Desktop直接访问您的广告帐户数据——广告活动绩效、创意分析、受众细分和预算节奏。
工具
| 工具 | 说明 |
|---|---|
get_campaigns |
列出包含状态、目标和预算信息的活动 |
get_campaign_performance |
核心KPI:支出、印象、CTR、CPC、CPM、CPA、ROAS |
get_creative_performance |
创意水平指标,包括视频挂机率和直通率 |
get_ad_creatives |
内联渲染广告创意图像(默认为全分辨率, image_size: "thumbnail" 64×64预览) |
get_audience_breakdown |
按年龄和/或性别分列的业绩 |
get_budget_status |
活动活动的预算节奏和每日支出状态 |
get_ad_accounts |
列出令牌有权访问的所有广告帐户 |
get_adsets / get_ads |
列出具有可选过滤功能的广告集/广告 |
debug_* |
用于排除现场/故障问题的诊断助手 |
设置
1.安装和构建
git clone https://github.com/YOUR_USERNAME/meta-ads-mcp-server.git
cd meta-ads-mcp-server
npm install
npm run build
2.配置环境
cp .env.example .env
编辑 .env 使用您的凭据:
META_ACCESS_TOKEN=your_meta_api_token
META_AD_ACCOUNT_ID=act_123456789
获取您的凭据:
- 广告帐户ID:发现于 元广告管理器 URL或帐户下拉列表。前缀为
act_. - 访问令牌:生成时间 Meta Graph API资源管理器 随着
ads_read许可。短期代币(约2小时)可以通过以下方式兑换为60天的长期代币GET /oauth/access_token?grant_type=fb_exchange_token&client_id={APP_ID}&client_secret={APP_SECRET}&fb_exchange_token={SHORT_TOKEN}.
这
.env文件 优先 Claude Desktop传递的环境变量。如果克劳德桌面claude_desktop_config.json包含陈旧的META_ACCESS_TOKEN,价值在.env获胜。更新.env在不接触Claude Desktop配置的情况下旋转令牌。
3.添加到克劳德桌面
添加到您的Claude桌面配置(~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"meta-ads": {
"command": "node",
"args": ["/absolute/path/to/meta-ads-mcp-server/dist/index.js"]
}
}
}
在带有Homebrew Node的macOS上,使用
/opt/homebrew/bin/node作为命令。
重新启动克劳德桌面。工具将自动可用。
使用示例
问克劳德这样的问题:
- “显示我的活动广告系列”
- “120210001活动在过去7天的表现如何?”
- “比较我夏季促销活动的创意表现”
- “按年龄和性别细分我的竞选受众”
- “今天有任何竞选活动超支吗?”
建筑
src/
├── index.ts → MCP server setup, tool registration
├── types.ts → Shared interfaces (MetaInsight, MetaAction, etc.)
├── fields.ts → Reusable Meta API field selections
├── formatters.ts → KPI calculations, number formatting
├── meta-client.ts → Meta API client (loads .env with override:true)
└── tools/
├── campaigns.ts → get_campaigns
├── performance.ts → get_campaign_performance
├── creatives.ts → get_creative_performance
├── ad-creatives.ts → get_ad_creatives (inline image rendering)
├── audience.ts → get_audience_breakdown
├── budget.ts → get_budget_status
├── accounts.ts → get_ad_accounts
├── adsets.ts → get_adsets
├── ads.ts → get_ads
└── debug.ts → debug helpers
Meta API注释
- 预算以美分为单位。
daily_budget: "5000"= €50.00 - 动作是数组。 始终解析为
extractAction(),从不直接访问 - 细分会增加行数。
age,gender每个活动提供约14行(7个年龄组×2个性别) - 视频字段可能缺失。 非视频广告不会有
video_thruplay_watched_actions - 日期_重置与时间_范围:永远不要同时发送这两个消息——Meta抛出错误
许可证
麻省理工学院