Add Sprites to Codex
Available on Anywhere Codex CLI runs — a ChatGPT plan that includes Codex, or an API key. You need a Sprites account with Google Ads already connected — the connector acts on that connection, so Codex never handles a Google Ads credential.
Add the server
One command writes the entry into ~/.codex/config.toml for you.
Terminalcodex mcp add sprites --url https://mcp.sprites.ai/mcpOr write the config by hand
The same entry in ~/.codex/config.toml, or in .codex/config.toml inside a trusted project when you want the connector scoped to one repo.
~/.codex/config.toml[mcp_servers.sprites] url = "https://mcp.sprites.ai/mcp" auth = "oauth"Sign in
Codex opens a browser for the Sprites consent screen and stores the token locally. Sprites supports dynamic client registration and client ID metadata documents, so there is nothing to pre-register.
Terminalcodex mcp login spritesApprove changes by name
Codex renders results as text, so a pending change comes back written out rather than as a card you can click. Nothing is applied until you approve it, and the approval waits for you in Sprites — open it there and the same run continues.
Pending changeChangeDaily budget $40 → $65Gategate_7f2c…
Run the first prompt
Ask Codex this. It routes to a Sprites door, which reads your Google Ads account and answers — no account to name, no confirmation to give first.
- With Sprites, how did Google Ads do last 30 days vs the 30 before?
- Use Sprites to find search terms that spent over $50 with no conversion last month.
- Ask Sprites to build a Search campaign for our pricing page at $80/day.
- Have Sprites raise the Brand — Exact budget to $65/day and tell me why first.
- With Sprites, which campaigns are losing impression share to budget rather than rank?
Run `codex mcp list` and confirm sprites shows as connected.
What Codex can do with Google Ads
The same doors, whichever client you are in. Marketing work that belongs in a commit: Codex can read the landing page it is about to ship and brief Sprites on the campaign pointing at it, in one session.
Ask about last week in the thread you are already in
Spend, conversions, CPA, ROAS and the period comparison, read from the live account rather than a stale export.
Find the waste before it compounds
Search terms with cost and no conversion, broad-match drift, and the negatives that would have stopped it.
Launch without the wizard
Campaign, ad group, responsive search ads and keywords arrive as one editable proposal rather than nine screens.
Change one thing precisely
Raise a budget, pause a campaign, add a negative — one approval card, applied on your click.
Ask why, not just what
Impression share lost to rank and to budget, auction pressure, and which of the two actually moved.
Leave a standing order
A Monday morning brief or a nightly waste check that runs on schedule and messages you only when it matters.
How approvals work here
Codex renders tool results as text, so a Google Ads change comes back written out rather than as a card. Nothing is applied until you approve it, and the approval waits for you in Sprites — open it there and the same run continues.
What it reads
- Campaigns, ad groups, ads, keywords and their status
- Spend, impressions, clicks, conversions, CPA, ROAS and impression share
- Search terms, assets and asset performance labels
- Change history, so a drop can be traced to an edit
What it can change
- Create campaigns, ad groups, responsive search ads and keywords
- Budgets, bids, statuses, negatives and targeting
- Nothing applies without an approval you have seen and clicked
When it does not work in Codex
Three things go wrong in this client specifically, and each has a one-line fix.
Codex says the tool is not found.
The config was edited while a session was open. Restart Codex — it reads config.toml at startup.
Login loops without ever completing.
The OAuth callback defaults to http://127.0.0.1/callback. If something else on the machine holds that port, set mcp_oauth_callback_url in config.toml and log in again.
Codex says a change was applied and nothing happened in the account.
It was proposed, not applied — that is the design. The approval is waiting in Sprites; open it there and the run continues from where it stopped.
Google Ads and Codex: questions
Which URL do I paste into Codex?
https://mcp.sprites.ai/mcp. There is one endpoint and every client uses it — every OAuth grant is bound to exactly that address, so a variant of it will not be honoured.
Can Codex change my Google Ads account without asking?
Codex renders tool results as text, so a Google Ads change comes back written out rather than as a card. Nothing is applied until you approve it, and the approval waits for you in Sprites — open it there and the same run continues.
Do I need a Google Ads API key or developer token?
No. Google Ads is connected once inside Sprites through Google Ads (official Google Partner OAuth), and the connector acts on that connection. Codex never sees a credential for it.
Why Codex for Google Ads specifically?
Marketing work that belongs in a commit: Codex can read the landing page it is about to ship and brief Sprites on the campaign pointing at it, in one session.
Is this a Google Ads MCP server I have to host?
No. Sprites is a hosted remote MCP server: you paste one HTTPS URL into your agent and sign in. There is nothing to install, no developer token to obtain, and no API credentials to store on your machine.
Can the agent spend money without asking?
No. Every write is an approval you see before it applies — the budget, the status, the copy, all editable in the card. In hosts with no card surface, Sprites returns the change and a gate id and applies it only after you confirm in your own words.
Keep going
The same Codex connector reaches every other channel — nothing else to add.
Google Ads, from Codex
Paste one URL, sign in once, and the next Google Ads question you ask Codex gets answered from the live account.