MCP.so
登录

Agency AI MCP Server已验证已精选

@agency-ai-dev

基本信息

传输方式

Streamable HTTP

认证方式

OAuth

分类

金融与商务

作者

agency-ai-dev

提交者

Anthony from Agency AI

关于 Agency AI MCP Server

Agency AI MCP - Create, launch, automate and manage Meta and Google ads from Claude and ChatGPT. Pull live campaign performance, ROAS, pacing and anomalies, get budget and creative strategy, then create ads, edit campaigns and pause under performers without leaving the chat. Works with any e-commerce platform or website. Achieve best results when combined with Shopify.

连接信息

https://s.agencyai.app/mcp

接入方式

claude mcp add agency-ai --transport http https://s.agencyai.app/mcp

Agency AI MCP Server 工具

16

Brand profile and economics: what the store sells, audience, and breakeven ROAS (profitability threshold). For budgets use get_pacing. Also returns currencies: which currency each ad account is billed in (every budget is in that one), which currency spend and revenue are displayed in, and Meta's maximum daily budget in the account's own units. Also returns ad_destination: the URL an ad built here will send clicks to and whether the merchant set it or it is the storefront fallback — the destination is never part of the brand profile, so read it here before asking a merchant where an ad should point.

Meta + Google ad campaigns with spend, revenue, ROAS, impressions, clicks, conversions, objective. Top 50 by spend. Each Google row carries a campaignType (PMax, Search, or Shopping) — read it, never infer the type from the name. Google coverage is Performance Max, Search, and Shopping campaigns; Display, Video, and Demand Gen campaigns are not returned. Never conclude a Google campaign type is absent from this list alone. Each row names its own currencies: dailyBudget is in currencyCode (the ad account's billing currency), spend and revenue are in metricsCurrencyCode (the store's display currency). They are often different — never read either as dollars, and never convert one into the other. data_as_of is when the reading was taken: statuses and budgets move, so when this list disagrees with one from earlier in the conversation, the newer reading is the current one. Say a campaign's status changed only when the same campaign is in both readings with different status values. A campaign missing from this list was not returned by this call — a platform / status / campaign_id / name_contains filter, the top-50 cap, or a platform failure listed in errors all omit a campaign that is still there — so say it was not returned, and read errors before saying anything about it. Never that it does not exist. startDate and endDate are the campaign's schedule — when it is set to run, not when it was created, not when it was last changed, and not whether it is delivering. No tool returns a creation time, so a campaign's age is something you do not have: say that rather than computing an age from a schedule date, and never explain missing impressions by how recently a campaign was made. A null startDate or endDate means no schedule date was returned for that campaign, not that it has none.

Daily spend, revenue, and ROAS per connected platform over a period.

Month-to-date ad spend vs the merchant-set monthly budget, per platform. A platform with budgetConfigured: false has no budget set — say so rather than inferring one. Every figure is in currencyCode, the store's display currency — these are reporting numbers, not ad account amounts, so never set or propose a daily budget from one.

Statistically unusual spend/ROAS days over the trailing 30 days (z-score based).

Use this when the merchant asks what to change, improve, optimize, scale, cut or pause in their Meta or Google ads. Returns Agency AI's own generated optimization recommendations (budget changes, tROAS changes, pauses), each with reasoning and confidence. Read-only — approval happens in the dashboard. status picks approved (the default) or pending recommendations. On budget rows, current_budget and recommended_budget are in budget_currency, the ad account's billing currency, which is not necessarily dollars. tROAS rows reuse the same fields for unitless target-ROAS multipliers and carry no budget_currency; those values are not money.

Meta ads with performance for the date range (spend, revenue, ROAS, impressions, clicks, conversions) plus ad set and campaign ids, top spenders in the date range first (zero-spend ads last). Scope with ad_id to look up one ad, or adset_id / campaign_id to list what is inside. Use get_ad_creative for an ad's copy and media. Also the source-ad picker for create_ad. Money figures are in the response's currency, the ad account's billing currency — never dollars.

Creative content of one Meta ad: ad type (image/video/dynamic), primary text, headline, description (arrays when the ad carries multiple variants), CTA button, landing page, and image/video URLs. Find ad ids with get_ads. Meta only — Google Performance Max has no per-ad creative.

Ad sets (Meta) or asset groups (Google): id, name, status, campaign id, Meta daily budget, and Meta performance for the date range (spend, revenue, ROAS, impressions, clicks, conversions — Google asset groups are structural only). Meta rows also carry the ad set's targeting: the countries, regions and cities it serves (and any excluded), age range, genders, interests, custom audiences, and whether Advantage+ audience is on — this is where a question about markets or international reach is answered. Scope with adset_id to look up one by id, or campaign_id to list what is inside a campaign. Google requires campaign_id. Meta budgets and metrics are both in the response's currency, the ad account's billing currency — never dollars.

The store's Asset Library — the images and videos it already has on file with Agency AI, uploaded or generated in the app. Each row carries an id, name, tags, and placement (its aspect-ratio slot: square, vertical, landscape, story). Call this whenever the merchant refers to creatives they already have, rather than saying you cannot reach them. An image row (usable_as_ad_creative: true) can be built into a new ad by passing its id as image_asset_id to create_ad; a video has to be used from the Create Ad page in the Agency AI app.

