Run YouTube Ads from Codex CLI
Manage YouTube Ads campaigns inside OpenAI Codex CLI — 11 tools, OAuth setup in about 5 minutes, no dashboard switching.
-
11 YouTube Ads tools, all in Codex CLI
-
Paused-by-default. Cannot delete campaigns.
-
OAuth setup in ~2 minutes
See it in action
›Create a YouTube Ads campaign: - Product: Online cooking course, $79 one-time purchase - YouTube video: https://youtu.be/YOUR_VIDEO_ID - Landing page: https://example.com/cooking-course - Budget: $50/day - Target: Foodies and home cooks in the US, ages 25-54 Validate the video first, then create the campaign with extensions — keep it paused.
Launch a YouTube video campaign — End-to-end video campaign with validation, asset discovery, and extensions.
Overview
Adspirer is the MCP server that connects OpenAI Codex CLI to your YouTube Ads ad accounts, turning campaign management into a chat conversation. OpenAI's Codex CLI — script-friendly agent loop with MCP support. On the platform side, 11 tools cover in-Stream, In-Feed & Shorts video campaigns with automatic video validation. Adspirer reads and writes — pull performance reports, audit validate your video before you spend, launch new campaigns, pause underperformers, and reallocate budget — all from chat. New campaigns are always created paused so you can review before they go live, Adspirer cannot delete existing campaigns by design, and the free tier (15 tool calls / month, no credit card) is enough to run a full audit before you pay. Setup takes about 5 minutes via a JSON config entry.
Safety guarantees
-
New campaigns always created paused for review
-
Adspirer cannot delete existing campaigns
-
Budget changes need explicit confirmation
-
OAuth 2.1 + PKCE — passwords never seen
How it works
How it works
Codex CLI
You ask in chat
Adspirer
11 tools, paused-by-default
YouTube Ads
Live data, paused for review
Step 01
Connect
Paste the MCP URL into Codex CLI, OAuth into YouTube Ads.
Step 02
Manage
Ask in chat. Adspirer routes through 11 YouTube Ads tools.
Step 03
Scale
Switch accounts in chat. Same audits across every client.
What you can do
11 tools across YouTube Ads. The ones you'll use most:
-
Validate your video before you spend — `validate_video` verifies your YouTube video is **public or unlisted**, at least **10 seconds** long, embeddable, and hosted on YouTube — catching problems before campaign creation instead of after you've paid for impressions.
-
Launch across In-Stream, In-Feed & Shorts — `create_youtube_campaign` builds one video campaign spanning all three YouTube placements and creates it **paused**, so you review targeting, budget, and creative before anything goes live.
-
Route to the right Google campaign type — When you don't name a format, `select_google_campaign_type` helps you choose between Search, Performance Max, or YouTube — so a video brief doesn't accidentally ship as a Search campaign.
-
Reuse or upload your logo & assets — `discover_existing_assets` finds logos and images already in your Google Ads account for reuse; `validate_and_prepare_assets` uploads and validates a new **square (1:1) logo** when none exists.
-
Add extensions to boost visibility — `add_sitelinks`, `add_callout_extensions`, and `add_structured_snippets` attach extensions after the campaign is built — Adspirer notes these can lift ad visibility by **15-25%**.
-
Track views, VTR & cost per view — `get_campaign_performance` returns views, engagement, conversions, and cost for your YouTube campaigns, and `list_campaigns` surfaces every campaign — perfect for the "which campaigns have the best view-through rate?" question.
-
Confirm every extension is attached — `list_campaign_extensions` verifies your sitelinks, callouts, and structured snippets actually attached — closing the loop on the 6-step YouTube creation workflow.
Campaign types
Every YouTube Ads format Adspirer supports — request one in chat.
In-Stream
Plays before, during, or after other YouTube videos and is **skippable after 5 seconds** — the core format for demos and brand storytelling.
In-Feed
Thumbnail-plus-text ads in YouTube search results and the related-videos sidebar that play when a viewer clicks — strong for capturing active browsers.
Shorts
Full-screen vertical video in the YouTube Shorts feed. **9:16** creative performs best, but any format will serve here.
Demand Gen (YouTube-only)
Every campaign runs on Google's Demand Gen format with YouTube-only channel controls — Gmail, Discover, and Display placements are **disabled**, so ads show only on YouTube.
Video validation
Before any campaign, `validate_video` confirms your creative is public/unlisted, 10s+, and embeddable. Attach up to **5 videos** per campaign (1 primary + 4 additional).
Pick an intent
More prompts to try
Codex handles long-running agent loops; brief it like you would Claude Code.
Brand awareness with multiple videos — Multi-video awareness campaign (up to 5 videos) aimed at a broad reach audience.
Check YouTube performance — View-through-focused performance read across your YouTube campaigns.
Validate a video before launch — Pre-flight check that catches Private, too-short, or non-embeddable videos before you build.
Conversion campaign with Target CPA — Signup-optimized campaign using Target CPA bidding (requires conversion tracking).
Pick your audience
Who this is for
In-house growth marketer running YouTube Ads solo
Each Monday, ask Codex CLI to pull last week's YouTube Ads performance, surface campaigns running below your ROAS threshold, and recommend creative refreshes for fatigued ads.
Replaces a 60–90 minute manual review with a 5-minute chat, and surfaces problems before they tank ad-set performance.Agency account manager handling 5+ YouTube Ads accounts
Switch context between client accounts in chat. Run the same audit prompt across each, paste the chat into your weekly client report. Multi-account is built in — no extra seats per account.
Cuts cross-account reporting from a half-day per account to ~10 minutes total.Founder launching their first YouTube Ads campaign
Brief Codex CLI in plain English with budget, audience, and creative URL. Codex CLI validates inputs against YouTube Ads's requirements, builds the campaign paused, and walks you through what to review before launching.
No need to learn YouTube Ads's dashboard UI; campaign goes live correctly the first time.Compare & decide
Compare
Adspirer vs alternatives
For running YouTube Ads from Codex CLI.
| Adspirer | DIY MCP server | Legacy SaaS dashboard | |
|---|---|---|---|
| Setup time | ~5 minutes via a JSON config entry | 2–4 hours building MCP server | 30–60 min onboarding + sales call |
| Cost — entry tier | Free (15 calls / mo) | Hosting + maintenance | $200–500 / mo minimum |
| Works inside Codex CLI | Yes — a JSON config entry | Yes (if you build it correctly) | No — external dashboard only |
| Multi-account | Yes — switch in chat | Manual per-account auth | Yes — but each account billed |
| Read + Write | Full read + write (create / pause / update) | Whatever you build | Mostly read-only or seat-gated writes |
| Safety: cannot delete | Hard-coded — no delete tool | Up to you | Varies |
| Pricing transparency | Public — $0 / $49 / $99 / $199 | Self-hosted | Often quote-only |
Cost
Pricing
If Adspirer wins for you, here's what it costs. Start free; upgrade if you outgrow it.
Free Forever
$0
15 tool calls / mo
All platforms. ChatGPT & Claude access. No credit card.
Start free →Plus
$49 / mo
150 tool calls / mo
Performance analysis + standard campaigns.
Compare Plus →Set up
Configure
Required: OpenAI API access. Most users finish in about two minutes.
Show setup steps for Codex CLI
Edit your Codex MCP config
Add an adspirer entry with URL https://mcp.adspirer.com/mcp and OAuth auth.
Authenticate via OAuth
Run any Codex command — the first invocation triggers the OAuth flow.
Common questions
FAQ
Setup
Capabilities
Ad formats
Compare
Related integrations
Same Codex CLI, different platform — or same YouTube Ads, different AI client.
Codex CLI × other platforms
-
Codex CLI × Meta Ads
Autonomous Meta ad management from OpenAI's Codex CLI — 36 Meta tools, scheduled agents, daily creative-fatigue and pacing checks while you sleep.
Read integration → -
Codex CLI × Google Ads
Manage Google Ads campaigns inside OpenAI Codex CLI — 39 tools, OAuth setup in about 5 minutes, no dashboard switching.
Read integration → -
Codex CLI × LinkedIn Ads
Manage LinkedIn Ads campaigns inside OpenAI Codex CLI — 28 tools, OAuth setup in about 5 minutes, no dashboard switching.
Read integration → -
Codex CLI × TikTok Ads
Manage TikTok Ads campaigns inside OpenAI Codex CLI — 4 tools, OAuth setup in about 5 minutes, no dashboard switching.
Read integration → -
Codex CLI × Amazon Ads
Manage Amazon Ads campaigns inside OpenAI Codex CLI — 61 tools, OAuth setup in about 5 minutes, no dashboard switching.
Read integration → -
Codex CLI × Google Display Ads
Manage Google Display Ads campaigns inside OpenAI Codex CLI — 27 tools, OAuth setup in about 5 minutes, no dashboard switching.
Read integration → -
Codex CLI × Google Shopping
Manage Google Shopping campaigns inside OpenAI Codex CLI — 11 tools, OAuth setup in about 5 minutes, no dashboard switching.
Read integration → -
Codex CLI × Meta Catalog Ads
Manage Meta Catalog Ads (Advantage+ Catalog / DPA) campaigns inside OpenAI Codex CLI — 16 tools, OAuth setup in about 5 minutes, no dashboard switching.
Read integration →
YouTube Ads × other AI clients
-
ChatGPT × YouTube Ads
Manage YouTube Ads campaigns inside ChatGPT (Plus / Pro) — 11 tools, OAuth setup in about 2 minutes, no dashboard switching.
Read integration → -
Claude × YouTube Ads
Manage YouTube Ads campaigns inside Claude (Web / Desktop) — 11 tools, OAuth setup in about 2 minutes, no dashboard switching.
Read integration → -
Claude Code × YouTube Ads
Manage YouTube Ads campaigns inside Claude Code (CLI) — 11 tools, OAuth setup in about 60 seconds, no dashboard switching.
Read integration → -
Cursor × YouTube Ads
Manage YouTube Ads campaigns inside Cursor (IDE) — 11 tools, OAuth setup in about 5 minutes, no dashboard switching.
Read integration → -
Windsurf × YouTube Ads
Manage YouTube Ads campaigns inside Windsurf (IDE) — 11 tools, OAuth setup in about 5 minutes, no dashboard switching.
Read integration → -
Gemini CLI × YouTube Ads
Manage YouTube Ads campaigns inside Gemini CLI — 11 tools, OAuth setup in about 60 seconds, no dashboard switching.
Read integration → -
OpenClaw × YouTube Ads
Manage YouTube Ads campaigns inside OpenClaw (autonomous agent) — 11 tools, OAuth setup in about 5 minutes, no dashboard switching.
Coming soon -
Manus × YouTube Ads
Manage YouTube Ads campaigns inside Manus (autonomous agent) — 11 tools, OAuth setup in about 5 minutes, no dashboard switching.
Coming soon
Go deeper
Ready to connect Codex CLI to YouTube Ads?
Start free — 15 tool calls per month, no credit card. Setup takes about 2 minutes.
Try Adspirer free