OpenAI Ads MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PORT | No | HTTP port for HTTP mode. Default 8080. | 8080 |
| OPENAI_ADS_API_KEY | Yes | Required bearer key for https://api.ads.openai.com/v1. | |
| OPENAI_ADS_API_BASE_URL | No | Optional HTTPS override for tests or proxies. | |
| OPENAI_ADS_MCP_READONLY | No | Set to '1' or 'true' to register read tools only. | |
| OPENAI_ADS_MCP_HTTP_PATH | No | MCP path for HTTP mode. Default '/mcp'. | /mcp |
| OPENAI_ADS_MCP_HTTP_PORT | No | Alternative to PORT for HTTP port. Default 8080. | 8080 |
| OPENAI_ADS_MCP_HTTP_TOKEN | No | Optional bearer token required by hosted clients for HTTP mode. | |
| OPENAI_ADS_MCP_HEALTH_PATH | No | Health path for HTTP mode. Default '/healthz'. | /healthz |
| OPENAI_ADS_BUDGET_CEILING_USD | No | Optional budget guard. Default 100. | 100 |
| OPENAI_ADS_MCP_HTTP_CORS_ORIGIN | No | Optional CORS origin for HTTP mode. Default '*'. | * |
| OPENAI_ADS_MCP_HTTP_ALLOW_WRITES | No | Set to '1' to expose write tools over HTTP. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_accountA | Get the authenticated OpenAI Ads account. Use this first to verify that OPENAI_ADS_API_KEY works and to read account id, name, timezone, currency, and settings. |
| list_campaignsA | List campaigns in the authenticated ad account with cursor pagination. |
| get_campaignB | Get one campaign by id. |
| list_ad_groupsB | List ad groups, optionally filtered to a campaign. |
| get_ad_groupB | Get one ad group by id. |
| list_adsC | List ads in an ad group. |
| get_adA | Get one ad by id, including review_status and creative metadata. |
| get_insightsA | Get performance insights for account, campaign, ad group, or ad scope. Supports fields, filters, sort, product/country/device segments, time ranges, and cursor pagination. |
| list_audiencesC | List custom audiences for the authenticated ad account. |
| get_audienceB | Get one custom audience by id. |
| search_geoA | Search geo targets for targeting.locations.include and return ids usable in campaign targeting. |
| draft_context_hintsC | Draft deterministic context_hints for an ad group from product, audience, intent, and keywords. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| Trakkr AI visibility briefing | A short paste-ready briefing on connecting ChatGPT ad placements with organic AI visibility tracking. |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/trakkr-aisearch/openai-ads-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server