Progress, result, or error of an ad creation started by create_ad, which runs in the background. Pass operation_id for one operation. Omit operation_id to list this account's ad creations from the last 24 hours — use that form whenever the merchant asks how a creation went and you have no operation_id.

Create a new Meta campaign, ad set, or ad. placement picks how much new structure is created: new-campaign (campaign + ad set + ad), new-adset (ad set + ad inside an existing campaign), existing-adset (ad only). The creative comes from ONE of: source_ad_id (copy an existing ad's media) or image_asset_id (an image from the store's Asset Library) — never both. Runs in the background and returns an operation_id for get_operation_status. It creates immediately in the live ad account, and the new ad can start spending its budget. The source ad set's schedule does not carry over: the new ad set runs with no end date unless end_date is given, and end_date must be in the future — a past date is rejected.

Update a campaign's name, daily budget, and/or status (active/paused) on Meta or Google. Meta daily budgets are in the ad account's billing currency, at least its minimum daily budget and capped at its maximum daily budget (get_brand_info reports both currency and cap). The change is applied immediately to the live ad account and affects real delivery and spend.

Update a Meta ad set's name, daily budget, and/or status, or a Google asset group's name and/or status. Google asset groups have no budget of their own. The change is applied immediately to the live ad account and affects real delivery and spend.

Update a Meta ad's name and/or status. Meta only — Google has no separate ad level. The change is applied immediately to the live ad account and affects real delivery and spend.

Start (activate) or pause one or more campaigns in a single call, across Meta and Google. Reports per-campaign success or failure. The change is applied immediately to the live ad account and affects real delivery and spend.

概览

What is Agency AI MCP?

Agency AI MCP turns Claude and ChatGPT into a full ad manager for your Meta (Facebook, Instagram) and Google ad accounts. Ask questions, get strategy, and make real changes to your campaigns without leaving the chat.

Works with any e-commerce platform or website. Shopify stores get the deepest data layer through the Agency AI Shopify app.

15 tools: 10 read, 5 write

Read

  • get_campaigns / get_adsets / get_ads - spend, revenue, ROAS, impressions, clicks, conversions across Meta and Google
  • get_ad_creative - primary text, headline, description, CTA, media
  • get_performance_timeseries - daily spend, revenue and ROAS per platform
  • get_pacing - month-to-date spend against your monthly budget
  • get_anomalies - statistically unusual spend and ROAS days
  • get_recommendations - AI optimization calls with reasoning and confidence
  • get_brand_info - brand profile, audience, breakeven ROAS
  • get_operation_status - progress of a queued ad creation

Write

  • create_ad - new campaign, ad set or ad, with fresh conversion-optimized creative or an existing ad's creative
  • update_campaign / update_adset / update_ad - names, daily budgets, start and pause
  • set_campaign_status - bulk start or pause up to 25 campaigns in one call

Autopilot

Pair the write tools with Claude's or ChatGPT's scheduled tasks and routine ad management runs itself. Set the rule once in plain English:

  • A 9am daily check that pauses anything below breakeven ROAS
  • A Monday budget rebalance toward last week's winners
  • A daily anomaly scan that flags unusual spend before it compounds

Guardrails

Write tools are declared destructive, so your assistant confirms before acting. The account is resolved from your verified connection, never from what the model passes in. Meta daily budgets are clamped to $1 to $5,000. Writes run through the same services and ownership checks as the dashboard, and every change lands in your activity log.

Why it uses fewer tokens

One connector covers both platforms with pre-computed KPIs, a strategy layer and ad creation built in. Responses come back faster with less token spend than direct-to-ad-platform MCPs.

Example prompts

"How did my Meta campaigns perform last 30 days vs prior 30?" "Which campaigns should I scale and why?" "Pause all campaigns with ROAS below 2:1" "Create a new ad for our bestseller and launch it in a new campaign at $50/day" "Every weekday at 9am, check my account and pause anything below breakeven"

Setup

Endpoint: https://s.agencyai.app/mcp

Claude finds Agency AI in its connector directory under Browse connectors. ChatGPT needs the endpoint URL pasted into Add connector.

Full walkthrough: https://github.com/agency-ai-dev/agency-ai-mcp/blob/main/llms-install.md

Requirements

  • An Agency AI account (Shopify app or standalone at agencyai.app/mcp)
  • Claude Max, or a ChatGPT plan supporting custom connectors
  • At least one connected Meta or Google ad account

常见问题

1

Agency AI MCP 远程 MCP 服务器是什么?

Agency AI MCP 的远程 MCP 服务器是一个托管的 Model Context Protocol 端点,地址是 https://s.agencyai.app/mcp,AI 助手无需在本地安装或运行任何东西即可连接。

2

怎么连接 Agency AI MCP 的 MCP 服务器?

把端点 https://s.agencyai.app/mcp 添加到任意支持 MCP 的客户端,比如 Claude Code、Cursor 或 VS Code。本页的接入代码块可以一步配置好每个客户端。

3

Agency AI MCP 的 MCP 服务器需要认证吗?

需要。Agency AI MCP 使用 OAuth——第一次连接时,你的 MCP 客户端会打开浏览器窗口登录并授权,之后会复用这个凭证。

4

Agency AI MCP 的 MCP 服务器用的是哪种传输方式?

Agency AI MCP 暴露的是 Streamable HTTP 端点,这是远程 MCP 服务器普遍使用、主流客户端都支持的传输方式。

评论