What Grok Bot is, and what it is not
Grok Bot is not the Grok chat app with a timer on it. It is a separate application (desktop and iOS) where you create named Bots, give each one a job description, and hand it work. Each Bot runs on a persistent cloud VM with a browser and a terminal, so it can sign into a web app and click through it — but it cannot reach anything on your own machine. There is no localhost, no stdio, no “run this MCP server locally”.
That constraint is the whole reason a hosted MCP server is the right tool here. MCP Ads lives at mcp-ads.com, speaks the remote MCP protocol Grok Bot expects, and already holds the OAuth grants to your ad accounts. The Bot never touches a Google or Meta credential; it calls tools, and the server does the rest.
The setup that works today
Grok Bot’s form for a custom MCP server takes three things: a name, a URL and optional headers. It does not run the browser sign-in that Claude and Cursor use — and for servers that are not in the Cursor marketplace, its OAuth flow has been failing since the beta opened. So authenticate with a header instead.
In MCP Ads, open Manage → Connect MCP → API keys, name a key “Grok Bot” and create it. It is shown once; copy it. Then in the Grok Bot app open Settings → Plugins, choose to add a custom MCP server, and enter the URL https://mcp-ads.com/mcp-slim with the header Authorization: Bearer followed by the key. Enable the plugin for the Bot you want to use it with, and ask that Bot to list your ad accounts. If it comes back with names, you are done.
- Use /mcp-slim, not /mcp. Grok Bot discovers every tool on every connector at once, and a big server can push that past its timeout — which then breaks discovery for all your other connectors too.
- Add one server at a time and check it works before adding the next, for the same reason.
- If you later revoke the key, the Bot stops on its next call with a 401. Create a new one and update the header.
What a Bot can do once it is in
Everything the MCP tools expose, across every platform you have connected: Google Ads, Meta, LinkedIn, TikTok, Snapchat, Microsoft Advertising, GA4 and Search Console. Ask it what changed this week, which campaigns are spending without converting, what the cheapest signups came from. Ask it to build a campaign from a plain-language brief. It calls the same tools a person would from Claude, with the same results.
The difference from a chat is the routine. A Bot can be told “every Monday at 8, pull last week across all accounts, flag anything wasting money, draft the summary and wait for me”, and it will. That is the piece worth setting up first — the weekly report routine has the exact wording.
What it will not do without you
Write tools — budgets, statuses, new campaigns — go through the confirmation and workspace policy controls in MCP Ads. A Bot can propose a change and prepare it; it goes live when you approve. Grok Bot has its own approval step for actions it considers consequential, and MCP Ads has one underneath. Keep both. An agent that can spend your ad budget unattended is a liability dressed as a feature.
The limits worth knowing before you start
Grok Bot is in beta and sits behind paid plans — SuperGrok Plus and Heavy, and Cursor Pro+, Ultra and Teams, at the time of writing. The list has changed since August; check x.ai/bot. The custom-server OAuth problem is xAI’s to fix; MCP Ads already accepts Cursor’s redirect URLs, including the plain-http localhost one their desktop app uses, so the sign-in path will work the moment their side does. Until then, the header is not a workaround, it is the documented way in.