synter-mcp-server
Server Quality Checklist
Latest release: v1.0.0
- Disambiguation4/5
Most tools have distinct purposes targeting specific ad platform operations (e.g., create_search_campaign vs. create_display_campaign), but 'run_tool' introduces ambiguity as it overlaps with other tools by allowing execution of unspecified operations. The other 20 tools are well-differentiated by platform and action.
Naming Consistency5/5Tool names follow a consistent verb_noun pattern throughout (e.g., create_search_campaign, list_campaigns, update_campaign_budget), with clear and predictable naming conventions. There are no deviations in style or structure across the set.
Tool Count4/5With 21 tools, the count is slightly high but reasonable for a multi-platform ad management server, covering operations across Google Ads, Meta, LinkedIn, and Reddit. It feels comprehensive without being overly bloated, though it borders on the upper limit of typical scope.
Completeness4/5The tool set provides strong coverage for ad campaign creation, management, and performance tracking across multiple platforms, with clear CRUD-like operations (e.g., create, list, pause, update). Minor gaps exist, such as no explicit tools for deleting campaigns or editing ad creatives, but agents can likely work around these using available tools like 'run_tool' or platform-specific updates.
Average 3.4/5 across 21 of 21 tools scored.
See the Tool Scores section below for per-tool breakdowns.
- 0 of 1 community issues answered or closed in the last 6 months
- 11 commits in the last 12 weeks
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI status not available
This repository is licensed under MIT License.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
This repository includes a glama.json configuration file.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations indicate destructiveHint=true, which already signals a mutation operation. The description adds minimal context by specifying it's for Meta platforms, but doesn't elaborate on permissions, rate limits, or side effects beyond what annotations provide. No contradiction exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's function without unnecessary words. It's front-loaded and wastes no space, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the destructiveHint annotation and lack of output schema, the description is insufficient. It doesn't explain what the tool returns, error conditions, or platform-specific nuances, leaving gaps for a mutation tool with no output documentation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear descriptions for all parameters (name, objective, daily_budget). The description adds no additional parameter semantics beyond what the schema already documents, so it meets the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Create') and resource ('Meta (Facebook/Instagram) advertising campaign'), making the purpose unambiguous. However, it doesn't explicitly differentiate from sibling tools like create_display_campaign or create_search_campaign, which would require a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like create_display_campaign or create_search_campaign. It lacks context about prerequisites, platform specificity, or any exclusions, offering only basic functional information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation 'destructiveHint: true' already indicates this is a write/mutation operation. The description adds some context by specifying required assets, but doesn't provide additional behavioral details like what happens if creation fails, whether there are rate limits, authentication requirements, or what the response contains. The description doesn't contradict 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.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that gets straight to the point. It's appropriately sized for the tool's complexity, though it could potentially benefit from being slightly more structured to separate requirements from purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive operation with 12 parameters and no output schema, the description is somewhat lacking. While annotations cover the destructive nature and the schema covers parameters, the description doesn't address what happens after creation, error conditions, or provide context about Performance Max campaigns versus other campaign types available in sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the input schema already documents all 12 parameters thoroughly. The description adds minimal value beyond the schema by mentioning that images, headlines, descriptions, and business name are required, but doesn't provide additional semantic context about parameter relationships or usage patterns.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create') and resource ('Google Ads Performance Max campaign'), making the purpose immediately understandable. However, it doesn't explicitly differentiate this from sibling tools like 'create_search_campaign' or 'create_display_campaign' beyond mentioning 'Performance Max' in the name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides minimal usage guidance - only stating that certain assets are 'required' (images, headlines, descriptions, business name). It offers no guidance on when to use this tool versus alternatives like 'create_search_campaign' or 'create_display_campaign', nor does it mention prerequisites or when this tool would be inappropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds minimal behavioral context beyond annotations. Annotations indicate destructiveHint=true, implying a mutation, which aligns with 'update'. However, the description doesn't disclose additional traits like permission requirements, rate limits, or whether changes are immediate/irreversible, missing opportunities to enhance transparency for a destructive operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, direct sentence with zero wasted words, efficiently conveying the core action. It's front-loaded and appropriately sized for a straightforward update tool, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the destructive annotation and lack of output schema, the description is incomplete. It doesn't explain what happens on success (e.g., confirmation, updated object) or failure (e.g., errors for invalid budgets), nor does it cover behavioral aspects like side effects, leaving gaps for a mutation tool with significant impact.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the input schema fully documents all three parameters (campaign_id, platform, daily_budget), including enum values for platform. The description adds no extra semantic details about parameters, such as budget constraints or ID formats, so it meets the baseline but doesn't provide additional value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('update') and resource ('daily budget for a campaign'), making the purpose unambiguous. It doesn't explicitly differentiate from sibling tools like 'pause_campaign' or budget-related operations in creation tools, but the specificity is sufficient for understanding the core function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., campaign must exist, budget limits), exclusions (e.g., cannot update paused campaigns), or related tools like 'get_daily_spend' for checking current budgets, leaving usage context unclear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide destructiveHint=true, indicating this is a mutation operation. The description adds context by specifying it adds keywords to campaigns/ad groups, which aligns with the destructive nature. However, it doesn't disclose additional behavioral traits like rate limits, authentication requirements, or what happens if keywords already exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's front-loaded with the core action and resource, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive tool with 3 parameters and no output schema, the description is minimally adequate. It covers the basic purpose but lacks details on usage context, error handling, or return values. Given the annotations provide safety info, it's complete enough to avoid being misleading but could be more informative.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear parameter descriptions and an enum for match_type. The description doesn't add any semantic details beyond what's in the schema (e.g., explaining keyword formats or match type implications), so it meets the baseline for high schema coverage without extra value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Add keywords') and target resources ('Google Ads campaign or ad group'), providing a specific verb+resource combination. However, it doesn't explicitly differentiate from its sibling 'add_negative_keywords' (which presumably adds negative keywords), leaving some ambiguity about scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does 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 alternatives. The description doesn't mention prerequisites, when not to use it, or how it differs from similar tools like 'add_negative_keywords' or campaign creation tools, leaving the agent to infer usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations by specifying the tool blocks 'unwanted search terms,' which clarifies the destructive nature hinted by destructiveHint=true. However, it lacks details on permissions, rate limits, or side effects, relying on annotations for safety cues without fully compensating for behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose without unnecessary words. It's appropriately sized for the tool's complexity, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the destructive annotation, 3 parameters with full schema coverage, and no output schema, the description is minimally adequate. It covers the basic purpose but lacks context on usage scenarios, error handling, or integration with sibling tools, leaving gaps for an agent to infer.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the input schema fully documents all parameters. The description adds no extra semantic details about parameters like 'campaign_id' or 'keywords,' so it meets the baseline but doesn't enhance understanding beyond the structured data.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('add') and resource ('negative keywords') with the purpose 'to block unwanted search terms,' making the tool's function explicit. However, it doesn't differentiate from sibling tools like 'add_keywords' or 'update_campaign_budget,' which might also involve keyword management, so it lacks sibling distinction for a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, exclusions, or compare to siblings such as 'add_keywords' or campaign-related tools, leaving the agent without context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description doesn't add behavioral details beyond the destructiveHint annotation (which indicates a write operation). It doesn't disclose rate limits, authentication needs, or what 'destructive' entails (e.g., budget spending, irreversible creation). With annotations covering the destructive aspect, the description adds little extra context, meeting the lower bar but not enriching it significantly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose without unnecessary words. Every part ('Create a LinkedIn Ads campaign for B2B advertising') directly contributes to understanding, with zero waste or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (6 parameters, destructive operation) and lack of output schema, the description is minimally adequate. It states the purpose but doesn't cover behavioral nuances, error cases, or output expectations. With annotations providing some safety context, it's complete enough for basic use but leaves gaps for an agent to operate fully.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are fully documented in the schema. The description doesn't add any parameter-specific information beyond implying B2B targeting (which loosely relates to target_company_sizes/industries/job_functions but isn't explicit). Baseline 3 is appropriate as the schema carries the semantic burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create') and resource ('LinkedIn Ads campaign') with a specific context ('for B2B advertising'). It distinguishes from siblings like create_meta_campaign or create_reddit_campaign by specifying the LinkedIn platform, but doesn't explicitly differentiate from other LinkedIn-related tools (none are listed in siblings).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides minimal guidance—it mentions B2B advertising context but doesn't specify when to use this tool versus alternatives like create_display_campaign or create_search_campaign, nor does it mention prerequisites (e.g., needing an ad account setup) or exclusions. No explicit usage context is provided beyond the general purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation destructiveHint=true already indicates this is a write/mutation operation. The description adds value by specifying this creates a 'campaign' (implying a persistent resource) and mentions 'community-based advertising' (context about Reddit's targeting approach). However, it doesn't disclose additional behavioral traits like authentication needs, rate limits, or what happens if creation fails.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core action ('create a Reddit Ads campaign') and adds qualifying context ('for community-based advertising'). There is zero wasted verbiage or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive tool with 5 parameters and no output schema, the description is minimally adequate. It states the purpose clearly but lacks guidance on usage, error handling, or return values. The annotations cover the destructive nature, but more context about the creation process would be helpful given the complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all 5 parameters. The description adds no parameter-specific information beyond what's in the schema (e.g., no clarification on subreddits vs interests targeting). Baseline 3 is appropriate when the schema carries the full parameter documentation burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'create' and resource 'Reddit Ads campaign' with the specific context 'for community-based advertising'. It distinguishes from siblings like create_linkedin_campaign or create_meta_campaign by specifying the Reddit platform, though it doesn't explicitly differentiate from other Reddit-related tools (none exist in the sibling list).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like create_display_campaign or create_search_campaign. It mentions 'community-based advertising' which hints at Reddit's platform focus, but offers no explicit when/when-not instructions or prerequisites for campaign creation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint=true, indicating a safe read operation. The description adds value by specifying what it verifies (gtag.js, GTM, and pixel installation), which goes beyond the annotation. However, it doesn't disclose behavioral traits like error handling, rate limits, or output format details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is highly concise and front-loaded, consisting of two efficient sentences that directly state the tool's function and scope. Every sentence earns its place with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (diagnostic check with one parameter), annotations cover safety, and schema fully documents the input. However, without an output schema, the description doesn't explain return values or results format, leaving a gap in completeness for effective agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the single parameter 'url' fully documented in the schema. The description doesn't add any parameter-specific information beyond what the schema provides, so it meets the baseline for high coverage without extra value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Check if conversion tracking is properly set up on a website' specifies the verb (check) and resource (conversion tracking). It distinguishes from siblings by focusing on diagnostic verification rather than campaign creation or management, though it doesn't explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description mentions what it does but doesn't indicate prerequisites, timing, or contextual triggers. Given the sibling tools include various campaign creation and management functions, this gap is notable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds context about the supported AI providers (Imagen 4, Flux, Stable Diffusion) and the ad creative application, which goes beyond the destructiveHint annotation. However, it doesn't disclose important behavioral traits like what 'destructive' means in this context (e.g., consumes credits, generates new content that can't be undone), rate limits, authentication needs, or output format. With annotations covering the destructive nature, the bar is lower, but more context would be helpful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that states the core purpose and key capabilities without unnecessary words. It's appropriately sized for a tool with good schema documentation and front-loads the essential information. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 4 parameters, 100% schema coverage, and destructiveHint annotation, the description is minimally adequate. It provides the purpose and context but lacks important completeness elements: no output information (no output schema exists), no behavioral details about what 'destructive' entails, and no guidance on provider selection. Given the complexity of AI image generation, more context would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the baseline is 3. The description doesn't add any parameter-specific information beyond what's already in the schema descriptions. It mentions the three providers but doesn't explain their differences or when to choose which, which would have added semantic value. The schema already documents all parameters thoroughly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Generate an AI image for ad creatives' specifies the verb (generate) and resource (AI image), with the context 'for ad creatives' providing application scope. It distinguishes from sibling tools like 'generate_video' or 'upload_image' by focusing on image generation. However, it doesn't explicitly differentiate from other creative tools in the list beyond the name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It mentions three AI providers (Imagen 4, Flux, Stable Diffusion) but doesn't explain when to choose one over another or when to use this versus other creative tools like 'generate_video' or campaign creation tools. There are no explicit when/when-not statements or alternative recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, indicating a safe read operation. The description adds context about scope ('across all connected ad accounts') and the breakdown nature, which is useful beyond annotations. However, it doesn't disclose behavioral details like rate limits, authentication needs, or return format, keeping it at a baseline informative level.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's front-loaded with the core action and resource, making it easy to parse and understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (2 parameters, read-only operation), the description covers the basic purpose but lacks output details (no output schema) and usage context. With annotations providing safety info, it's adequate but incomplete for optimal agent understanding, especially without sibling differentiation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear documentation for both parameters in the input schema. The description doesn't add any parameter-specific details beyond what the schema provides, such as explaining the 'days' parameter's impact or 'platform' filtering implications. This meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and resource ('daily spend breakdown across all connected ad accounts'), providing a specific verb+resource combination. However, it doesn't explicitly differentiate from sibling tools like 'get_performance' or 'list_campaigns', which might also involve spending data, so it misses full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, timing, or compare to siblings like 'get_performance' that might overlap in functionality. This leaves the agent with minimal context for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations include 'readOnlyHint: true', which already indicates this is a safe read operation. The description adds minimal behavioral context by listing the metric types returned, but it does not disclose details like rate limits, authentication needs, or pagination behavior. With annotations covering the safety profile, the description provides some value but not rich behavioral insights, warranting a score of 3.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose without unnecessary details. It lists the metric types concisely and avoids redundancy, making it easy to parse. This earns a score of 5 for being appropriately sized and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (a read-only query with three optional parameters) and the absence of an output schema, the description is moderately complete. It specifies the metric types but does not detail the return format, aggregation, or error handling. With annotations covering safety and schema covering parameters, the description is adequate but has gaps, resulting in a score of 3.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with clear documentation for all three parameters (platform, campaign_id, date_range). The description does not add any meaning beyond what the schema provides, such as explaining interactions between parameters or default behaviors. Given the high schema coverage, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get performance metrics (impressions, clicks, spend, conversions, ROAS) for campaigns.' It specifies the verb ('Get') and resource ('performance metrics'), and lists specific metric types. However, it does not explicitly differentiate from sibling tools like 'get_daily_spend' or 'list_campaigns', which limits its score to 4 rather than 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention sibling tools (e.g., 'get_daily_spend' for spend-only metrics or 'list_campaigns' for campaign lists without metrics), nor does it specify prerequisites or exclusions. This lack of contextual direction results in a score of 2.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations indicate readOnlyHint=true, which the description aligns with by using 'List' (a read operation). The description adds value by specifying the scope ('across connected ad platforms') and the returned fields, but it doesn't disclose behavioral traits like pagination, rate limits, or whether it requires authentication beyond what annotations provide. No contradiction with annotations exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that efficiently conveys the tool's purpose and output. It's front-loaded with the core action and resource, followed by key return details, with no unnecessary words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (listing campaigns with filters), the absence of an output schema, and annotations covering only read-only status, the description is somewhat incomplete. It specifies returned fields but lacks details on output format (e.g., structure, pagination), error handling, or dependencies on connected platforms. However, it adequately covers the basic functionality for a read operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with clear documentation for all three parameters (platform, status, limit). The description doesn't add any semantic details beyond what the schema provides, such as explaining how 'platform' filtering works with multiple connections or default behaviors for unspecified parameters. This meets the baseline score of 3 given high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('List') and resource ('campaigns across connected ad platforms'), and specifies what information is returned ('campaign name, status, budget, and performance metrics'). However, it doesn't explicitly differentiate this tool from sibling tools like 'list_ad_accounts' or 'get_performance', which also involve listing or retrieving data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to choose 'list_campaigns' over sibling tools like 'get_performance' (which might return similar metrics) or 'list_ad_accounts' (which lists accounts rather than campaigns). There's also no information about prerequisites, such as needing connected ad platforms.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide destructiveHint=true, indicating a write operation. The description adds context that this uploads an image 'as an asset for use in ads', clarifying the resource type and purpose. However, it doesn't disclose additional behavioral traits like authentication needs, rate limits, or what happens to existing assets. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with the core action ('upload an image'), zero waste. Efficiently conveys the essential information without unnecessary details, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive tool with 3 parameters and no output schema, the description is minimal. It covers the basic purpose but lacks details on behavioral aspects like error handling, return values, or platform-specific nuances. With annotations covering destructiveness, it's adequate but could be more comprehensive for a mutation operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear parameter descriptions in the schema (e.g., 'URL of the image to upload'). The description adds no parameter-specific information beyond implying the asset is for ads, which doesn't enhance parameter understanding. Baseline 3 is appropriate given high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('upload') and resource ('image as an asset'), specifying its use 'for ads'. It distinguishes from siblings like 'generate_image' (which creates rather than uploads) and campaign tools, but doesn't explicitly contrast with all siblings. The purpose is specific but could be more differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like 'generate_image' or other asset-related tools. It mentions the use case 'for ads' but doesn't specify prerequisites, timing, or exclusions. The description lacks explicit when/when-not instructions or named alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds minimal behavioral context beyond the annotations. Annotations indicate 'destructiveHint: true,' implying a write operation that may consume resources. The description mentions AI providers (Veo, Runway, Luma) and use cases (YouTube/social ads), but doesn't disclose critical details like rate limits, costs, processing time, or output format. No contradiction with annotations exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the core purpose in the first sentence. The second sentence adds contextual value without redundancy. However, it could be slightly more structured by explicitly separating purpose from usage context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (AI video generation with 6 parameters) and the presence of annotations (destructiveHint) but no output schema, the description is moderately complete. It covers the what and why but lacks details on behavioral aspects like processing behavior, error handling, or output expectations, which are important for a destructive operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all parameters. The description doesn't add any parameter-specific information beyond what's in the schema (e.g., it doesn't explain the 'concept' enum values like 'pas' or 'aida' in more detail). Baseline score of 3 is appropriate as the schema handles the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Generate an AI video ad using Veo, Runway, or Luma.' It specifies the verb ('Generate'), resource ('AI video ad'), and technology providers. However, it doesn't explicitly differentiate from sibling tools like 'generate_image' beyond mentioning video vs. image, leaving some ambiguity about when to choose video over image generation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides some usage context: 'Great for YouTube and social ads.' This implies a marketing/advertising use case. However, it doesn't offer explicit guidance on when to use this tool versus alternatives like 'generate_image' or other campaign creation tools, nor does it specify prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the agent knows this is a safe read operation. The description adds value by specifying the scope ('across platforms'), but doesn't disclose behavioral traits like pagination, rate limits, or authentication needs beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero wasted words. It's front-loaded with the core purpose ('List all connected ad accounts') and adds necessary context ('across platforms') without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only tool with no parameters and annotations covering safety, the description is adequate but incomplete. It lacks output details (no schema provided) and doesn't clarify platform-specific behaviors or error handling, leaving gaps in contextual understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0 parameters and 100% schema description coverage, the schema fully documents the input (none required). The description doesn't need to add parameter details, so it meets the baseline for tools with no parameters, earning a score above the minimum.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and resource ('all connected ad accounts across platforms'), making the purpose immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'list_campaigns' or 'list_conversions', which prevents a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'list_campaigns' or 'list_conversions'. It lacks context about prerequisites (e.g., needing connected accounts) or exclusions, leaving usage unclear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, so the agent knows this is a safe read operation. The description adds minimal behavioral context beyond this - it specifies 'all conversion actions' but doesn't mention pagination, sorting, filtering, or response format. With annotations covering the safety profile, this meets baseline expectations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that communicates the essential purpose without any wasted words. It's front-loaded with the core functionality and appropriately sized for a simple listing operation with no parameters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read operation with readOnlyHint annotation, the description is minimally adequate. However, without an output schema, the description doesn't explain what 'list all conversion actions' returns - whether it's a simple array, paginated results, or includes specific fields. This leaves gaps in understanding the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters with 100% schema description coverage, so the schema fully documents the absence of inputs. The description appropriately doesn't discuss parameters, maintaining focus on the tool's purpose. This exceeds the baseline expectation for parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and resource ('conversion actions configured in Google Ads'), making the purpose immediately understandable. It doesn't explicitly differentiate from sibling tools like 'create_conversion' or 'get_performance', but the verb 'List' provides inherent distinction from creation/update operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With sibling tools like 'create_conversion', 'get_performance', and 'list_campaigns', there's no indication of when this specific listing tool is appropriate versus other listing or retrieval operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide destructiveHint=true, indicating this is a write/mutation operation. The description adds valuable context beyond annotations: it specifies the platform (Google Ads), mentions the return values (conversion ID and label for GTM setup), and implies persistence (creation of a conversion action). No contradiction with annotations, and the description usefully supplements the safety profile with platform and output details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise (two sentences) and front-loaded with the core action. Every sentence earns its place: the first states the purpose, and the second adds critical output information. No wasted words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a destructive tool with no output schema, the description is minimally adequate. It covers the action and return values, but lacks context like error conditions, permissions needed, or typical workflows. With annotations covering destructiveness and schema covering parameters, it meets basic needs but could be more complete for a mutation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear documentation for all parameters (name, value, category). The description adds no parameter-specific information beyond what's in the schema. Baseline score of 3 is appropriate as the schema fully handles parameter semantics, and the description doesn't need to compensate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create a conversion action in Google Ads') and resource ('conversion action'), with specific mention of Google Ads platform. It distinguishes from siblings like 'list_conversions' (read vs. create) but doesn't explicitly differentiate from other creation tools like campaign creation tools. The purpose is specific but could better highlight uniqueness within the sibling set.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an active Google Ads account), when to choose this over other conversion-related tools (none in siblings), or typical use cases. The return value mention hints at GTM setup, but this is outcome-focused rather than usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations provide destructiveHint=true, indicating this tool can perform destructive operations. The description adds minimal behavioral context beyond this—it mentions 'advanced operations' and refers to external docs but doesn't detail what types of operations are destructive, rate limits, or authentication needs. With annotations covering the safety profile, the description adds some value but lacks rich behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is highly concise and front-loaded: two sentences that efficiently convey the tool's purpose and usage. Every sentence earns its place—the first states what it does, and the second provides guidance and a resource. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (a generic runner with destructive potential) and the presence of annotations (destructiveHint) but no output schema, the description is moderately complete. It covers purpose and basic usage but lacks details on return values, error handling, or specific behavioral risks. It's adequate but has clear gaps for such a powerful tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents the three parameters (script_name, args, platform). The description adds no additional parameter semantics beyond what's in the schema—it doesn't explain how to format args or choose platform values. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Run any Synter tool by name' with the specific verb 'run' and resource 'Synter tool'. It distinguishes this from siblings by mentioning 'advanced operations not covered by other tools', though it doesn't explicitly name alternatives. The purpose is clear but could be more specific about what distinguishes it from direct siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool: 'for advanced operations not covered by other tools'. This implicitly suggests using other tools for standard operations and this one as a fallback. However, it doesn't explicitly state when NOT to use it or name specific alternatives among the sibling tools, which would elevate it to a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations provide destructiveHint=true, indicating this is a write operation. The description adds valuable context about supporting 'image uploads from URLs' which isn't covered by annotations, giving practical implementation details. However, it doesn't mention rate limits, authentication requirements, or what happens on failure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly concise with two sentences that each add distinct value: the first states the core purpose, the second adds a key implementation detail. No wasted words, and the most important information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive tool with 9 parameters and no output schema, the description provides good context about what gets created and how images are handled. However, it doesn't mention what the tool returns (e.g., campaign ID, success status) or error conditions, which would be helpful given the complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the input schema already documents all 9 parameters thoroughly. The description doesn't add any meaningful parameter information beyond what's in the schema, so it meets the baseline of 3 for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Create'), resource ('Google Ads Display campaign'), and ad type ('responsive display ads'), distinguishing it from siblings like create_search_campaign or create_meta_campaign. It also mentions the specific feature of 'image uploads from URLs' which adds further differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for creating display campaigns with responsive ads, but doesn't explicitly state when to use this vs. alternatives like create_search_campaign or create_pmax_campaign. No guidance is provided about prerequisites, exclusions, or specific scenarios where this tool is preferred over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations provide destructiveHint=true, indicating this is a write operation. The description adds valuable context beyond this by specifying that it creates multiple related entities (campaign, ad group, keywords, and responsive search ads) in a single operation, which helps the agent understand the scope and potential impact of the tool. However, it doesn't mention authentication requirements, rate limits, or error conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly concise - two sentences that efficiently convey the tool's purpose and scope without any wasted words. It's front-loaded with the main action and follows with specific details about what gets created. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex creation tool with 7 parameters and destructiveHint annotation, the description provides good context about what gets created. However, without an output schema, it doesn't describe what the tool returns (e.g., campaign ID, confirmation). The description covers the creation scope well but could benefit from mentioning the tool's response format or success indicators.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the input schema already documents all 7 parameters thoroughly. The description doesn't add any additional parameter semantics beyond what's in the schema - it mentions keywords and responsive search ads but doesn't provide format details or constraints beyond what the schema already specifies. The baseline score of 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Create a Google Ads Search campaign with keywords') and specifies the exact resources being created ('Sets up campaign, ad group, keywords, and responsive search ads'). It distinguishes this from sibling tools like 'create_display_campaign' or 'create_pmax_campaign' by specifying this is for Search campaigns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by specifying 'Google Ads Search campaign with keywords' and listing what gets created, but it doesn't explicitly state when to use this tool versus alternatives like 'create_display_campaign' or 'create_meta_campaign'. No guidance is provided about prerequisites, timing considerations, or when NOT to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations provide destructiveHint=true, indicating this is a mutation operation. The description adds value by specifying it works 'across all connected platforms,' which clarifies its cross-platform applicability beyond what annotations convey. It doesn't contradict annotations, as 'Pause' aligns with a destructive action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core action ('Pause a campaign by ID') and adds necessary context ('Works across all connected platforms') without any wasted words. Every part earns its place by clarifying purpose and scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (a destructive operation with 2 required parameters), annotations cover the destructive nature, and the schema fully describes inputs. The description adds cross-platform context, but without an output schema, it doesn't explain return values or error conditions, leaving a minor gap for completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents both parameters (campaign_id and platform with enum values). The description doesn't add any parameter-specific details beyond what's in the schema, such as format examples or platform-specific behaviors, resulting in a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Pause') and resource ('campaign by ID'), and distinguishes itself from siblings by focusing on pausing rather than creating, updating, or listing campaigns. The phrase 'Works across all connected platforms' further clarifies its cross-platform scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by specifying 'by ID' and 'across all connected platforms,' which suggests it should be used when you have a campaign ID and need to pause it on a supported platform. However, it doesn't explicitly state when not to use it or name alternatives (e.g., update_campaign_budget for budget changes instead of pausing).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Synter-Media-AI/mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server