OpenAI's ChatGPT Ads has an API that does almost everything Ads Manager does: pull results, create campaigns and ads, change bids, pause things.

Connect that API to Claude or ChatGPT through an MCP server and you can run your ChatGPT ads by asking questions in plain English. MCP is the standard way to give an AI assistant access to another tool. OpenAI doesn't offer its own MCP server for ads yet, but third-party ones already exist, and an engineer can build a small one your team controls.

Once it's connected, these are the agents I'd build. The first four only read. The last two suggest changes, and a person approves them.

1. Ask your ad account anything

Skip the report screens and just ask: "Which ad groups spent the most last week, and what did we get for it?" or "How is the new campaign doing next to the old one?" The agent pulls the numbers and answers in a few lines.

It's the best place to start. It can't change anything, and your team quickly learns what the data can and can't tell them.

2. The weekly report that writes itself

Every Monday, the agent pulls last week's spend, clicks and conversions for each campaign, compares them with the week before, and posts a short summary in Slack: what went up, what went down, and what's worth a look. Nobody has to build the slide.

3. The "why isn't my ad running?" checker

Every ChatGPT ad goes through review, and an ad can be switched on and still not show, because a campaign above it is paused or a review isn't finished. The API reports these problems for each campaign, ad group and ad. Each morning the agent checks them and tells you what's stuck, before a launch quietly slips a week.

4. The product feed checker

If you run ads from a product catalog, the agent can show which products get shown and clicked. On accounts where it's turned on, it can also list the products that got no impressions at all. That points straight at the titles, images or prices that need work.

5. The waste finder

Once a day, the agent looks at the cost per conversion for each ad group and flags the ones above your target. Each one goes to Slack with the numbers and one suggested fix: pause the ad group, or lower its bid. Someone clicks Approve or Skip. Nothing changes until they do.

6. The ad copy helper

The agent reads your ads next to their results, spots ads that say almost the same thing, and drafts new versions to test. It creates them paused. A person reads them and switches on the ones they like. OpenAI reviews every new ad before it shows, too.

Where to start

Start with the first two. They're useful from day one, they can't break anything, and they show you how your numbers behave before you let an agent suggest changes. If you also connect Google Ads, Meta and your CRM to the same assistant, those two agents can cover every channel at once.

Before you plug it in

A few things to keep in mind:

  • Recent numbers look worse than they are. By default, a conversion is credited to the day of the click, for up to 30 days after it. Count conversions by the day they happen and skip the last day or two, or the waste finder will pause ads that are working.

  • One key can do everything. OpenAI's docs don't describe a read-only API key. Use an MCP server with a read-only setting, and put every change behind an Approve button.

  • Know who runs your MCP server. A third-party server holds the key to your ad account.

  • The spending limit isn't a safety net. It's only for accounts billed by invoice, and ads can keep running for a while after you hit it.