X Ads MCP Server
# X Ads MCP Server
[](https://registry.modelcontextprotocol.io/v0/servers?search=io.github.adkit/x-ads) [](https://adkit.so/features/ads-mcp/x) [](./LICENSE)
Connect X Ads (Twitter Ads) to Claude, ChatGPT, Cursor, Codex or any AI app that supports MCP. AdKit hosts the server, so you only add an address to your AI app.
- **MCP address:** `https://mcp.adkit.so/x-ads`
- **Website:** [X Ads MCP by AdKit](https://adkit.so/features/ads-mcp/x)
Every change is saved as a draft first, so your AI can't spend money on its own. Nothing goes live on X Ads until you approve it.

## What you can do
- Create and edit X campaigns, ad groups and ads
- Upload images and videos to your ad account
- Read spend, engagement and conversion results
## Example prompts
- "How much did each X campaign spend last week, and what did it get?"
- "Create a website traffic campaign with this image, $20 a day. Save it as a draft."
## Set up
You need an AdKit account. On first use, you sign in to AdKit and connect your X Ads account.
There are two ways to connect:
- **All platforms:** the main AdKit connector. One connection for Google, Meta, TikTok, LinkedIn, Microsoft, Reddit, X and Pinterest. Pick this if you run ads on more than X Ads.
- **X Ads only:** the address above. Your AI only sees the X Ads tools.
### Claude (web and desktop)
- **All platforms:** [install AdKit from the Claude directory](https://claude.ai/directory/adkit), in one click.
- **X Ads only:** Settings → **Connectors** → **Add custom connector** → paste `https://mcp.adkit.so/x-ads`.
### ChatGPT
- **All platforms:** [add the AdKit app](https://chatgpt.com/apps/adkit/asdk_app_6a1e848decdc8191a4974b315c51661f), in one click.
- **X Ads only:** Settings → **Connectors** → **Add custom connector** → paste `https://mcp.adkit.so/x-ads`.
### Claude Code
As a plugin:
```
/plugin marketplace add adkit/x-ads-mcp
/plugin install x-ads@adkit-x-ads
```
Or as an MCP server only:
```
claude mcp add --transport http adkit-x-ads https://mcp.adkit.so/x-ads
```
### Gemini CLI
```
gemini extensions install https://github.com/adkit/x-ads-mcp
```
### Cursor
Add to `~/.cursor/mcp.json`:
```json
{
"mcpServers": {
"adkit-x-ads": {
"url": "https://mcp.adkit.so/x-ads"
}
}
}
```
### Codex
Add to `~/.codex/config.toml`:
```toml
[mcp_servers.adkit-x-ads]
url = "https://mcp.adkit.so/x-ads"
```
In Claude Code, Gemini CLI, Cursor and Codex, use `https://mcp.adkit.so` instead to connect all platforms.
## Tools
| What | Tools |
| --- | --- |
| Ad accounts | `x_ads_accounts_connect`, `x_ads_accounts_disconnect`, `x_ads_accounts_read`, `x_ads_accounts_update` |
| Campaigns | `x_ads_campaigns_create`, `x_ads_campaigns_read`, `x_ads_campaigns_update` |
| Ad groups | `x_ads_ad_groups_create`, `x_ads_ad_groups_read`, `x_ads_ad_groups_update` |
| Ads | `x_ads_ads_create`, `x_ads_ads_delete`, `x_ads_ads_read` |
| Results and reporting | `x_ads_results_read` |
| Media upload | `x_ads_upload` |
| Direct API requests | `x_ads_platform_api_request_mutate` |
Every AdKit connector also has these tools:
| Tool | What it does |
| --- | --- |
| `adkit_projects` | List your AdKit projects and pick one |
| `adkit_status` | Show the connected ad accounts |
| `adkit_setup` | Get the link to connect an ad account |
| `adkit_drafts_read` | List saved drafts, or read one |
| `adkit_drafts_update` | Edit a draft before it goes live |
| `adkit_drafts_delete` | Delete a draft |
| `adkit_drafts_publish` | Publish drafts after you approve them |
| `adkit_help` | Look up fields, limits and examples |
| `adkit_feedback` | Report a bug or a missing feature |
## FAQ
### What is the X Ads MCP server?
A hosted MCP server from AdKit. It lets Claude, ChatGPT, Cursor, Codex and other AI apps work on your X Ads account: X (Twitter) campaigns, ad groups, ads and reports.
### Is the X Ads MCP server free?
It is included in every AdKit plan. Plans start at $29 a month, with a 7-day free trial. See [pricing](https://adkit.so/pricing).
### Can my AI change my X Ads without asking me?
No. Every create, edit or pause is saved as a draft. It goes live only after you approve it, on AdKit's Draft Approval page or by telling your AI to publish it.
### Do I need an API key or a developer token?
No. You sign in to AdKit in your browser and connect your X Ads account there.
### Can I manage several X Ads accounts?
Yes. Connect several accounts and keep each client in its own AdKit project. How many projects you get depends on your plan.
### Which AI apps does it work with?
Claude, ChatGPT, Claude Code, Gemini CLI, Cursor, Codex and any app that supports remote MCP servers with OAuth sign-in.
## Other ad platforms
- [Meta Ads MCP Server](https://github.com/adkit/meta-ads-mcp)
- [Google Ads MCP Server](https://github.com/adkit/google-ads-mcp)
- [TikTok Ads MCP Server](https://github.com/adkit/tiktok-ads-mcp)
- [LinkedIn Ads MCP Server](https://github.com/adkit/linkedin-ads-mcp)
- [Microsoft Ads MCP Server](https://github.com/adkit/microsoft-ads-mcp)
- [Reddit Ads MCP Server](https://github.com/adkit/reddit-ads-mcp)
- [Pinterest Ads MCP Server](https://github.com/adkit/pinterest-ads-mcp)
- [All platforms in one connector](https://github.com/adkit/ads-mcp)
## Support and policies
- Help: [adkit.so/support](https://adkit.so/support) or contact@adkit.so
- [Privacy](./PRIVACY.md), [Terms](./TERMS.md), [Security](./SECURITY.md), [Support](./SUPPORT.md)
## Docs server
[`docs-server/`](./docs-server/index.mjs) is a small local MCP server that answers questions about AdKit from this README: setup per AI app, hosted tools, ad platforms, example prompts and the FAQ. It needs no login and does not manage ads; for that, connect the hosted server above. Run it with `npm start` or the Dockerfile.
## License
MIT
TDQS
Scored across 5 tools
Each tool targets a distinct informational need (install steps, hosted capabilities, platform catalog, sample prompts, FAQ), and several descriptions explicitly redirect to the right sibling (e.g. get_setup_guide points to list_hosted_tools). The only mild overlap is between get_setup_guide and get_faq, since the FAQ also covers supported AI apps and API keys, which could tempt an agent to pick the wrong one.
All five tools use a clean snake_case verb_noun pattern (get_* / list_*) with predictable semantics: get_ for a single document, list_ for enumerations. No stylistic deviations or mixed casing.
Five tools is well-scoped for a thin onboarding/discovery surface, and each maps to a separable user question (install, capabilities, platforms, prompts, FAQ) with no filler. Nothing feels padded or conspicuously missing at the count level.
For its stated purpose — explaining and onboarding to a hosted server — the surface covers install, capability discovery, platform alternatives, first prompts, and common objections. Minor gaps exist (no dedicated tool for supported-AI-app lineup or pricing, both buried inside get_faq, and no way to verify a connection succeeded), but agents can work around them.