Skip to main content
Glama

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.1.0

  • Disambiguation5/5

    Each tool has a distinct purpose: list tools target different entities (profiles, endpoints, locations, rules, services), create tools specify rule types, and activity/diagnose tools are clearly separated. No overlapping or ambiguous tools.

    Naming Consistency4/5

    Most tools follow the verb_noun pattern (e.g., list_profiles, create_block_rules), but there is a mix of verbs like 'get', 'diagnose', and 'check' alongside 'list'. This is mildly inconsistent but still clear enough to avoid confusion.

    Tool Count5/5

    With 15 tools, the server sits at the upper boundary of the recommended range but remains well-suited for a DNS control service. The tool count is neither excessive nor insufficient for the domain.

    Completeness5/5

    The tool set covers listing, creating, deleting, and modifying state (pause/resume/set), plus diagnostics and setup checks. No obvious missing operations for the Control D domain.

  • Average 4/5 across 15 of 15 tools scored. Lowest: 3.3/5.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 2 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.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to 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?

    Annotations already declare read-only, idempotent, non-destructive behavior, so the description does not need to repeat that. It adds useful context about the recent window and that dependent domains may appear separately, but it does not describe result formatting or what happens when nothing is found.

    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 two sentences, front-loaded with the core purpose, and the second sentence adds a meaningful usage nuance. Every word earns its place.

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

    Completeness3/5

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

    The description is adequate for a simple read-only diagnostic tool, especially with strong annotations. However, with five parameters, low schema coverage, and no output schema, it leaves some gaps around return values and optional parameter behavior.

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

    Parameters2/5

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

    With only 20% schema description coverage, the description should compensate by explaining more parameters. It clarifies that 'site' is the site the user tried and implies a recency window, but it leaves limit, endpointId, and search semantics mostly unaddressed beyond the schema.

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

    Purpose4/5

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

    The description clearly states the tool finds DNS queries blocked in the recent browsing window, using a specific verb and resource. It is distinguishable from siblings like get_recent_activity because it focuses on blocked DNS queries, though it does not explicitly name an alternative.

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

    Usage Guidelines3/5

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

    The description gives clear context: supply the site you tried and use the recent browsing window. However, it does not explicitly explain when to prefer this tool over related tools or when not to use it.

    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, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description adds that it lists locations and IDs, but does not disclose additional behavioral traits like pagination or output format. With annotations covering safety, a 3 is appropriate.

    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 a single sentence with no wasted words. It is front-loaded with the verb 'List' and clearly states the resource and purpose. Perfectly concise.

    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 has no parameters, no output schema, and simple purpose, the description is complete enough. It explains what the tool returns (locations and IDs) and their use case (redirect rules). The sibling tools are mostly about rules and profiles, so this tool's role is clear.

    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?

    The tool has zero parameters, and schema coverage is 100% (empty schema). The description adds meaning by specifying what is listed (proxy locations and IDs) and their purpose (for redirect rules), which is useful context beyond the empty schema. Baseline 4 for zero params is justified.

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

    Purpose4/5

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

    The description clearly states the tool lists Control D proxy locations and IDs for redirect rules, which is a specific verb+resource. It distinguishes from siblings like list_profiles and list_endpoints by focusing on proxy locations for redirect rules, though it could be more explicit about the distinction.

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

    Usage Guidelines3/5

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

    The description implies usage for redirect rules but does not explicitly state when to use this tool versus alternatives. It lacks guidance on when not to use it or mention of alternatives, but the context of redirect rules provides some clarity.

    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 disclose readOnlyHint=false, destructiveHint=true, and idempotentHint=false, so the mutating nature is known. The description adds the adverb 'Immediately' (indicating speed) and reiterates the confirm requirement, but it does not explain any side effects or consequences of resuming, which is a notable gap given the destructive hint.

    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 a single sentence, front-loaded with the core action, and every word contributes meaning. No filler or redundancy, making it exemplary in conciseness.

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

    Completeness3/5

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

    For a two-parameter control action with no output schema, the description is adequate but minimal. It states the action and confirmation requirement, yet leaves out preconditions (e.g., what happens if the profile is not paused) and any expected outcome, which could be beneficial for the agent's decision-making.

    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% with both 'profile' and 'confirm' well-described. The description adds no new parameter semantics beyond what the schema already provides, so 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.

    Purpose5/5

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

    The description clearly states the action (resume), the target resource (profile), and a condition (paused). It inherently distinguishes from the sibling tool pause_profile by being its inverse, and the specificity of 'paused profile' leaves no ambiguity about purpose.

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

    Usage Guidelines3/5

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

    The description implies use when a profile is paused but does not explicitly state when to use it versus alternatives or mention exclusions. It does not reference sibling tools like pause_profile or list_profiles, leaving the usage context somewhat implied rather than explicit.

    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 already declare destructiveHint=true and readOnlyHint=false, so the description adds value by disclosing the confirmation requirement ('Requires confirm=true') and the enabled state of created rules. This is useful behavioral context beyond the annotations, though it does not detail the destructive impact.

    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 two short sentences with no fluff. The core action and a critical requirement are placed upfront, making it highly scannable.

    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 rich schema and annotations, the description covers the essential invocation details. It lacks usage context and return behavior, but for a straightforward create tool with high schema coverage, it is reasonably complete.

    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 80%, so the schema carries most parameter meaning. The description's mention of 'confirm=true' reinforces the confirmation parameter but adds little new semantic detail beyond what is already in the schema.

    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 states a specific verb and resource: 'Create enabled custom block rules.' The title 'Block domains' further clarifies the resource, and it naturally distinguishes from sibling tools like create_bypass_rules and create_redirect_rules.

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

    Usage Guidelines2/5

    Does 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 the alternatives (e.g., bypass rules, redirect rules). There are no exclusions or context cues about scenarios where blocking is appropriate.

    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 already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false. The description adds meaningful context beyond those flags: the need for Full Analytics, the sensitive nature of the data, and the fact that 'results are not stored' – all useful behavioral details not visible in 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/5

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

    Two terse sentences front-load the core purpose and then add a high-value caveat about permissions and data persistence. Every word earns its place; there is no redundant filler, repetition of the title, or schema boilerplate.

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

    Completeness3/5

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

    With five optional parameters, no output schema, and no parameter-level guidance in the description, the tool is only partially complete for autonomous invocation. The annotations and the two-line description adequately cover safety and prerequisites, but an agent would need to infer the semantics of limit, minutes, endpointId, and blockedOnly from names alone, which is a notable gap.

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

    Parameters2/5

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

    Schema description coverage is only 20% (only 'search' has a description), yet the tool description does not compensate by explaining any of the five parameters. The names limit, minutes, endpointId, blockedOnly are partially self-explanatory, but the description adds no meaning for them, leaving semantic gaps for an agent trying to construct correct calls.

    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 begins with 'Read recent Control D activity' – a specific verb targeting a specific resource with a clear scope ('recent'), distinguishing it from sibling list tools like list_profiles or list_endpoints. The second sentence adds a critical qualifier about Full Analytics, further clarifying which kind of activity logs are involved.

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

    Usage Guidelines3/5

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

    The description states that 'Activity logs require Full Analytics and are sensitive', implying this tool should only be used when the user has that entitlement. However, it gives no explicit when-to-use or when-not-to-use guidance versus sibling tools such as diagnose_recent_blocks or list_endpoints, leaving the agent to infer that this is the raw activity-log reader.

    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 indicate readOnlyHint, openWorldHint, idempotentHint, and non-destructive, so the description does not need to repeat safety. It adds that the tool lists both service states and the service catalog, which is useful but not deep behavioral context. No contradictions 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/5

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

    The description is two sentences, clear, and front-loaded with the main purpose. The second sentence adds a practical use case. Every word earns its place.

    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?

    The tool is simple (single parameter, no output schema) and the description covers the purpose and a key use case. Given the annotations cover safety, and the schema covers parameters, the description is sufficient. It could mention the output format, but it's not essential for a listing tool.

    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?

    The single parameter 'profile' is fully described in the schema (coverage 100%), so the description adds no additional parameter info. The description implicitly indicates the profile is used to resolve names to IDs, but the schema already states 'Exact profile name or profile ID'. The baseline of 3 is appropriate.

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

    Purpose4/5

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

    The description clearly states the tool 'list_profile_services' lists profile service states and the service catalog, and mentions a use case (resolving names to IDs). It is specific about the result (states + catalog) and differentiates from siblings like list_profiles and list_profile_rules. However, it could be more explicit about the distinction from 'set_service_policy'.

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

    Usage Guidelines4/5

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

    The description gives a clear when-to-use: 'Use this to resolve names such as YouTube to exact IDs.' It does not explicitly say when not to use it or name alternatives, but the context implies it is for reading state and catalog, as opposed to modifying (e.g., set_service_policy) or listing other entities. This is sufficient for a read-only listing tool.

    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 destructiveHint=true and readOnlyHint=false, so the description's 'this is destructive' is redundant with structured data. The confirm requirement is also already encoded as const true in the schema. The 'exact hostname' phrase adds some behavioral context, though the schema already clarifies exact domains/wildcards. No annotation 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/5

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

    The description is two short sentences with the purpose front-loaded. 'This is destructive and requires confirm=true.' is concise and directly relevant, with no filler or unnecessary wording.

    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 simple deletion tool with full schema coverage and destructive annotations, the description covers the essential points: what it deletes, the matching key, and the confirmation requirement. It could be slightly more explicit about wildcard support or which rule types are deleted, but the title and schema largely cover those gaps.

    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 the schema already documents profile, hostnames, and confirm. The description only restates 'by exact hostname' and the confirm requirement, adding minimal semantic value beyond what the input schema provides.

    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 uses a specific verb and resource ('Delete rules') and adds a key qualifier ('by exact hostname'). The title 'Delete custom rules' reinforces the scope, and this clearly distinguishes the tool from sibling tools like create_bypass_rules, create_block_rules, and list_profile_rules.

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

    Usage Guidelines4/5

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

    The description clearly implies when to use the tool: when you need to delete custom rules. It also adds a caution about destructiveness and confirmation, but it does not explicitly mention alternatives or exclusions such as pause_profile or create_* rules.

    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 already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds the behavioral detail that returned data includes 'recent activity metadata', which is not captured by the annotations. This adds context without contradiction.

    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 a single, front-loaded sentence with no unnecessary words. It efficiently communicates the core functionality.

    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 parameterless list operation with no output schema, the description is mostly complete. It explains the entity (devices/endpoints) and the kind of data (recent activity metadata). Could clarify whether it returns all endpoints or only those with activity, but this is minor.

    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?

    With zero parameters and no input schema properties, the description needs to explain parameter semantics. The description implies the tool takes no arguments and returns a list, which is consistent. Per the guideline, 0 params yields a baseline of 4.

    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 uses the specific verb 'List' and resource 'devices/endpoints', adding 'with recent activity metadata' to clarify the data returned. It clearly distinguishes from sibling tools like 'list_profiles' and 'get_recent_activity'.

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

    Usage Guidelines2/5

    Does 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 exclusions, preconditions, or scenarios where another tool would be more appropriate.

    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 already flag destructive/non-idempotent behavior, and the description adds meaningful context beyond annotations: the specific operational modes, the ability to override filters, and the required confirm flag. This is sufficient behavioral disclosure for a mutation tool, though it doesn't detail side effects on existing rules.

    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 two sentences and front-loads the essential behavior. No filler or redundancy; every sentence contributes useful information. It efficiently conveys the core modes and a critical safety requirement.

    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 destructive, non-idempotent tool with no output schema, the description covers the key selection and invocation concerns: what policy is changed, what modes are available, and the confirmation requirement. Minor gaps remain, such as conditional proxyLocationId usage and exact return/result behavior, but schema and annotations fill in most blanks.

    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?

    The schema already covers profile, service, mode, confirm, and proxyLocationId, though proxyLocationId has no description. The description adds plain-language meaning to the mode values (off, block, bypass, route through Control D) and makes confirm=true prominent, but it does not clarify the conditional relationship between redirect mode and proxyLocationId.

    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 clearly states the action and resource: turning a named service off, blocking, bypassing, or redirecting it through a Control D proxy. It distinguishes this from sibling rule-creation tools by focusing on service-level policy changes and the explicit mode vocabulary.

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

    Usage Guidelines3/5

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

    The description implies when to use the tool—when you need to change a named service's policy mode—but does not explicitly state when not to use it or name alternatives. It does mention that service rules can override filters, which hints at precedence, but it lacks clear when-to-use vs. other rule tools 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?

    Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the safety profile is fully covered. The description adds the scope constraint ('for one profile') but doesn't describe any additional behavior like pagination, return format, or error handling. Since annotations carry the safety burden, a 3 is appropriate.

    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 one concise sentence, front-loaded with action and resource. Every word adds value; no fluff.

    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 simple list operation with one required parameter and no output schema, the description fully covers what the tool does. It names the resource, scope, and implies the parameter. Complete for this complexity level.

    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 coverage is 100% – the schema describes 'profile' as 'Exact profile name or profile ID'. The description adds 'for one profile' which reinforces that it's a single profile. No extra semantic value beyond schema, but baseline is 3 when schema is fully descriptive.

    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 'List all custom rules for one profile' clearly states the action (list), the resource (custom rules), and the scope (for one profile). It distinguishes from siblings like list_profiles (which lists profiles) and create_*_rules (which creates rules). No ambiguity.

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

    Usage Guidelines4/5

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

    The description implies when to use: to fetch custom rules for a specific profile. Given the sibling names (create_*_rules, delete_rules), the context is clear. It doesn't explicitly state when not to use, but the read-only nature is obvious. Could mention that profile must be exact from list_profiles, but that's implicit in schema.

    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 destructiveHint=true and readOnlyHint=false, so the mutation risk is known. The description adds the confirm=true requirement, but does not disclose additional side effects such as whether existing redirect rules are replaced or appended. 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/5

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

    Two short sentences, front-loaded with the core purpose, followed by the prerequisite and confirmation requirement. Every sentence earns its place with no filler.

    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 destructive tool with 6 parameters, the description covers purpose, prerequisite, and confirmation gate. It does not describe the return value or the effect on existing rules, but annotations and schema fill in safety and parameter details. Slightly more outcome detail would make it a 5.

    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 coverage is 67%, and the description adds useful meaning by telling the agent to call list_proxy_locations first, which explains how to obtain proxyLocationId. The phrase 'matching domains' also clarifies the hostnames parameter. It does not add detail for comment or expiresInMinutes, but those are either defaulted or described in the schema.

    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 states 'Redirect matching domains through a Control D proxy location,' which is a specific verb, resource, and mechanism. This clearly distinguishes it from sibling tools like create_block_rules and create_bypass_rules.

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

    Usage Guidelines4/5

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

    It explicitly instructs 'Use list_proxy_locations first,' providing a clear prerequisite for choosing the proxyLocationId. It does not explicitly contrast with alternatives or state when not to use the tool, so it stops short of 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?

    Annotations already cover read-only, idempotent, non-destructive behavior. The description adds meaningful context by revealing that the output includes each profile's pause state, which is a behavioral trait not captured in the schema or annotations. No contradictions.

    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 a single, front-loaded sentence: 'List profiles and their current pause state.' Every word contributes meaning and there is no redundancy or filler.

    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 zero-parameter read-only listing tool, the description is sufficient: it identifies the resource and the notable output field. A richer return-value description might help, but the absence of an output schema and the low complexity keep the need modest.

    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?

    There are zero parameters and schema coverage is 100%, so the schema fully documents the input surface. With no parameters, the description has little to add, and the baseline 4 is appropriate.

    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 uses a specific verb ('List') and resource ('profiles') plus a distinctive detail ('their current pause state') that is not in the sibling tools. It clearly distinguishes this tool from list_profile_rules and list_profile_services.

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

    Usage Guidelines3/5

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

    The description implies the usage: call this to retrieve profiles and their pause states. However, it does not explicitly state when to prefer this over sibling list tools or mention any exclusions, so guidance is only implied rather than explicit.

    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 already indicate a safe, idempotent read operation. The description adds value by explicitly guaranteeing the token is not revealed and by indicating the tool reports account capabilities. This goes beyond the annotations without contradicting them.

    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 a single, front-loaded sentence that communicates action, result, and a key limitation. Every word adds value; there is no redundancy or filler.

    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 this is a simple token-validation/connection-check tool with no inputs and no output schema, the description adequately covers purpose and top-level result. A little more specificity about what 'account capabilities' includes or error behavior on invalid tokens would make it even stronger.

    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?

    There are zero parameters, so the description is not required to explain parameter semantics. The description compensates by clarifying what the tool does with the implicitly provided token and what it returns conceptually.

    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 clearly states a specific action ('validate the token') and a distinct outcome ('report account capabilities'), making it easy to distinguish from sibling tools that list, create, or modify resources. The added 'without revealing the token' also sets a clear boundary.

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

    Usage Guidelines4/5

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

    The description communicates a clear context of use: validate authentication and inspect account capabilities before or while working with other tools. It does not explicitly name alternatives or exclusions, but none are necessary given the unique purpose of a setup/connection check.

    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 already indicate destructiveHint=true and readOnlyHint=false, and the description adds meaningful behavioral context by noting the rules are enabled and that confirm=true is required. This reinforces the mutation/destructive nature without contradicting the 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/5

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

    The description is two sentences, front-loaded with the core action and immediately followed by key usage guidance. There is no filler or redundancy.

    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 mutation risk and destructive annotation, the description provides the essential confirmation requirement and domain-format guidance. It lacks explicit mention of return values or side effects beyond creation, but the schema and annotations cover most other operational details.

    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 coverage is high (80%), so the baseline is 3. The description adds value beyond the schema by explaining hostname semantics ('exact domains first; wildcards are broader') and emphasizing the confirm=true requirement, which enriches parameter understanding.

    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 uses a specific verb+resource construction ('Create enabled custom bypass rules') and the title 'Unblock domains' reinforces the purpose. This clearly differentiates the tool from siblings like create_block_rules and create_redirect_rules.

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

    Usage Guidelines4/5

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

    The description provides clear usage context ('Create enabled custom bypass rules') and practical guidance ('Use exact domains first; wildcards are broader'), plus the confirmation requirement. It does not explicitly name alternatives or state when not to use it, but the scope is clear from the tool name and sibling context.

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

  • Behavior5/5

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

    The description adds behavioral details beyond annotations, such as the impact on live DNS and the confirmation requirement. This enhances transparency about the tool's effects and prerequisites, complementing the destructiveHint annotation.

    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 concise, with two sentences: the first states the core purpose, and the second adds critical constraints. It is front-loaded and efficient, with no unnecessary fluff.

    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?

    The description provides enough context for a destructive, non-idempotent action, including the need for confirmation and the live impact. It lacks details on return values or reversibility, but the absence of an output schema and the presence of a resume tool make it adequate.

    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?

    The schema has partial descriptions for confirm and profile, but the minutes parameter lacks a description. The tool description mentions 'bounded time' but does not explicitly link it to the minutes parameter, so it only partially compensates for the missing schema description.

    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 clearly states the tool pauses all enforcement on a profile for a bounded time, which is specific and distinct from sibling tools like resume_profile. It effectively communicates the primary action.

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

    Usage Guidelines4/5

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

    The description mentions it changes live DNS behavior and requires confirm=true, giving usage context. It implies this is a temporary pause but does not explicitly contrast with resume_profile or other alternatives, though the name and sibling list make it clear.

    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

controld-mcp MCP server

Copy to your README.md:

Score Badge

controld-mcp MCP server

Copy to your README.md:

Latest Blog Posts

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/SwaggyMike/controld-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server