templates_reverse_engineer
Preview a template from a live ad set
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| adset_id | No | ||
| source_ad_id | No | ||
| ad_account_id | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| message | No | ||
| retryable | No | ||
| support_ref | No |
Preview a template from a live ad set
| Name | Required | Description | Default |
|---|---|---|---|
| adset_id | No | ||
| source_ad_id | No | ||
| ad_account_id | Yes |
| Name | Required | Description | Default |
|---|---|---|---|
| message | No | ||
| retryable | No | ||
| support_ref | No |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description's 'Preview' aligns with the readOnlyHint annotation and implies no mutation, but it does not disclose any additional behavioral traits such as whether it fetches live data, requires prior setup, or has side effects. With annotations already covering read-only behavior, the description adds little beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence with no unnecessary words or repetition. It is concise and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description omits key context such as what kind of template is being previewed, how the input parameters relate, and what the preview output represents. Despite the presence of an output schema, the lack of any explanation around the three parameters makes the tool feel incomplete for practical use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has three parameters with no descriptions, and the description does not explain the roles of adset_id, source_ad_id, or ad_account_id. The only hint is that ad_account_id is required, but that is already visible in the schema. Parameter meaning is almost entirely unspecified.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description indicates a specific action ('Preview') and a resource ('template') sourced from a live ad set, which generally distinguishes it from template CRUD operations. However, the tool name mentions 'reverse engineer' while the description only says 'preview,' leaving a slight ambiguity about the actual operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus similar template tools (e.g., templates_get, templates_create) or how it relates to a live ad set. The description does not mention alternatives or the intended workflow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.