Skip to main content
Glama
MoonEyes

google-ecommerce-mcp

Plan an OpenAI Ads pause

openai_ads_plan_pause
Read-only

Plan pausing OpenAI Ads campaigns, ad groups, or ads without writing changes: validate each entity, run a local dry-run, and return a confirmation token for later apply.

Instructions

PLAN (nothing is written): pause OpenAI Ads (ChatGPT ads) campaigns, ad groups or ads. Reads each entity (archived ones are refused, already paused ones are skipped), checks the client's write policy, runs a LOCAL dry-run (the unit endpoints have no validate_only) and returns the plan with confirmation_token and confirm; apply it with openai_ads_apply after the user agreed. Rollback reactivates what was active (that rollback spends money: allow_activate and a human approval). Note: an OpenAI Ads key cannot be read-only; only this server's policy guards writes.

Input Schema

NameRequiredDescriptionDefault
levelYesWhat to pause: campaign, ad_group or ad
client_idNoClient id from clients_list; empty uses the only client
entity_idsYesIds of the entities to pause (1 to 25), from openai_ads_campaigns / openai_ads_ad_groups / openai_ads_ads

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.5.0

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes well beyond the annotations: discloses the local dry-run because 'the unit endpoints have no validate_only', the archived-refusal and paused-skip behavior, the confirmation_token/confirm handshake, the cost-bearing rollback with its approval requirement, and the caveat that this server's write policy — not the key — guards writes. That last note is essential context the structured fields never supply.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Dense but front-loaded: the PLAN/read-only guarantee leads, then the flow, then caveats. Every clause carries operational content. It is packed close to the limit for a single paragraph, which is why it lands at 4 rather than 5.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a multi-step plan/apply workflow with no output schema, the description supplies the return shape (plan with confirmation_token and confirm), the apply step, the rollback semantics and the policy caveat. An agent has everything needed to call and sequence this correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so level, client_id and entity_ids are already fully documented in the schema (including the 1-25 bound and the source list tools). The description adds no syntax or format detail beyond that, so the baseline 3 is correct.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb+resource+scope: 'PLAN (nothing is written): pause OpenAI Ads campaigns, ad groups or ads.' The uppercase PLAN signal and the explicit 'nothing is written' framing distinguish it cleanly from the openai_ads_apply sibling that actually performs the write.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly routes the agent: plan first, then 'apply it with openai_ads_apply after the user agreed'. Also states edge-case handling (archived refused, already-paused skipped) and the rollback path including the extra prerequisites (allow_activate + human approval). Nothing about when/when-not is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools