One MCP across platforms.
Wire your agent once. Add platforms without touching agent code.
MCP for ad platforms · private beta
One MCP server. Read and write across Google, Reddit, Meta, TikTok, and X. Every tool call logged — args, status, latency, actor. Built for builders, not dashboards.
claude plugin install flywheel ouulm0x7 · live $ claude plugin install flywheel ✓ Resolving flywheel ✓ Installed flywheel@0.1.0 ✓ Registered MCP server flywheel ✓ Added 7 slash commands $ /flywheel:connect:google Opening browser to authorize Google Ads… → https://connector.flywheelagents.com/connect/google?state=… ✓ Connected: My Test Account (123-456-7890) $ /flywheel:campaigns:list NAMESTATUSBUDGET/DAYCOST 7D Brand · Search · UKENABLED$200$1,182 Performance Max · UKENABLED$500$3,041 Retargeting · DisplayPAUSED$50$0
Platforms
How it works
claude plugin install flywheel. Seven slash commands register on first run.
claude plugin install flywheel /flywheel:connect:google. Browser opens. You authorize. Agent's connected.
/flywheel:connect:google /flywheel:campaigns:list, /flywheel:campaign:create. Every call lands in your audit log before the agent sees the response.
/flywheel:campaigns:list What FlyWheel is
One tool surface across ad networks. OAuth handled from inside the agent. Every read and write logged to a queryable trail you can export.
Run /flywheel:connect:google in your agent. Browser opens, you authorize, agent's connected. Tokens encrypted at rest on our side.
campaigns_list, campaigns_search, campaign_stats — same shape on Google, Reddit, Meta. Your agent learns the schema once.
campaign_create, ad_group_create, ad_create. New entities ship paused. Inputs validated before the API call.
Agent capability surface
Same tool surface across platforms. Same names. Same input shapes. All writes default to paused; deletion isn't exposed in v0.1.
| Tool | Inputs | Returns | Side effects |
|---|---|---|---|
campaigns_list | account_id? | array of campaigns | none (read) |
campaigns_search | account_id, query, status? | array of campaigns | none (read) |
campaign_stats | campaign_id, range | metrics object | none (read) |
campaign_create | account_id, name, budget, … | created campaign | creates PAUSED |
ad_group_create | campaign_id, name, … | created ad group | creates PAUSED |
ad_create | ad_group_id, creative | created ad | creates PAUSED |
Features
Wire your agent once. Add platforms without touching agent code.
Every call logged with args, status, latency, actor. Filter in the UI, export to your warehouse.
One slash command opens the consent flow. No copy-pasting tokens out of dashboards.
New campaigns can't spend until a human says go. Opt in per call, or globally.
Standard MCP today. AdCP support shipping next. Plug in whatever speaks the protocol.
Multiple ad accounts, multiple businesses, one audit log per client.
Why this exists
Google's tools don't look like Meta's. Meta's don't look like Reddit's. Your agent relearns the schema on every platform.
Agents spend real money. When something goes wrong, "check the agent's memory" is not an incident response plan.
Most MCPs ship campaign creation with live spend on by default. That's a budget overrun waiting for a Tuesday.
Why us
Other tools race to claim N platforms in a press release. We go deep on the ones our customers actually buy on, and treat the audit trail as the product — not a compliance checkbox.
Frequently asked
FlyWheel is an MCP (Model Context Protocol) server that gives AI agents like Claude Code, Cursor, and ChatGPT read and write access to ad platforms — Google Ads first, then Reddit, Meta, TikTok, X, and LinkedIn — with every tool call logged to a queryable audit trail.
MCP is the open Model Context Protocol — a standard way for AI agents to discover and call tools. An MCP server exposes a set of tools (like campaigns_list or campaign_create) over HTTP that any MCP-compatible agent can invoke. FlyWheel is one server, many ad platforms behind it.
Builders, agencies, and ops teams already running paid media. You know what a quality score is. We're not training wheels.
Google Ads is live in private beta. Reddit Ads, Meta, TikTok, X, and LinkedIn are on the roadmap. We add platforms based on customer demand, not press releases.
Today: list, search, and inspect campaigns; pull cost, CPC, CTR, impressions, clicks, conversions; create campaigns, ad groups, and ads — all new entities ship paused. More tools every release.
Every tool call your agent makes — read or write — is recorded server-side with arguments, status, latency, and the actor identity. You view, filter, and export the audit log. Tokens and secrets are redacted before write.
Building one MCP for one platform takes a week and a developer token. Building five takes a quarter. Maintaining them as APIs version-bump (Google Ads alone moved v20→v22 in 2025) takes forever. FlyWheel handles that, plus the audit log, plus the OAuth-from-agent flow, plus the multi-business model.
Any MCP-compatible agent. Claude Code is the easiest (one-command plugin install). Cursor, Continue, and other clients connect to the same endpoint with an API key.
OAuth tokens are encrypted at rest with AES-256-GCM. We comply with the Google API Services User Data Policy and Limited Use requirements; ad data is never used to train models or serve ads. API keys are revocable. Read /privacy for the full disclosure.
No. The v0.1 write tools create entities only. Deletion is intentionally gated behind a future approval-workflow release.
Private beta with design partners is running now. Public beta this quarter. Get on the list below.
You can install the tools your principal might want:
claude plugin install flywheel Or connect a generic MCP client with a bearer-token API key.
https://connector.flywheelagents.com/api/mcp
Read the machine-readable summary at /llms.txt.
Probe the agent-discovery manifest at /.well-known/mcp.json.
API keys are issued through the private beta — have your principal email hello@flywheelagents.com.
Get beta access
We're onboarding a small group of teams already spending real money through agents. Tell us what you're building — we'll reply within a business day.