meta-ads-mcp

适用于 Meta Marketing API v26.0 的 MCP 服务,提供 134 个工具,用于管理 Facebook 和 Instagram 广告系列、受众、创意、洞察、目录等。
适用场景
在以下情况下使用此 MCP:
- “创建一个新的 Facebook 广告系列” — 使用
create_campaign、create_adset、create_ad 和 create_creative 构建完整的转化漏斗
- “查看我的广告今天的表现” — 使用
get_account_insights 或 get_campaign_insights,并设置今天的日期范围
- “暂停所有 ROAS 低于 2 的广告系列” — 使用
list_campaigns + get_campaign_insights 找出表现不佳的广告系列,然后使用 update_campaign 暂停
- “针对两种广告创意设置 A/B 测试” — 使用
create_experiment 在广告组之间运行对照测试
- “根据我的客户创建类似受众” — 使用
create_custom_audience、add_users_to_audience,然后使用 create_lookalike_audience
- “上传广告图片并创建轮播广告” — 为每张图片使用
upload_image,然后使用 create_creative 并选择轮播格式
- “获取过去 30 天的详细效果报告” — 对于较大的日期范围,使用
create_async_report,然后使用 get_async_report 获取报告
- “在 Facebook 广告资料库中搜索竞争对手的广告” — 使用
search_ad_library 查找公开的广告数据
- “设置自动规则以暂停表现不佳的广告” — 使用
create_rule 并设置 CPA > 阈值等条件
- “管理我的动态广告商品目录” — 使用
create_catalog、create_feed 和 upload_feed 设置动态商品广告
v1.6.0 新功能
create_adset 接受 bid_amount;创建和更新操作接受 dsa_beneficiary 和 dsa_payor。对于定向欧盟的广告,请提供每个必填值,或配置相应的账户默认值。付款方不会自动复制受益方。
- 在指定范围时,广告和广告组列表会使用广告系列/广告组边。系统会检查组合使用的广告系列/广告组筛选条件与明确指定的账户 ID 是否一致。
create_adset 和 update_adset 接受 destination_type、attribution_spec、adset_schedule、pacing_type 和 validate_only。现有调用仍会执行所请求的写入操作;设置 validate_only: true 可要求 Meta 验证但不进行更改。验证成功不会创建广告组。
- 小时级排期接受分钟范围和日期(周日 = 0);请将
timezone_type 指定为 USER 或 ADVERTISER。排期会添加 day_parting pacing。Meta 会验证有效的终身预算、目标资格和归因限制。系统不会自动更改预算或状态。
create_custom_audience 接受用于基于规则的受众的 JSON rule、pixel_id 和 retention_days。创建受众会实际写入数据,并非试运行。
请参阅官方的广告组创建和广告组更新接口规范。
v1.5.0 新功能
- 转化工具会验证现有的
events JSON 输入,并将其作为所需的 data 数组发送。使用 test_event_code 在 Events Manager 中验证是否收到事件;线下事件使用数据集 ID,门店事件使用 action_source=physical_store。
- 创建广告创意时,可接受顶层
destination_spec、wamo_whatsapp_identity_spec 和 degrees_of_freedom_spec JSON 对象。动态广告创意也接受用于 Page 身份标识的 object_story_spec。若要退出 v26 的 Shops 默认目标位置设置,请将 destination_spec 设为 {"destination_type":"WEBSITE_AND_SHOP_OPT_OUT"}。
- 自 v1.4.1 起,包含完整的异步报告结果检索、令牌扩展和预算排期修复。某些详细的 Insights 细分数据需要在 Ads Manager 中选择启用;空响应不一定表示效果为零。
安装
需要 Node.js 20 或更高版本,包括 MCP 宿主的 npx 环境。
{
"mcpServers": {
"meta-ads": {
"command": "npx",
"args": ["-y", "@mikusnuz/meta-ads-mcp"],
"env": {
"META_ADS_ACCESS_TOKEN": "your-access-token",
"META_AD_ACCOUNT_ID": "123456789",
"META_APP_ID": "your-app-id",
"META_APP_SECRET": "your-app-secret",
"META_BUSINESS_ID": "your-business-id",
"META_PIXEL_ID": "your-pixel-id"
}
}
}
}
环境变量
| 变量 | 必需 | 描述 |
|---|
META_ADS_ACCESS_TOKEN | 是 | Meta Marketing API 访问令牌 |
META_AD_ACCOUNT_ID | 是 | 广告账户 ID(数字,不带 act_ 前缀) |
META_APP_ID | 可选 | App ID——令牌交换/扩展和调试所需 |
META_APP_SECRET | 可选 | App secret——令牌交换/扩展和调试所需 |
META_BUSINESS_ID | 可选 | Business Manager ID——业务工具所需 |
META_PIXEL_ID | 可选 | Pixel ID——转化工具所需 |
工具(134)
广告系列管理(25)
| 工具 | 描述 |
|---|
list_campaigns | 列出广告系列,支持筛选和分页 |
get_campaign | 按 ID 获取广告系列详情 |
create_campaign | 创建新的广告系列 |
update_campaign | 更新广告系列设置 |
delete_campaign | 删除广告系列 |
copy_campaign | 复制现有广告系列及其广告组和广告 |
get_campaign_adsets | 列出广告系列中的广告组 |
get_campaign_ads | 列出广告系列中的广告 |
get_campaign_leads | 获取广告系列的潜在客户 |
list_adsets | 列出广告组,支持筛选 |
get_adset | 按 ID 获取广告组详情 |
create_adset | 创建新的广告组 |
update_adset | 更新广告组设置 |
delete_adset | 删除广告组 |
copy_adset | 将现有广告组复制到同一或其他广告系列 |
get_adset_targeting_sentence | 获取易于理解的定向说明 |
get_adset_ads | 列出广告组中的广告 |
get_adset_leads | 获取广告组的潜在客户 |
list_ads | 列出广告,支持筛选 |
get_ad | 按 ID 获取广告详情 |
create_ad | 创建新广告 |
update_ad | 更新广告设置 |
delete_ad | 删除广告 |
copy_ad | 将现有广告复制到同一或其他广告组 |
get_ad_preview | 生成广告预览 HTML |
get_delivery_estimate | 获取广告组的投放预估 |
广告创意(6)
| 工具 | 描述 |
|---|
list_creatives | 列出广告创意 |
get_creative | 获取广告创意详情 |
create_creative | 创建新的广告创意 |
update_creative | 更新广告创意 |
create_dynamic_creative | 创建动态广告创意 |
generate_preview | 根据创意规范生成广告预览,无需已有广告 |
媒体素材(12)
| 工具 | 描述 |
|---|
list_images | 列出广告图片 |
upload_image | 从 URL 或本地文件上传图片 |
get_image | 获取图片详情 |
delete_image | 删除图片 |
list_videos | 列出广告视频 |
upload_video | 从 URL 或本地文件上传视频 |
get_video | 获取视频详情 |
delete_video | 删除视频 |
list_canvases | 列出即时体验画布 |
get_canvas | 获取画布详情 |
create_canvas | 创建画布 |
delete_canvas | 删除画布 |
受众与定向(16)
| 工具 | 描述 |
|---|
list_custom_audiences | 列出自定义受众 |
get_audience | 获取受众详情 |
create_custom_audience | 创建自定义受众 |
update_audience | 更新受众设置 |
delete_audience | 删除受众 |
add_users_to_audience | 向自定义受众添加用户 |
remove_users_from_audience | 从自定义受众中移除用户 |
create_lookalike_audience | 创建类似受众 |
get_audience_health | 获取受众健康状况、投放状态和匹配率 |
list_saved_audiences | 列出已保存的受众 |
get_saved_audience | 获取已保存受众的详情 |
search_targeting | 搜索定向兴趣、行为和人口统计特征 |
search_locations | 搜索可定向的位置 |
search_targeting_map | 浏览定向类别树 |
get_reach_estimate | 根据定向规格估算受众覆盖范围 |
get_targeting_suggestions | 获取相关定向建议 |
分析与报告(6)
| 工具 | 描述 |
|---|
get_account_insights | 账户级效果指标 |
get_campaign_insights | 广告系列级效果指标 |
get_adset_insights | 广告组级效果指标 |
get_ad_insights | 广告级效果指标 |
create_async_report | 创建异步分析报告 |
get_async_report | 轮询报告运行状态,并在完成后获取其 /insights 结果 |
date_preset 的值是小写的 Graph API 标识符,例如 today、yesterday、last_7d 和 last_30d。create_async_report 始终会创建异步任务;get_async_report 会立即返回状态,并默认在状态变为 Job Completed 后获取分页结果边缘。
潜在客户(5)
| 工具 | 描述 |
|---|
get_form_leads | 获取潜在客户表单中的潜在客户 |
get_lead | 按 ID 获取单个潜在客户 |
create_lead_form | 在主页上创建新的潜在客户开发表单 |
list_lead_forms | 列出主页的潜在客户开发表单 |
get_lead_form | 获取潜在客户表单详情 |
商品目录与商务(17)
| 工具 | 描述 |
|---|
list_catalogs | 列出商品目录 |
get_catalog | 获取商品目录详情 |
create_catalog | 创建商品目录 |
update_catalog | 更新商品目录 |
list_product_sets | 列出商品目录中的商品集 |
create_product_set | 创建商品集 |
get_product_set | 获取商品集详情 |
update_product_set | 更新商品集 |
list_products | 列出商品目录中的商品 |
get_product | 获取商品详情 |
update_product | 更新商品 |
list_feeds | 列出商品目录的数据源 |
create_feed | 创建数据源 |
upload_feed | 将数据上传到数据源 |
get_feed_uploads | 获取数据源上传历史记录 |
batch_products | 批量创建、更新或删除商品(每次请求最多 5,000 件) |
get_batch_status | 检查商品目录批量操作的状态 |
自动化与规则(5)
| 工具 | 描述 |
|---|
list_rules | 列出自动化规则 |
get_rule | 获取规则详情 |
create_rule | 创建自动化规则 |
update_rule | 更新规则 |
delete_rule | 删除规则 |
实验(5)
| 工具 | 描述 |
|---|
list_experiments | 列出 A/B 测试实验 |
create_experiment | 创建实验 |
get_experiment | 获取实验详情 |
update_experiment | 更新实验 |
get_experiment_results | 获取实验结果 |
转化(4)
| 工具 | 描述 |
|---|
send_conversion_event | 通过 Conversions API 发送服务器端转化事件 |
send_offline_event | 发送线下转化事件 |
list_offline_event_sets | 列出线下事件集 |
create_offline_event_set | 创建线下事件集 |
预算与规划(8)
| 工具 | 描述 |
|---|
list_budget_schedules | 列出广告系列或广告组 budget_schedules 边中的计划 |
create_budget_schedule | 为广告系列或广告组创建计划 |
update_budget_schedule | 更新预算计划 |
delete_budget_schedule | 删除预算计划 |
list_rf_predictions | 列出覆盖人数与频次预测 |
create_rf_prediction | 创建覆盖人数与频次预测 |
get_rf_prediction | 获取预测详情 |
delete_rf_prediction | 删除预测 |
品牌安全(5)
| 工具 | 描述 |
|---|
list_block_lists | 列出发布商屏蔽列表 |
create_block_list | 创建屏蔽列表 |
add_to_block_list | 将 URL/域名添加到屏蔽列表 |
remove_from_block_list | 从屏蔽列表中移除条目 |
delete_block_list | 删除屏蔽列表 |
账户与商务(15)
| 工具 | 描述 |
|---|
get_ad_account | 获取广告账户详情 |
list_ad_accounts | 列出企业的广告账户 |
update_ad_account | 更新广告账户设置 |
get_account_activities | 获取账户活动日志 |
list_account_users | 列出有权访问该账户的用户 |
list_businesses | 列出你有权访问的企业 |
get_business | 获取企业详情 |
list_business_ad_accounts | 列出企业中的广告账户 |
list_business_users | 列出企业中的用户 |
add_business_user | 将用户添加到企业 |
remove_business_user | 从企业中移除用户 |
list_business_pages | 列出企业拥有的 Facebook 专页 |
list_business_instagram_accounts | 列出企业拥有的 Instagram 账户 |
list_system_users | 列出企业的系统用户 |
create_system_user | 创建系统用户 |
身份验证与令牌(3)
| 工具 | 描述 |
|---|
exchange_token | 将短期令牌换成长效令牌 |
refresh_token | 通过文档说明的交换流程延长有效长效用户令牌的期限 |
debug_token | 调试/检查令牌元数据 |
广告资料库(1)
| 工具 | 描述 |
|---|
search_ad_library | 搜索 Meta 广告资料库中的公开广告数据 |
资源(3)
| URI | 描述 |
|---|
ads://account | 广告账户概览——状态、余额、币种、时区和总支出 |
ads://campaigns-overview | 所有有效广告系列及其预算信息 |
ads://spending-today | 今日支出摘要——支出、展示次数、点击次数和覆盖人数 |
提示词(3)
| 提示词 | 描述 |
|---|
campaign_wizard | 从零开始创建完整广告系列的分步指南 |
performance_report | 分析广告表现,提供详细细分和建议 |
audience_builder | 使用 Meta 的定位工具构建和优化目标受众 |
所需权限
根据所用工具,Meta 访问令牌需要具备以下权限:
| 权限 | 工具 |
|---|
ads_management | 所有广告系列、广告组、广告和创意的增删改查操作 |
ads_read | 所有读取/列表操作和成效分析 |
business_management | 商务工具、系统用户、账户分配 |
leads_retrieval | 潜在客户表单和潜在客户数据工具 |
catalog_management | 商品目录、商品集、商品和数据源工具 |
pages_read_engagement | 与专页关联的潜在客户表单 |
许可证
MIT