使用说明
元广告MCP服务器
模型上下文协议(MCP)服务器,提供对Meta Marketing API的访问,用于全面的广告分析和AI驱动的视频创意分析。
快速入门(克劳德代码)
claude mcp add --transport http meta-ads https://sp-meta-ads-mcp.fly.dev/mcp
然后问:
"Show me campaign performance for last 7 days"
Claude将提示您自动通过Facebook进行身份验证。
手动配置
编辑 ~/.config/claude-code/mcp.json:
{
"mcpServers": {
"meta-ads": {
"url": "https://sp-meta-ads-mcp.fly.dev/mcp",
"transport": "http"
}
}
}
特性
- Facebook OAuth身份验证 具有多用户会话隔离功能
- 18个MCP工具 用于广告分析、创意分析和比较
- AI视频分析 通过带有Firestore缓存的Gemini AI
- 流式HTTP传输 用于远程MCP连接
可用工具(18)
性能分析
| 工具 | 说明 |
|---|---|
get-account |
广告账户信息和汇总指标 |
get-performance |
活动/广告集/广告级别的统一指标,具有相关性诊断功能 |
get-video-metrics |
视频完成漏斗、参与深度、留存评分 |
get-demographics |
按年龄、性别、国家、设备、平台、职位分类 |
get-creative-fatigue |
每日频率/CTR趋势与疲劳评分 |
get-creative-performance |
按广告创意ID汇总表现 |
list-custom-conversions |
可用的自定义转换事件 |
创造性分析
| 工具 | 说明 |
|---|---|
get-ad-creative-text |
提取广告文案(主要、标题、描述) |
analyze-video-creative |
元视频广告的人工智能逐场景分析 |
batch-analyze-video-creative |
多个视频广告的并行人工智能分析 |
analyze-video-url |
从URL(谷歌云端硬盘、Dropbox、direct)分析视频 |
analyze-image-url |
从URL分析图像 |
analyze-ad-themes |
按与性能相关的消息主题对广告进行分类 |
比较
| 工具 | 说明 |
|---|---|
compare-time-periods |
A/B时段分析 |
compare-entities |
并排排列广告系列/广告集/广告 |
帐户和设置
| 工具 | 说明 |
|---|---|
get-saved-audiences |
已保存的目标受众列表 |
get-facebook-pages |
列出链接的Facebook页面 |
list-ad-sets |
在广告系列中列出广告集 |
在本地运行
先决条件
- Node.js 24+
- 带有广告帐户的Meta/Facebook开发者帐户
- 已配置OAuth的Facebook应用程序
可选(用于视频分析):
- 谷歌云存储桶
- Firestore数据库
- Gemini API密钥或Vertex AI
设置
git clone https://github.com/superpower-growth/meta-ads-mcp.git
cd meta-ads-mcp
cp .env.example .env
# Edit .env with your credentials
npm install
npm run build
npm start
对于没有OAuth的本地开发,设置 REQUIRE_AUTH=false 在 .env.
环境变量
看 .env.example 获取完整文档。关键变量:
| 变量 | 描述 |
|---|---|
META_ACCESS_TOKEN |
Graph API资源管理器中的长时间使用的令牌 |
META_AD_ACCOUNT_ID |
广告帐户ID(格式: act_123456789) |
FACEBOOK_APP_ID |
从Facebook应用程序设置 |
FACEBOOK_APP_SECRET |
从Facebook应用程序设置 |
SESSION_SECRET |
随机32+字符秘密(openssl rand -base64 32) |
REQUIRE_AUTH |
true 对于OAuth, false 对于本地开发人员 |
视频分析(可选)
| 变量 | 描述 |
|---|---|
GEMINI_API_KEY |
Gemini API密钥(或使用Vertex AI) |
GOOGLE_SERVICE_ACCOUNT_JSON |
GCP服务帐户密钥 |
GCS_BUCKET_NAME |
GCS视频分段桶 |
FIRESTORE_CACHE_TTL_HOURS |
缓存TTL(默认值:24) |
部署
码头工人
docker build -t meta-ads-mcp .
docker run -d -p 3000:3000 --env-file .env meta-ads-mcp
Fly.io
fly deploy
API终点
| 端点 | 描述 |
|---|---|
GET /health |
健康检查(无身份验证) |
GET /mcp |
MCP SSE流媒体 |
POST /mcp |
MCP请求/响应 |
GET /mcp-metadata |
MCP服务器元数据 claude add |
故障排除
重新部署后“未找到会话” --重新启动Claude Code以重新连接。令牌在Firestore中持久化。
“未经授权”的错误 --会议持续24小时。通过重新启动Claude Code重新进行身份验证。
Meta API错误 --验证您的令牌是否具有 ads_read 许可和 META_AD_ACCOUNT_ID 有 act_ 前缀。
许可证
麻省理工学院