Skip to main content
Glama

edit_chatgpt_ad

Edit selected fields of a ChatGPT ad draft; pass its latest revision from get_chatgpt_ads. For a launched ad, creative/targeting/bid/duration changes require replacement=true and a new requestKey: this creates a replacement DRAFT and leaves the original unchanged. Clearly explain this, show the new quote, then start the replacement and end the original only as authorized. Use update_chatgpt_ad_budget for a live budget-only edit.

Input Schema

NameRequiredDescriptionDefault
changesYes
revisionNo
campaignIdYes
requestKeyNo
replacementNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

Goes well past the annotations by disclosing that a replacement creates a new DRAFT and 'leaves the original unchanged', that the original is only ended as authorized, and that a fresh requestKey is required. This clarifies the destructiveHint=false claim (the original is preserved) and adds prerequisite and workflow context the structured fields do not carry.

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?

Front-loaded with the core action and constraint, and the sentences are dense with distinct information rather than filler. The trailing authorization instruction is slightly process-heavy for a description but still earns its place for safe replacement handling.

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

Completeness4/5

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

For a nested, multi-step mutation tool with no output schema, it covers the flow, prerequisites, and the replacement semantics an agent needs. It stops short of enumerating editable fields or failure modes, so it is strong but not exhaustive.

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?

With 0% schema description coverage, the description must carry the load and it explains three of the five top-level params well: revision ('latest revision from get_chatgpt_ads'), replacement, and requestKey. However, campaignId and the entire nested 'changes' object (10 sub-fields such as body, headline, countries, budgetCents) get no semantic explanation anywhere, which is a real gap.

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?

States a specific verb and resource ('Edit selected fields of a ChatGPT ad draft') and immediately scopes the object type (draft vs launched ad). It explicitly distinguishes itself from the sibling update_chatgpt_ad_budget, so an agent can route without opening either schema.

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?

Gives explicit when-to-use rules: drafts are edited directly, while launched ads require replacement=true plus a new requestKey, and budget-only live edits must go to update_chatgpt_ad_budget. Alternatives and their selecting conditions are named outright.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources