Skip to main content
Glama

AdsAgent — TikTok Ads MCP

optimization_evaluate

Evaluate one owned TikTok advertiser from complete, fresh cached ledger evidence and persist bounded read-only recommendations. This never mutates TikTok. Choose native campaign or ad_group; do not use Meta adset fields. A pause candidate requires an explicit advertiser-currency max_cost_without_conversion. Budget scaling is capped at 30 percent and remains only a recommendation.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
date_toYes
group_byYes
date_fromYes
target_roasYes
advertiser_idYes
min_conversionsNo
budget_increase_percentNo
max_cost_without_conversionNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly states the tool 'never mutates TikTok' and that recommendations are 'bounded read-only', which is critical behavioral context. It also discloses that budget scaling is 'capped at 30 percent' and 'remains only a recommendation', preventing the agent from assuming the tool executes changes. The only minor gap is that it doesn't specify what the persisted recommendations look like or how they are returned, but the core behavioral traits are well covered.

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

Conciseness5/5

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

The description is four sentences, each earning its place. The first sentence states the core action and scope, the second clarifies the non-mutating behavior, the third gives a specific condition for pause candidates, and the fourth caps budget scaling. It is front-loaded with the most important information and contains no filler or repetition of schema fields.

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?

Given the tool's complexity (8 parameters, 5 required, no output schema, no annotations), the description covers the most critical operational constraints: the non-mutating nature, the campaign/ad_group choice, the pause-candidate requirement, and the budget cap. It does not explain the return format or how recommendations are persisted, but the description is strong enough for an agent to invoke the tool correctly in most cases. The missing parameter semantics for target_roas and min_conversions are a minor gap.

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

Parameters4/5

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

Schema description coverage is 0%, so the description must compensate for the schema's lack of parameter documentation. It does so by explaining the key semantic constraints: 'max_cost_without_conversion' is tied to a pause candidate and must be in advertiser currency, and 'budget_increase_percent' is implicitly capped at 30. It also clarifies that 'group_by' should be 'campaign' or 'ad_group' and not Meta adset fields. However, it doesn't explain 'target_roas', 'min_conversions', or the date range parameters, so it doesn't fully compensate for the 0% coverage.

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?

The description opens with a specific verb ('Evaluate'), a precise resource ('one owned TikTok advertiser'), and a clear source ('complete, fresh cached ledger evidence'). It also states the output ('persist bounded read-only recommendations') and explicitly distinguishes itself from Meta adset fields, which is a strong differentiator given the sibling list contains many TikTok and Meta-related tools. The phrase 'never mutates TikTok' further clarifies its non-destructive nature, making the purpose unmistakable.

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?

The description provides explicit when-to-use guidance: 'Choose native campaign or ad_group; do not use Meta adset fields.' It also gives a concrete condition for a pause candidate ('requires an explicit advertiser-currency max_cost_without_conversion') and a constraint on budget scaling ('capped at 30 percent'). This is more than enough for an agent to decide when to invoke this tool versus alternatives like optimization_prepare_action or optimization_list_decisions.

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