Skip to main content
Glama
asarlashmit

MCP-Connect — Kali Agent MCP v2

by asarlashmit

Server Quality Checklist

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

  • Disambiguation3/5

    Many tools are well-differentiated by domain prefixes (browser_, docker_, git_, etc.), but exec_command and execute_command are nearly identical, causing confusion. Also, some tools like find_entrypoints and find_tests could overlap with search_text, though descriptions help.

    Naming Consistency4/5

    Most tools follow a consistent verb_noun snake_case pattern (e.g., create_directory, list_directory). Minor inconsistencies exist, such as browser_console (noun) instead of get_console, but overall the naming is reasonably predictable.

    Tool Count2/5

    126 tools is excessive for any server. While it aims to cover a broad security toolkit, many tools could be consolidated (e.g., a single run_security_tool with options). The sheer number overwhelms the agent's ability to select appropriately.

    Completeness4/5

    The tool set is extremely comprehensive, covering files, git, Docker, browser automation, process management, services, and a wide range of security scanners. However, there are minor gaps (e.g., no tool for chaining commands or updating scan configurations).

  • Average 1.8/5 across 126 of 126 tools scored. Lowest: 1/5.

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

    • No community issues in the last 6 months
    • 3 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is failing
  • 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

  • Behavior1/5

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

    No description of behavior, side effects, or requirements. With no annotations, the description carries full burden but provides nothing.

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

    Conciseness1/5

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

    Extremely short but due to under-specification, not conciseness. Adds zero informational value.

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

    Completeness1/5

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

    Given 6 parameters, no annotations, and no output schema details, the description is completely inadequate to help an agent select or invoke the tool.

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

    Parameters1/5

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

    Schema coverage is 0% (no parameter descriptions in schema) and the description adds nothing about the 6 parameters.

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

    Purpose1/5

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

    Description is a tautology: 'Kali Agent MCP tool: agent_workspace_create' merely restates the tool name, providing no indication of what the tool does.

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

    Usage Guidelines1/5

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

    No guidance on when to use this tool vs alternatives; no context or exclusions provided.

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

  • Behavior1/5

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

    No annotations are present, and the description does not disclose any behavioral traits such as side effects, output format, or whether it is a read operation. The minimal description fails to inform the agent.

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

    Conciseness1/5

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

    The description is extremely short (3 words) but lacks essential information. It is under-specified, not concisely informative.

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

    Completeness1/5

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

    Given the tool has 3 parameters, no annotations, and a required artifact_id, the description is completely inadequate. It provides none of the necessary context for correct usage.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description adds no meaning to the parameters. The three parameters (artifact_id, offset, max_bytes) are unexplained.

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

    Purpose1/5

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

    The description is a tautology ('Kali Agent MCP tool: artifact_read'), providing no information about what the tool does. It does not specify a verb or resource.

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

    Usage Guidelines1/5

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

    No usage guidance is provided. The description gives no context on when to use this tool versus sibling tools like artifact_info or artifact_list.

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

  • Behavior1/5

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

    No annotations provided, and description lacks behavioral details such as whether loading overwrites current state, requires specific permissions, or has side effects.

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

    Conciseness1/5

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

    Extremely short but fails to convey necessary information; it is under-specified, not genuinely concise.

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

    Completeness1/5

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

    Despite having an output schema, the description gives no context about return values, side effects, or how to interpret the tool's action. Inadequate for a non-trivial operation.

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

    Parameters1/5

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

    Schema coverage is 0%, and the description provides no additional meaning for the parameter 'checkpoint_id' beyond its type string.

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

    Purpose1/5

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

    Description is a tautology: 'Kali Agent MCP tool: checkpoint_load' merely restates the name without indicating what 'load' does (e.g., restore state, read data). No verb or resource clarification.

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

    Usage Guidelines1/5

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

    No guidance on when to use this tool versus sibling tools like checkpoint_save or checkpoint_list. No context for prerequisites or alternatives.

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

  • Behavior1/5

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

    No annotations are provided, and the description does not disclose any behavioral traits such as whether the operation is destructive, permissions required, or side effects. It carries the full burden but adds nothing.

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

    Conciseness1/5

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

    The description is a single phrase that repeats the tool name. It is under-specified rather than concise; every sentence should add value, but none does.

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

    Completeness1/5

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

    Given sibling tools like move_path and delete_path, the description should clarify that copy duplicates a file or path. It also fails to mention the return value despite an output schema existing. The description is incomplete for the tool's complexity.

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

    Parameters1/5

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

    The input schema has three parameters (source, destination, overwrite) with no descriptions, and the description adds no meaning about their purpose or usage. With 0% schema description coverage, the description fails to compensate.

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

    Purpose1/5

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

    The description simply restates the tool name without providing a verb or resource. It says 'Kali Agent MCP tool: copy_path', which is a tautology and gives no indication of what the tool does.

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

    Usage Guidelines1/5

    Does 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 move_path, delete_path, or write_file. The description provides no context for selection.

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

  • Behavior1/5

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

    No annotations are provided, and the description gives no information about the tool's behavior (e.g., read-only vs destructive, security implications, side effects). The description carries the full burden but adds nothing.

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

    Conciseness1/5

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

    While extremely short, the description is under-specified and lacks any structure. It fails to convey essential information, making it not concise but incomplete.

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

    Completeness1/5

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

    Given the tool's likely complexity (framework detection), the complete absence of behavioral context, parameter details, and return value information (output schema exists but is unused) leaves the agent without any useful guidance.

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

    Parameters1/5

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

    The only parameter 'path' has no description in the schema (0% coverage), and the tool description does not explain what the path refers to or how it affects framework detection. No added semantic value beyond the default value.

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

    Purpose1/5

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

    The description merely restates the tool name as 'Kali Agent MCP tool: detect_frameworks', providing no indication of what the tool actually does or what detecting frameworks means. This is a tautology and fails to clarify the purpose.

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

    Usage Guidelines1/5

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

    The description offers no guidance on when to use this tool versus alternatives like detect_project or find_entrypoints. There is no mention of context, prerequisites, or exclusions.

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

  • Behavior1/5

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

    With no annotations present, the description carries full responsibility for disclosing behavioral traits. It does not mention whether the tool is read-only, destructive, or has any side effects, leaving the agent uninformed.

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

    Conciseness1/5

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

    While the description is short, it is a tautology with no informative content. It wastes the opportunity to provide useful information, making it poorly structured for agent assistance.

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

    Completeness1/5

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

    Given the tool's output schema (not shown), the description does not explain return values or when to use it. It is completely inadequate for an agent to understand its functionality.

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

    Parameters1/5

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

    The input schema has 0% description coverage. The description adds no meaning to the 'include_environment_keys' parameter, failing to compensate for the lack of schema details.

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

    Purpose1/5

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

    The description 'Kali Agent MCP tool: environment_info' is a tautology, merely restating the tool name without indicating its action or resource. It fails to specify what the tool does.

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

    Usage Guidelines1/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 alternatives like 'system_info' or 'server_capabilities'. The description offers no 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.

  • Behavior1/5

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

    With no annotations and a minimal description, there is no disclosure of behavioral traits such as destructiveness, safety, or side effects. The agent cannot infer the tool's impact.

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

    Conciseness1/5

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

    The description is extremely short but fails to be concise in a meaningful way. It omits all useful information, making it practically useless.

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

    Completeness1/5

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

    Given the tool is likely destructive (cleanup), the description provides no context on what is cleaned, retention policies, or output. Completely inadequate for a tool with no annotations and an output schema.

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

    Parameters1/5

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

    The single parameter 'remove_completed_older_than_seconds' has a default but no description in the schema or description. 0% schema coverage and no added meaning.

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

    Purpose1/5

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

    The description 'Kali Agent MCP tool: job_cleanup' is a tautology, repeating the tool name without specifying what the tool does. It fails to communicate the action of cleaning up jobs.

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

    Usage Guidelines1/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 alternatives like job_cancel or job_list. The description lacks context for appropriate invocation.

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

  • Behavior1/5

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

    No behavioral traits are disclosed. The description gives no insight into side effects, permissions, rate limits, or return value characteristics. With no annotations available, the description fails to provide any transparency.

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

    Conciseness1/5

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

    While extremely concise, the description is not useful. It sacrifices informativeness for brevity, providing no actionable content for an AI agent.

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

    Completeness1/5

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

    Given the tool's simplicity (one optional parameter, output schema exists), the description is wholly incomplete. It lacks a basic statement of purpose and any details about the output or usage context.

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

    Parameters1/5

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

    The description does not mention the 'limit' parameter, despite 0% schema description coverage. It adds no meaning beyond the raw schema, failing to explain how the parameter affects the tool's behavior.

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

    Purpose1/5

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

    The description is a tautology: 'Kali Agent MCP tool: job_list'. It does not state what the tool does (e.g., list jobs), nor does it distinguish it from sibling tools like job_start or job_status.

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

    Usage Guidelines1/5

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

    No usage guidance is provided. There is no information on when to use this tool versus other job-related tools, such as when to list jobs versus check status or wait for completion.

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

  • Behavior1/5

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

    No annotations are provided, and the description adds no behavioral details. It does not disclose whether the tool reads or modifies, nor any permissions, side effects, or limitations.

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

    Conciseness1/5

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

    While extremely short, this is not conciseness but severe under-specification. The description omits essential details that an agent needs to use the tool correctly.

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

    Completeness1/5

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

    Given the tool has 5 parameters and an output schema, the description provides none of the contextual information needed to understand behavior, return values, or how parameters interact. It is completely inadequate.

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

    Parameters1/5

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

    With 0% schema description coverage and no param explanations in the description, the agent has no understanding of 'path', 'limit', 'max_depth', 'recursive', or 'include_hidden'. The description adds no value beyond the schema structure.

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

    Purpose1/5

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

    The description simply states 'Kali Agent MCP tool: list_directory', which is a tautology. It does not specify a verb, resource, or scope, and does not distinguish from sibling tools like 'find_files' or 'file_stat'.

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

    Usage Guidelines1/5

    Does 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 such as 'find_files' or 'read_file'. No context, prerequisites, or exclusions provided.

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

  • Behavior1/5

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

    No annotations provided, and the description fails to disclose behavioral traits such as whether the tool is read-only, destructive, or requires specific permissions. It offers no insight into side effects or constraints.

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

    Conciseness1/5

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

    Extremely short but due to under-specification, not conciseness. The single sentence adds no value and does not earn its place.

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

    Completeness1/5

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

    Despite having 3 parameters and an output schema, the description gives no hint about return values or output structure. It is completely inadequate for a tool with no annotations.

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

    Parameters1/5

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

    With 0% schema description coverage, the description must explain parameter meaning, but it provides none. Parameters kind, limit, and status are unexplained (e.g., acceptable values for kind, effect of status).

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

    Purpose1/5

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

    Description is 'Kali Agent MCP tool: port_list', which merely restates the name without indicating what the tool does (e.g., list ports). No verb or resource is specified, and it does not differentiate from sibling tools like nmap_scan or dirb_scan.

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

    Usage Guidelines1/5

    Does 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. There is no mention of prerequisites, context, or exclusions, leaving the agent without decision-making support.

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

  • Behavior1/5

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

    With no annotations provided, the description bears the full burden of disclosing behavior. It says nothing about read/write nature, side effects, or any constraints, leaving the agent completely uninformed.

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

    Conciseness1/5

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

    The description is a single sentence that adds no information beyond the tool name. It is under-specified rather than concise; every sentence should earn its place, and this one does not.

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

    Completeness1/5

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

    Despite having an output schema, the description provides no context about what the tool returns or how it behaves. For a tool with two parameters and no annotations, the description is grossly inadequate.

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

    Parameters1/5

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

    Schema description coverage is 0%. The description adds no meaning to the parameters 'path' and 'max_files'. Their purposes are entirely undocumented.

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

    Purpose1/5

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

    The description is a tautology: 'Kali Agent MCP tool: repo_map' merely restates the name without any verb, resource, or action. It does not convey what the tool does, and with siblings like dependency_map and repo_tree, there is no differentiation.

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

    Usage Guidelines1/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 repo_map vs. alternatives such as dependency_map or repo_tree. The description lacks any context for appropriate usage.

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

  • Behavior1/5

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

    No annotations exist, and the description lacks any behavioral details such as side effects, authorization needs, or return characteristics. The tool's behavior is completely opaque.

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

    Conciseness1/5

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

    While short, the description fails the 'every sentence earns its place' test. It provides zero actionable information, making it under-specified rather than concise.

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

    Completeness1/5

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

    Given the presence of an output schema and a single parameter, the description is woefully incomplete. It does not explain the tool's purpose, parameters, or return value.

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

    Parameters1/5

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

    The input schema covers 0% of parameters with descriptions, and the tool description adds no meaning to the 'path' parameter. The agent has no clue what the parameter expects.

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

    Purpose1/5

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

    The description 'Kali Agent MCP tool: repo_summary' is a tautology that merely restates the tool name without indicating any specific verb or resource. It fails to convey what the tool actually does.

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

    Usage Guidelines1/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. With many sibling tools, this omission severely hampers agent selection.

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

  • Behavior1/5

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

    No annotations are provided, and the description offers no behavioral traits. It does not disclose whether closing a session destroys data, requires specific permissions, or has side effects.

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

    Conciseness1/5

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

    The description is extremely short but does not earn its place—it only repeats the tool name. It fails to inform the agent.

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

    Completeness1/5

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

    Given the lack of annotations and schema descriptions, the description provides no context about behavior, parameters, or output. It is completely inadequate for an agent to use this tool correctly.

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

    Parameters1/5

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

    The single required parameter 'session_id' has no description in the schema (0% coverage). The tool description does not explain what session_id is, expected format, or how it is used.

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

    Purpose1/5

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

    The description is 'Kali Agent MCP tool: session_close', which is a tautology. It does not state what the tool does (e.g., close a session and its effects). It does not distinguish from siblings like session_create or session_list.

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

    Usage Guidelines1/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 alternatives. No context about prerequisites or side effects.

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

  • Behavior1/5

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

    No annotations are present, and the description does not disclose any behavioral traits such as side effects, permissions, or return behavior. It adds no transparency.

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

    Conciseness1/5

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

    The description is extremely short but under-specified; it does not earn its place by providing useful information. It is effectively a placeholder.

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

    Completeness1/5

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

    Given the complexity of a session resizing tool with three parameters and no schema descriptions, the description is completely inadequate. It lacks essential details for an agent to use the tool correctly.

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

    Parameters1/5

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

    The input schema has 0% description coverage, and the tool description does not add any meaning to the parameters. The parameter names ('cols', 'rows', 'session_id') provide minimal hints, but the description fails to explain their purpose or usage.

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

    Purpose1/5

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

    The description is a tautology, repeating the tool name without any verb or resource. It fails to state what the tool does, making it impossible for an agent to understand its purpose.

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

    Usage Guidelines1/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 alternatives like session_create or session_list. There is no context for usage conditions.

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

  • Behavior1/5

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

    No annotations are provided, and the description gives no behavioral details such as side effects, permissions, or data handling. The name implies writing, but no confirmation or further context is given.

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

    Conciseness1/5

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

    The description is extremely short but achieves this through under-specification rather than conciseness. Every sentence should earn its place; this single phrase is essentially vacuous.

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

    Completeness1/5

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

    Despite having 4 parameters and an output schema, the description provides no information about return values or tool behavior. It fails to meet even minimal completeness for a tool of this complexity.

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

    Parameters1/5

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

    With 0% schema description coverage and no parameter info in the description, the tool provides no added meaning for the four parameters (text, literal, session_id, press_enter). The description does not compensate for the missing schema descriptions.

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

    Purpose1/5

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

    The description 'Kali Agent MCP tool: session_write' is a tautology that merely restates the tool name without indicating what the tool actually does. There is no verb or resource to define its purpose.

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

    Usage Guidelines1/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 like session_read or session_create. It fails to define appropriate context or exclusions.

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

  • Behavior1/5

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

    Without annotations, the description must disclose behavior such as side effects (e.g., file creation, overwriting) or output format. It provides none, leaving the agent to guess.

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

    Conciseness2/5

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

    The description is extremely short but fails to be informative. It is concise in length but not in value, earning a low score because it omits essential content.

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

    Completeness1/5

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

    Given the output schema exists, the description could be brief, but it still needs to convey the tool's primary action. It does not, making the description incomplete for effective agent use.

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

    Parameters1/5

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

    Schema description coverage is 0%, so the description must explain parameters. It does not mention that 'content' is the text to store or that 'name' defaults to 'artifact.txt'. The agent has no parameter guidance.

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

    Purpose1/5

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

    The description simply repeats the tool name without stating its purpose. It does not specify that the tool creates a text artifact, leaving the agent with no actionable understanding.

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

    Usage Guidelines1/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 any of the many sibling tools (e.g., write_file, artifact_register). The agent receives no context for decision-making.

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

  • Behavior1/5

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

    The description discloses no behavioral traits. Since no annotations are provided, the description bears full responsibility but says nothing about whether deletion is permanent, what side effects occur, or any required permissions.

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

    Conciseness2/5

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

    While the description is short, it is not concise because it conveys no useful information. It front-loads nothing meaningful.

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

    Completeness1/5

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

    Despite having only one parameter and an output schema, the description is entirely inadequate. It fails to explain the tool's purpose, usage, or return value, leaving the agent without guidance.

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

    Parameters1/5

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

    With 0% schema description coverage, the description must explain the artifact_id parameter. It does not, leaving the agent to guess what an 'artifact' is or what format the ID takes.

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

    Purpose1/5

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

    The description 'Kali Agent MCP tool: artifact_delete' is a tautology that merely restates the tool name. It does not specify what the tool does (e.g., deletes an artifact) or provide any action verb or resource.

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

    Usage Guidelines1/5

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

    No guidance is given on when to use this tool versus sibling tools like artifact_read, artifact_list, or artifact_register. There is no mention of prerequisites or alternatives.

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

  • Behavior1/5

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

    No annotations are provided, and the description offers no behavioral details. It fails to disclose whether the tool is read-only, what side effects exist, or any access requirements.

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

    Conciseness2/5

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

    Extremely short but achieves no useful communication. It is under-specified rather than efficiently informative.

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

    Completeness1/5

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

    Given the presence of an output schema and sibling tools, the description is completely inadequate. It does not help the agent understand what the tool does or how to use it successfully.

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

    Parameters1/5

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

    The schema has 0% description coverage, and the description does not explain the purpose of artifact_id. The agent must infer it from the parameter name alone.

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

    Purpose1/5

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

    Description is 'Kali Agent MCP tool: artifact_info', which merely restates the name. It does not specify what information is returned or how it differs from sibling tools like artifact_read or artifact_list.

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

    Usage Guidelines1/5

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

    No guidance on when to use artifact_info versus alternatives such as artifact_read, artifact_list, or artifact_delete. The description provides no context for decision-making.

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

  • Behavior1/5

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

    With no annotations, the description must disclose behavior, but it only names the tool. No mention of side effects, permissions, rate limits, or whether it reads or mutates data. The agent learns nothing beyond the name.

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

    Conciseness2/5

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

    The description is extremely short, which can be considered concise, but it sacrifices all informative content. Under-specification for a tool with one parameter and a non-obvious purpose.

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

    Completeness1/5

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

    Given the complexity of sibling tools and the presence of an output schema, the description fails to clarify what artifacts are listed, the scope, or any filtering capabilities. It is insufficient for an agent to decide to use this tool.

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

    Parameters1/5

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

    Schema coverage is 0%, and the description adds no explanation for the 'limit' parameter. The schema provides a default of 200, but without context, the agent cannot infer its meaning or appropriate use.

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

    Purpose1/5

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

    The description is a tautology ('Kali Agent MCP tool: artifact_list') and does not specify any verb or resource purpose. It provides no indication of what action the tool performs or what artifact_list returns.

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

    Usage Guidelines1/5

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

    No guidance is given on when to use this tool versus siblings like artifact_info, artifact_read, or artifact_delete. The description lacks any context for appropriate usage scenarios.

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

  • Behavior1/5

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

    With no annotations, the description must disclose behavioral traits. It does not mention side effects, required permissions, or whether the operation is destructive. The word 'register' implies a write action, but no confirmation is given.

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

    Conciseness2/5

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

    The description is extremely short, but it is not concise in a helpful way—it omits essential information. Under-specification cannot be equated with conciseness.

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

    Completeness1/5

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

    Given the tool's 3 parameters, no schema descriptions, and the existence of related artifact tools, the description is completely inadequate. It fails to provide enough context for appropriate use.

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

    Parameters1/5

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

    Schema coverage is 0%, and the description adds no meaning to the parameters (source, move, name). Their roles remain unclear.

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

    Purpose1/5

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

    The description is 'Kali Agent MCP tool: artifact_register', which is tautological and gives no indication of what the tool does. It fails to specify the action (e.g., create, register an artifact from a source) and does not distinguish it from siblings like artifact_create_text.

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

    Usage Guidelines1/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 alternatives. The description lacks any context or conditions for invocation.

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

  • Behavior1/5

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

    With no annotations provided, the description must disclose behavioral traits like destructiveness, side effects, or authorization needs. It does none of this. The agent cannot infer whether checkpoint_save is safe, irreversible, or requires specific permissions.

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

    Conciseness2/5

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

    The description is extremely short (one sentence), but it sacrifices informativeness for brevity. While it is not verbose, it fails to earn its place as a useful description. Minimal viable would require more substance.

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

    Completeness1/5

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

    Despite the presence of an output schema and nested objects, the description provides zero context about what checkpoint_save does, what it returns, or how it integrates with other tools. The agent has no way to understand the tool's purpose or correct usage.

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

    Parameters1/5

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

    Schema description coverage is 0%, meaning no parameter descriptions exist. The description adds no meaning to parameters such as 'data' (a required object with additionalProperties: true), 'name', 'repo', or 'task'. The agent cannot understand what values to provide.

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

    Purpose1/5

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

    The description 'Kali Agent MCP tool: checkpoint_save' is a tautology that restates the tool name without indicating what the tool does. It fails to specify the action (save a checkpoint) or the resource. It does not distinguish from sibling tools checkpoint_list and checkpoint_load.

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

    Usage Guidelines1/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 alternatives. There is no mention of scenarios, prerequisites, or exclusions. The description offers no contextual usage advice.

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

  • Behavior1/5

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

    No annotations provided, and the description does not disclose behavioral traits such as whether it overwrites existing directories, default behavior of parents parameter, or side effects. The description fails to compensate for missing annotations.

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

    Conciseness2/5

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

    The description is very short (6 words) but lacks substantive content. It is under-specified and fails to convey necessary information; conciseness without clarity is not valuable.

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

    Completeness1/5

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

    Despite simple input schema and output schema existing, the description provides no context about the tool's operation, return values, or safety profile. It is entirely insufficient for an agent to use correctly.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description does not explain any parameters (path required, parents boolean with default true). The description adds no meaning beyond the schema.

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

    Purpose1/5

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

    Description is a tautology: it only restates the tool name and says it's a 'Kali Agent MCP tool' without specifying the action (creating a directory). No verb or resource is clarified.

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

    Usage Guidelines1/5

    Does 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 write_file or move_path. No context about prerequisites 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.

  • Behavior1/5

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

    With no annotations, the description must disclose behavioral traits, but it fails to do so. There is no information about side effects, permissions, or whether the tool is read-only or modifying.

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

    Conciseness2/5

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

    The description is extremely short, but this is under-specification rather than conciseness. It does not earn its place because it provides no useful information.

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

    Completeness1/5

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

    Given the lack of schema description coverage and annotations, the description is completely inadequate. It does not convey the tool's purpose or behavior, leaving the agent without necessary context.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description adds no meaning to the 'path' parameter. It does not explain what the parameter represents or how to use it.

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

    Purpose1/5

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

    The description is a tautology, merely restating the tool's name without specifying what it does. It does not indicate the verb or resource, making it impossible to distinguish from siblings like 'repo_map' or 'detect_frameworks'.

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

    Usage Guidelines1/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 alternatives. There is no mention of context or scenarios where this tool is appropriate.

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

  • Behavior1/5

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

    No annotations provided, and the description discloses no behavioral traits (e.g., read-only, network usage, side effects).

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

    Conciseness2/5

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

    Extremely brief but at the expense of necessary information; not a model of conciseness.

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

    Completeness1/5

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

    For a detection tool that likely inspects files or projects, no details on output, scope, or prerequisites. Output schema exists but is not leveraged.

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

    Parameters1/5

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

    Schema coverage is 0%, and the description does not explain the 'path' parameter, its meaning, or constraints beyond the default.

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

    Purpose1/5

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

    The description is a tautology, merely restating the tool name and framework. It does not specify what is detected or how.

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

    Usage Guidelines1/5

    Does 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 detect_frameworks. No context provided.

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

  • Behavior1/5

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

    With no annotations, the description carries full burden but says nothing about behavior (e.g., read vs write, required permissions, side effects, performance). It offers zero transparency.

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

    Conciseness2/5

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

    Extremely concise but at the expense of all substance. While brief, it fails to provide any informative content, earning a 2 for minimal waste but severe inadequacy.

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

    Completeness1/5

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

    Given the presence of an output schema and two parameters, the description is completely incomplete. It does not explain return values, parameter behaviors, or the tool's overall purpose beyond the name.

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

    Parameters1/5

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

    Schema coverage is 0% and description adds no meaning to the two parameters ('path' and 'limit'). No explanations of what they control or expected formats.

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

    Purpose1/5

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

    Description is a tautology: 'Kali Agent MCP tool: find_entrypoints' merely restates the tool name without any verb or resource. It fails to specify what 'find_entrypoints' does, such as scanning for starting points in a codebase or penetration testing.

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

    Usage Guidelines1/5

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

    No guidelines on when to use this tool versus siblings. For example, compared to 'find_files' or 'search_text', there is no distinction or context provided.

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

  • Behavior1/5

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

    No annotations are provided, so the description must fully disclose behavioral traits. However, it says nothing about side effects, resource usage, permissions, or whether it is a read-only operation. The agent has no clues about what happens when the tool is invoked.

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

    Conciseness2/5

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

    The description is concise (single sentence) but at the expense of all informativeness. It is under-specified, not efficiently informative.

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

    Completeness1/5

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

    Despite having an output schema (not shown) and sibling tools, the description is completely inadequate. It does not convey what the tool returns, how to interpret results, or how it complements other tools. The agent would be blind to its functionality.

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

    Parameters1/5

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

    Schema coverage is 0%, meaning neither the schema nor the description explains the parameters. 'path' and 'limit' are undefined in context; the description does not clarify what path is being searched (e.g., file system path, test suite path) or what the limit applies to.

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

    Purpose1/5

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

    The description is a tautology: 'Kali Agent MCP tool: find_tests' merely restates the name without specifying what the tool does (e.g., locate test files, list test cases, discover test frameworks). It does not distinguish it from related siblings like 'run_tests' or 'find_files'.

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

    Usage Guidelines1/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 alternatives (e.g., run_tests, find_files, lint_project). There is no indication of prerequisites, typical workflows, or exclusions.

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

  • Behavior1/5

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

    No annotations provided, so description carries full burden. Description fails to disclose any behavioral traits (e.g., file restoration, destructive nature, permissions needed) beyond execution timing.

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

    Conciseness2/5

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

    Description is short but misdirected, focusing on irrelevant execution timing instead of core purpose. Wastes text on boilerplate that should be in a shared guideline, not per-tool.

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

    Completeness1/5

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

    Given 9 parameters, 0% schema coverage, and a clear git context, the description is extremely incomplete. No output schema explanation, no usage examples, no prerequisites.

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

    Parameters1/5

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

    Schema description coverage is 0%. Description does not explain any parameters (path, file_path, source, staged), only mentions timing parameters that are generic across tools.

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

    Purpose1/5

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

    The description does not state what the tool does; it only discusses execution timing parameters. The name 'git_restore' suggests git file restoration, but the description provides no verb+resource or purpose.

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

    Usage Guidelines1/5

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

    No guidance on when to use this tool versus sibling tools like git_checkout, git_reset, or git_add. No context on alternatives or appropriate use cases.

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

  • Behavior1/5

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

    With no annotations and no description of behavioral traits (e.g., whether cancellation is immediate, effects of force parameter), the agent has no insight into the tool's behavior.

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

    Conciseness2/5

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

    The description is extremely short but fails to provide any useful information, making it under-specified rather than concise.

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

    Completeness1/5

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

    Given the tool has an output schema and two parameters, the description is completely inadequate. It does not explain return values, side effects, or prerequisites.

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

    Parameters1/5

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

    The schema has 0% description coverage, and the tool description adds no meaning to the parameters (job_id, force). The agent must guess their purpose.

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

    Purpose1/5

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

    The description 'Kali Agent MCP tool: job_cancel' is a tautology, restating the tool name without specifying the verb or resource. It does not clarify what cancelling a job entails.

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

    Usage Guidelines1/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 sibling tools like job_start, job_status, or job_wait. The description lacks any usage context.

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

  • Behavior1/5

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

    With no annotations provided, the description must disclose behavioral traits, but it does not. It fails to indicate whether the tool is read-only, destructive, or requires specific permissions, leaving the agent with no insight into side effects or prerequisites.

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

    Conciseness2/5

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

    The description is extremely short but fails to provide necessary information. It is under-specified rather than concise, as it does not earn its place with useful content.

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

    Completeness1/5

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

    Given the tool's complexity (5 parameters, sibling tools, no annotations), the description is woefully incomplete. It does not explain what the output schema contains, nor does it compensate for missing annotations or parameter documentation.

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

    Parameters1/5

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

    Schema description coverage is 0%, meaning the description adds no meaning to the five parameters. The schema lists parameters like job_id, offset, stream, max_bytes, and tail_lines, but the description does not explain their purpose or expected values.

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

    Purpose1/5

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

    The description 'Kali Agent MCP tool: job_logs' is a tautology that merely repeats the tool name. It fails to state that the tool retrieves logs for a specific job, and does not differentiate it from sibling tools like job_status or job_list.

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

    Usage Guidelines1/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 alternatives such as job_status, job_list, or job_wait. The description offers no context for appropriate usage.

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

  • Behavior1/5

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

    With no annotations, the description must disclose behavior. It fails to mention that this tool likely retrieves the status of a job, any side effects, or return values. The output schema exists but is not referenced.

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

    Conciseness2/5

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

    The description is extremely short (one phrase), but this is due to under-specification rather than conciseness. It lacks essential information, making it ineffective.

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

    Completeness1/5

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

    Given the existence of multiple job-related sibling tools and the presence of an output schema, the description fails to provide any context or differentiation. It is completely inadequate for a tool with one required parameter.

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

    Parameters1/5

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

    The input schema has 0% description coverage for the required parameter 'job_id', and the description adds no meaning, format, or example for this parameter.

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

    Purpose1/5

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

    The description only repeats the tool name ('Kali Agent MCP tool: job_status'), lacking any verb or resource that clarifies what the tool does. It is a tautology and provides no insight into its functionality.

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

    Usage Guidelines1/5

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

    No guidance is given on when to use this tool versus sibling tools like job_list, job_wait, or job_logs. The description offers no context or alternatives.

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

  • Behavior1/5

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

    No annotations are provided, and the description does not disclose any behavioral traits. Critical information such as overwrite behavior, filesystem scope, or error handling is missing.

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

    Conciseness2/5

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

    The description is extremely concise but at the expense of meaning. It is under-specified and fails to convey anything useful, making it ineffective despite its brevity.

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

    Completeness1/5

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

    Given the tool has 3 parameters, an output schema, and no annotations, the description is completely inadequate. It provides no context for usage, behavior, or parameter semantics.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description does not mention any parameters. It adds no value beyond the raw schema, which defines source and destination as required strings and overwrite as an optional boolean.

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

    Purpose1/5

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

    The description is a tautology, simply restating the tool name 'move_path' without any verb or resource. It fails to indicate whether the tool moves files, directories, or other paths, or any specific action.

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

    Usage Guidelines1/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 or when alternatives (e.g., copy_path, delete_path) are preferable. The description is entirely absent in this regard.

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

  • Behavior1/5

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

    No annotations are present, and the description gives no behavioral details such as whether the tool queries a remote host, requires specific permissions, or has side effects. The agent has no insight into safety or operation.

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

    Conciseness2/5

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

    The description is extremely short but at the cost of being uninformative. Conciseness should not sacrifice necessary detail; here it is under-specified rather than efficiently clear.

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

    Completeness1/5

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

    Despite having an output schema, the description provides no context about the tool's I/O behavior. For a simple tool, something as basic as 'Given a port, returns the owning process or user' is missing. It is completely incomplete.

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

    Parameters1/5

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

    The input schema has two parameters with zero description coverage. The description adds no meaning about what 'host' and 'port' represent or how they are used. The agent must guess their semantics.

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

    Purpose1/5

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

    The description is merely a label 'Kali Agent MCP tool: port_owner' which restates the name without specifying a verb or clarifying what 'port_owner' actually does. It fails to distinguish from similar siblings like 'port_list'.

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

    Usage Guidelines1/5

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

    No usage context is provided. There is no indication of when to use this tool or when to avoid it, and no alternatives (e.g., 'port_list') are mentioned.

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

  • Behavior1/5

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

    No annotations are present, so the description must fully disclose behavior. It does not mention that the tool kills processes, its destructive nature, or any requirements (e.g., permissions). The description is completely silent on behavioral traits.

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

    Conciseness2/5

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

    The description is very short, but it is under-specified rather than concise. It wastes the opportunity to provide useful information. A single sentence that adds no value scores low.

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

    Completeness1/5

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

    Given 3 parameters (1 required), no annotations, no parameter descriptions, and an output schema that is not explained, the description is completely inadequate for an AI agent to understand the tool's purpose and usage correctly.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description adds no information about the parameters (pid, tree, force). The schema provides names and types but no explanations, and the description fails to compensate.

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

    Purpose1/5

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

    The description 'Kali Agent MCP tool: process_kill' merely repeats the tool name and context, providing no verb or resource to indicate what the tool does. It is a tautology that does not distinguish the tool from siblings.

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

    Usage Guidelines1/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, alternatives, or prerequisites. The description lacks any usage context.

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

  • Behavior1/5

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

    No annotations are provided, and the description says nothing about behavior—no indication that it is a read-only operation, no mention of side effects, performance implications, or authentication requirements.

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

    Conciseness2/5

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

    Extremely concise (one sentence), but it is under-specification rather than efficient communication. It sacrifices all informative content for brevity.

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

    Completeness1/5

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

    Despite having an output schema, the description lacks fundamental purpose and parameter info. With a complex sibling context (many process tools), it is severely incomplete.

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

    Parameters1/5

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

    Schema has 2 parameters (limit, query) with 0% description coverage. The description does not mention or explain these parameters, leaving the agent without any guidance on how to use them effectively.

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

    Purpose1/5

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

    Description is 'Kali Agent MCP tool: process_list' which merely restates the tool name. It fails to specify that the tool lists processes or what filtering capabilities exist. A reader learns nothing beyond the obvious.

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

    Usage Guidelines1/5

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

    No guidance on when to use process_list versus sibling tools like process_info, process_tree, or process_kill. An agent cannot infer the appropriate context for this tool.

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

  • Behavior1/5

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

    With no annotations, the description must disclose behavioral traits. It fails to mention read-only nature, permissions, or side effects. The description is silent on behavior.

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

    Conciseness2/5

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

    The description is extremely concise (one phrase) but under-specified. It does not provide necessary details, prioritizing brevity over informativeness.

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

    Completeness1/5

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

    Given that the tool has 3 parameters and an output schema, the description is completely inadequate. It provides no explanation of inputs, output, or how to use the tool effectively.

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

    Parameters1/5

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

    The input schema has 3 parameters with 0% description coverage. The description does not explain 'path', 'offset', or 'max_bytes' at all, forcing reliance on schema type information alone.

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

    Purpose1/5

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

    The description 'Kali Agent MCP tool: read_file' is a tautology, restating the tool's name without specifying what it does. It adds no information beyond the name itself.

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

    Usage Guidelines1/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 alternatives like 'read_file_range' or other file tools. The description lacks any context for selection.

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

  • Behavior1/5

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

    No annotations provided, and the description fails to disclose any behavioral traits (e.g., error handling, encoding assumptions, performance implications). The description is entirely uninformative.

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

    Conciseness2/5

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

    The description is extremely concise but at the expense of useful information. It is under-specified, not concise in a helpful sense.

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

    Completeness1/5

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

    Given the complexity (3 parameters, output schema present) and existence of a sibling tool 'read_file', the description fails to explain that this tool reads a specific line range. It is incomplete and does not help the agent distinguish usage.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description adds no meaning to the three parameters (path, start_line, end_line). The parameter names are self-explanatory but no additional context is provided.

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

    Purpose1/5

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

    Description is a tautology: 'Kali Agent MCP tool: read_file_range' adds no information beyond the tool name. It does not state the action (reading a file range) or the resource (file).

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

    Usage Guidelines1/5

    Does 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 read_file. The description does not indicate that this tool is for reading a portion of a file, leaving the agent without contextual decision-making.

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

  • Behavior1/5

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

    No annotations provided, so description must fully disclose behavior. Description is empty of any behavioral information (read-only, destructive, permissions, side effects).

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

    Conciseness2/5

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

    Single short sentence is concise but excessively under-specified; it fails to convey any useful information. Conciseness without content is not effective.

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

    Completeness1/5

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

    Given 2 parameters, no annotations, no schema descriptions, and an output schema (not shown), the description is severely incomplete. Agent cannot infer purpose, inputs, or outputs.

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

    Parameters1/5

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

    Schema has 2 parameters (path, filename) with defaults and 0% description coverage in schema. Description adds zero meaning about what these parameters control or how they relate to the tool's function.

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

    Purpose1/5

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

    Description is a tautology: 'Kali Agent MCP tool: repo_instructions' merely restates the name without indicating what the tool does—e.g., read, write, or execute instructions. No verb or resource context is provided.

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

    Usage Guidelines1/5

    Does 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 read_file, repo_summary, or other repository-related tools. Lacks explicit context or exclusion criteria.

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

  • Behavior1/5

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

    The description offers no behavioral details beyond the name. No annotations are provided, so the agent learns nothing about side effects, permissions, or lifecycle.

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

    Conciseness2/5

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

    The description is short but lacks substantive information. Conciseness without utility is not valuable; there is no structure or front-loading of key details.

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

    Completeness1/5

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

    Given 5 parameters and no annotations or output schema explanation, the description is severely incomplete. It fails to cover what the tool does, how to use it, or what to expect.

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

    Parameters1/5

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

    With 0% schema description coverage, the description must explain parameters, but it does not. The schema lists 5 optional parameters (cwd, cols, name, rows, command) with no semantics.

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

    Purpose1/5

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

    The description merely repeats the tool name with a prefix ('Kali Agent MCP tool: session_create'), providing no indication of what a session is or what creating one entails. It is a tautology.

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

    Usage Guidelines1/5

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

    No guidance is given on when to use this tool versus siblings like session_list or session_read. There is no context about prerequisites or alternatives.

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

  • Behavior1/5

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

    With no annotations and a minimal description, the tool's behavioral traits are entirely undisclosed. Whether the interrupt is destructive, requires permissions, or has side effects is unknown.

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

    Conciseness2/5

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

    The description is very short (one sentence), but it lacks useful information. Brevity without substance is not conciseness; it is under-specification.

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

    Completeness1/5

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

    Given a single required parameter and no annotations, the description is profoundly incomplete. It does not explain the return value, side effects, or any other contextual details that an agent would need to use the tool correctly.

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

    Parameters1/5

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

    The input schema has 0% description coverage, and the tool description adds no meaning to the 'session_id' parameter. The parameter is self-explanatory, but the description fails to provide any additional context or constraints.

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

    Purpose1/5

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

    The description 'Kali Agent MCP tool: session_interrupt' is a tautology that merely repeats the tool name. It does not specify what interrupting a session entails or how it differs from sibling tools like session_close or session_list.

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

    Usage Guidelines1/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 session_interrupt versus alternatives such as session_close or session_write. The description lacks any contextual cues for appropriate usage.

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

  • Behavior1/5

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

    With no annotations, the description must disclose behavioral traits, but it provides none. The agent learns nothing about side effects, permissions, or whether the tool is destructive or read-only.

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

    Conciseness2/5

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

    The description is extremely short but lacks substance. This is under-specification, not conciseness. Every sentence should add value; here it adds none.

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

    Completeness1/5

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

    Despite having an output schema, the description does not mention what the tool returns. It also fails to explain any nuances of the 5 parameters, leaving the agent with insufficient information for correct invocation.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description adds no meaning to parameters like title, objective, or steps. The agent cannot infer what values are expected or how they affect the tool's behavior.

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

    Purpose1/5

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

    The description 'Kali Agent MCP tool: task_create' is a tautology, simply restating the tool name. It does not indicate what the tool does (e.g., create a task, its scope), nor does it distinguish it from siblings like task_update or task_list.

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

    Usage Guidelines1/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, its prerequisites, or alternatives. The agent has no context to decide between task_create and other similar tools.

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

  • Behavior1/5

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

    No annotations are provided, so the description must fully disclose behavior, but it says nothing about side effects, authorization, or operational traits. It simply repeats the tool name.

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

    Conciseness2/5

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

    The description is extremely short, which could be concise, but it lacks any substance. It does not earn its place as it provides no useful information.

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

    Completeness1/5

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

    Given the complexity of listing tasks with optional filtering, this description is completely inadequate. It fails to mention return values, pagination, or behavior, despite having an output schema.

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

    Parameters1/5

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

    The input schema has 2 parameters with 0% description coverage. The description adds no meaning beyond the schema, failing to explain the purpose or format of 'limit' and 'status'.

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

    Purpose1/5

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

    The description is a tautology: 'Kali Agent MCP tool: task_list' merely restates the name without indicating any specific verb or resource. It provides no actionable information about what the tool does.

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

    Usage Guidelines1/5

    Does 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. The sibling tools include many list-type operations, but the description offers no differentiation or context.

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

  • Behavior1/5

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

    No annotations are provided, so the description must fully explain behavior. It does not state whether the tool is read-only or modifies state, nor does it disclose any side effects, authentication needs, or API nuances. The agent cannot predict the tool's behavior.

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

    Conciseness1/5

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

    The description is extremely short but not concise; it omits essential information. Every sentence should earn its place, but this single phrase fails to provide any useful details.

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

    Completeness1/5

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

    With only one parameter, no annotations, and an omitted output schema, the description leaves the agent completely uninformed. It does not fulfill the minimum requirements for a useful tool definition.

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

    Parameters1/5

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

    The input schema has one parameter (limit) with no description, and the tool description does not explain its meaning. Schema coverage is 0%, and the description adds no semantic value.

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

    Purpose1/5

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

    The description 'Kali Agent MCP tool: patch_history' merely repeats the tool name with a prefix, providing no verb or resource. It fails to indicate what the tool does beyond what the name implies, which is a tautology.

    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 given on when to use this tool versus siblings like apply_patch or revert_patch. The description lacks any context for appropriate usage, though it is not actively misleading.

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

  • Behavior1/5

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

    No annotations are present, so the description carries the full burden. It fails to disclose whether the tool overwrites, creates backups, or requires permissions. Behavior is completely opaque.

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

    Conciseness1/5

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

    While short, the description is under-specified and provides no useful structure or front-loading of actionable information.

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

    Completeness1/5

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

    With 4 parameters, no annotations, and a minimal description, the tool definition is grossly incomplete. The output schema exists but descriptions are not shown; the text adds nothing.

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

    Parameters1/5

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

    Schema coverage is 0%, and the description adds no information about the parameters (path, content, make_backup, create_parents). It does not explain their roles or defaults.

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

    Purpose1/5

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

    The description is 'Kali Agent MCP tool: write_file', which restates the tool name without specifying what the tool does or how it distinguishes from siblings like append_file or apply_patch. It is a tautology.

    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 write_file compared to alternative tools. The description lacks any usage context or prerequisites.

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

  • Behavior1/5

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

    No annotations exist. The description provides zero behavioral insight (e.g., that it appends content, affects existing files, or requires permissions). The word 'append' is implicit but not stated.

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

    Conciseness2/5

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

    While short, the description is under-specified rather than concise. It front-loads the name but wastes the entire single sentence on a redundant label.

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

    Completeness1/5

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

    For a file manipulation tool with 3 parameters and an output schema, a one-line labeling provides no context about behavior, prerequisites, or side effects. Completely inadequate.

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

    Parameters1/5

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

    Schema coverage is 0%; description adds no meaning for parameters 'path', 'content', or 'create_parents'. Agent must infer meaning without any textual guidance.

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

    Purpose1/5

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

    Description is a tautology: 'Kali Agent MCP tool: append_file' simply restates the name without specifying the action on a resource (e.g., appending content to a file). It fails to distinguish from siblings like write_file or apply_patch.

    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 usage context provided. The description does not indicate when to use this tool versus alternatives (e.g., write_file for overwriting, apply_patch for structured diffs).

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

  • Behavior1/5

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

    No annotations are provided, and the description lacks any behavioral details (e.g., whether it reads logs, requires permissions, or has rate limits). The description is entirely opaque.

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

    Conciseness2/5

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

    The description is extremely short, but this is not concise; it is underspecified. It provides no substantive information, wasting the opportunity to guide the agent.

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

    Completeness1/5

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

    With 2 parameters and an output schema, the description should specify what type of audit logs are fetched, how to filter, and what the output contains. It completely fails to do so.

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

    Parameters1/5

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

    Schema description coverage is 0% and the description does not explain the meaning or usage of 'limit' or 'action' parameters, forcing the agent to rely on parameter names alone.

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

    Purpose1/5

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

    The description only repeats the tool name ('Kali Agent MCP tool: audit_log') without stating what the tool does. It fails to indicate that it retrieves audit logs, leaving the agent without a clear verb or resource.

    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 on when to use this tool or what alternatives exist. The description provides no context for decision-making among sibling tools.

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

  • Behavior1/5

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

    No annotations exist, and the description fails to disclose any behavioral traits such as side effects, permissions, or output format. The tool's behavior is completely opaque.

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

    Conciseness2/5

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

    The description is extremely short (6 words), but it is underspecified rather than concise. It does not earn its place as it conveys zero useful information.

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

    Completeness1/5

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

    Given the parameter count (4), zero schema descriptions, and no annotations, the description is completely inadequate. An output schema exists but is not described. The agent has no basis for correct invocation.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description adds no meaning to the four parameters (clear, limit, session_id, url_contains). The description must compensate but provides nothing.

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

    Purpose1/5

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

    The description simply restates the tool name as 'Kali Agent MCP tool: browser_network', providing no verb or resource. It is a tautology with no indication of what the tool actually does.

    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 on when to use this tool versus alternatives. Sibling tools like browser_click, browser_html, etc., exist, but the description offers no context for differentiation.

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

  • Behavior1/5

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

    No annotations are provided, and the description gives no behavioral information whatsoever. It does not state whether the tool is read-only, destructive, requires authentication, or any other behavioral traits.

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

    Conciseness2/5

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

    The description is extremely short (6 words), but this brevity is under-specification rather than conciseness. It lacks essential information and does not earn its place as a useful description.

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

    Completeness1/5

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

    Given the existence of many sibling tools for command execution and the presence of a single required parameter, the description is completely inadequate. No details about output schema or return values are provided.

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

    Parameters1/5

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

    The single parameter 'command' has no description in the schema and the tool description adds no explanation of expected format, constraints, or examples. Schema description coverage is 0% and the description fails to compensate.

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

    Purpose1/5

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

    The description is a tautology that merely restates the tool name as 'Kali Agent MCP tool: command_classify'. It does not specify any verb, resource, or action beyond the name itself, providing no clarity on what the tool actually does.

    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?

    There is no guidance on when to use this tool versus sibling tools like exec_command, execute_command, or sandbox_exec. The description provides no context for appropriate usage scenarios.

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

  • Behavior1/5

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

    No annotations exist, and the description gives no information about safety, authentication, or side effects.

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

    Conciseness2/5

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

    The description is extremely short but not concise; it lacks necessary detail. Every sentence should earn its place, but this one provides no value beyond the name.

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

    Completeness1/5

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

    Given 5 parameters and an output schema, the description is completely inadequate. It does not explain return values, default behaviors, or any contextual nuances.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description adds no meaning to the parameters. It fails to compensate for the lack of schema descriptions.

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

    Purpose2/5

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

    The description simply restates the tool name 'find_files' without explaining what it does. It does not specify the verb or resource; it is essentially a tautology.

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

    Usage Guidelines1/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 sibling tools like list_directory or search_text.

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

  • Behavior1/5

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

    With no annotations, the description must disclose behavioral traits. It fails to mention that the tool creates a worktree, any side effects, permissions, or return behavior. The timing detail does not substitute for core 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.

    Conciseness2/5

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

    The description is short but wastes space on redundant phrases ('Kali Agent MCP tool:') and focuses on timing details instead of the tool's action. It fails to be concise about what matters.

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

    Completeness1/5

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

    Given 10 parameters, 0% schema coverage, and an output schema, the description is grossly incomplete. The core function is missing, making it unusable for an agent.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description does not explain any parameter meanings except timing-related ones. Parameters like path, destination, branch, detach remain undefined. This adds no value beyond the schema.

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

    Purpose1/5

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

    The description does not state the tool's core purpose. It only mentions execution timing, leaving the agent to guess that this tool creates a git worktree. The name is not self-explanatory in the context.

    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 like git_worktree_list or git_worktree_remove. It only discusses how to configure timing parameters, which is irrelevant for usage selection.

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

  • Behavior1/5

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

    No annotations are provided, and the description does not disclose any behavioral traits such as read-only nature, side effects, or output characteristics.

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

    Conciseness2/5

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

    While short, the description is underspecified rather than concise. It fails to convey any useful information, wasting the opportunity to guide the agent.

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

    Completeness1/5

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

    For a tool with multiple parameters and an output schema, the description provides zero context. The agent cannot determine how to invoke the tool correctly.

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

    Parameters1/5

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

    The schema has 0% description coverage, and the tool description adds no meaning to the parameters 'pid' and 'recursive'. The agent cannot understand their purpose.

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

    Purpose1/5

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

    The description is a tautology, restating the tool name without indicating what the tool does. It lacks a verb or resource, making it impossible to understand the purpose.

    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 usage context is provided. The description does not mention when to use process_tree over sibling tools like process_list or process_info.

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

  • Behavior1/5

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

    With no annotations, the description must disclose behavioral traits. It mentions nothing about the tool's behavior (e.g., that it recursively lists files, respects depth limits, or is read-only).

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

    Conciseness2/5

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

    The description is extremely short but lacks substance. It is under-specified rather than concise. Every sentence should add value; here the single sentence is useless.

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

    Completeness1/5

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

    Despite having an output schema and three parameters with defaults, the description provides no context about the tool's functionality, return format, or use cases. It is completely inadequate.

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

    Parameters1/5

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

    The description adds no meaning to the three parameters (path, limit, max_depth) beyond what the input schema already provides. The schema coverage is 0% and the description does not explain any parameter purpose or constraints.

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

    Purpose1/5

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

    The description 'Kali Agent MCP tool: repo_tree' is a tautology that merely restates the tool name without specifying any verb or resource. It fails to indicate what the tool does (e.g., display a directory tree structure).

    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?

    There is no guidance on when or how to use this tool compared to siblings like 'list_directory' or 'file_stat'. No context about prerequisites or exclusions is provided.

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

  • Behavior1/5

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

    No annotations are present, and the description gives no information about tool behavior, side effects, or return values. The agent is left completely uninformed.

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

    Conciseness2/5

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

    The description is short but not concise; it is under-specified and fails to convey necessary information. Brevity here is a symptom of incompleteness, not efficiency.

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

    Completeness1/5

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

    Despite low complexity (no params, output schema present), the description is utterly incomplete. It does not describe the tool's purpose, return value, or any usage context.

    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?

    While the tool has zero parameters and schema coverage is 100%, the description should add value by explaining what the output represents. It provides no such context, leaving the agent to guess what 'capabilities' are returned.

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

    Purpose1/5

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

    The description 'Kali Agent MCP tool: server_capabilities' is a tautology, merely restating the tool name without indicating what the tool does or what 'server_capabilities' means.

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

    Usage Guidelines1/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 over siblings like 'system_info' or 'server_health'. The description lacks any context for selecting this tool.

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

  • Behavior1/5

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

    No annotations are present, and the description does not disclose any behavioral traits such as read-only nature, required permissions, or side effects. The tool name implies read but no details are given.

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

    Conciseness2/5

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

    The description is a single sentence, but it is underspecification rather than conciseness. It fails to provide essential information while being brief.

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

    Completeness1/5

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

    With 3 parameters, no schema descriptions, and no output description despite an output schema existing, the description is entirely insufficient for correct tool invocation.

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

    Parameters1/5

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

    The input schema has 0% description coverage for parameters (e.g., start_line, include_escape) and the tool description adds no meaning. The agent cannot infer parameter purpose or constraints.

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

    Purpose1/5

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

    The description just restates the tool name ('Kali Agent MCP tool: session_read') without specifying what reading a session entails. It is a tautology and does not distinguish from sibling tools like session_list or session_write.

    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 session_read versus alternatives. The description lacks any context for decision-making.

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

  • Behavior1/5

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

    With no annotations and a description that only names the tool, there is no disclosure of behavioral traits such as whether the operation is destructive, requires permissions, or has side effects. The agent gets no insight into system impact.

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

    Conciseness1/5

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

    The description is extremely short (5 words), but this is under-specification rather than conciseness. It fails to front-load any useful information and offers no structure to aid comprehension.

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

    Completeness1/5

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

    Given the complexity of 6 parameters, 1 required, and the existence of an output schema, the description provides zero contextual information. For a mutation tool, this is severely incomplete and burdens the agent with inference.

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

    Parameters1/5

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

    The input schema has 6 parameters with 0% description coverage, yet the description adds no explanation for any parameter. The agent must rely solely on parameter names, which are insufficient for understanding format, constraints, or relationships.

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

    Purpose2/5

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

    The description merely repeats the tool name 'task_update' with a generic prefix, offering no specific verb or resource explanation. It vaguely suggests updating a task but lacks any detail on what aspects are updated, making it only slightly better than a tautology.

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

    Usage Guidelines1/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 alternatives like task_create or task_list. The description fails to specify any context or exclusion criteria, leaving the agent without decision-making support.

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

  • Behavior1/5

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

    With no annotations provided, the description carries full burden but offers no disclosure about behavioral traits like side effects, authorization needs, or output characteristics. The tool's nature (read-only, health check) is only implied by the name.

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

    Conciseness2/5

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

    The description is extremely short but wastes its single sentence on tautology. It could have been concise and informative, but it is underspecified.

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

    Completeness1/5

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

    Despite having an output schema, the description gives no hint about the return format or contents. For a health-check tool, it lacks critical context like what metrics are reported.

    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?

    Since there are no parameters, schema coverage is 100% trivially. The description adds no meaning beyond the empty schema, but the baseline for high coverage is 3. No value is added.

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

    Purpose1/5

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

    The description 'Kali Agent MCP tool: server_health' is a tautology that merely restates the tool name without specifying what the tool does, what resource it acts on, or what action it performs. It fails to distinguish the tool from siblings.

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

    Usage Guidelines1/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, such as environment_info or system_info. No context is given for appropriate scenarios.

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

  • Behavior1/5

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

    No annotations exist, and the description fails to disclose any behavioral traits (e.g., whether it reads data, what effect it has, or any prerequisites). It does not even state that it lists something.

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

    Conciseness1/5

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

    The description is extremely short but adds no value; it merely repeats the tool name. It is under-specified, not concise, and wastes the opportunity to provide useful information.

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

    Completeness1/5

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

    Despite having an output schema, the description is completely inadequate. It does not explain what the tool lists or what return values to expect, leaving the agent without context for invocation.

    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 input schema has zero parameters, so schema coverage is 100%. The description adds no additional meaning, but the schema is already sufficient for parameter documentation.

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

    Purpose1/5

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

    The description is a tautology: 'Kali Agent MCP tool: browser_list' provides no information about what the tool does. It does not specify what is being listed (e.g., browser windows, tabs, sessions).

    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 usage guidance is provided. The description does not indicate when to use this tool versus its siblings (e.g., browser_click, browser_navigate).

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

  • Behavior1/5

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

    No annotations are provided, so the description bears full responsibility. It discloses no behavioral traits, such as irreversibility, authentication requirements, or whether it can delete directories. This is a critical gap for a mutation tool.

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

    Conciseness1/5

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

    The description is extremely short but conveys no useful information. True conciseness adds value without waste; here, the single sentence is under-specified and fails to earn its place.

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

    Completeness1/5

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

    Despite having an output schema, the description is entirely inadequate. It does not explain return values, error states, or any side effects. For a tool with no annotations, the description must compensate; it does not.

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

    Parameters1/5

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

    Schema description coverage is 0%, yet the description mentions no parameters. It adds no meaning beyond the schema, failing to explain that the 'recursive' parameter allows deleting directories or that 'path' is required. This leaves the agent without essential guidance.

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

    Purpose2/5

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

    The description 'Kali Agent MCP tool: delete_path' is a tautology that merely restates the tool name. It does not specify what the tool does (e.g., delete a file or directory) or how it differs from similar tools like move_path or copy_path.

    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 usage guidelines are provided. The description does not indicate when to use this tool versus alternatives such as move_path, write_file, or copy_path, nor does it mention any prerequisites or conditions.

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

  • Behavior1/5

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

    The description exclusively discusses execution timing parameters (expected_runtime_seconds, timeout_seconds, etc.) and on_timeout behavior, but does not describe the primary action (listing containers) or any read-only nature. Annotations are absent, so the description fails to disclose basic behavioral traits.

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

    Conciseness2/5

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

    The description is short but wastes space on boilerplate ('Kali Agent MCP tool') and overly detailed timing instructions. It could be more concise and focused on the core functionality.

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

    Completeness1/5

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

    With 6 parameters, 0% schema description, no annotations, and an output schema present, the description is severely lacking. It does not explain the tool's purpose, parameters, or behavior, making it incomplete for effective use.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description does not explain any parameter except on_timeout. Parameters like all_containers, timeout_seconds, etc., are not described, leaving the agent without essential semantic context.

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

    Purpose2/5

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

    The description only says 'Kali Agent MCP tool: docker_ps' without stating that it lists Docker containers. The name implies the purpose, but the description fails to clarify the specific action, making it vague.

    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 on when to use docker_ps versus alternative tools. Siblings include many Docker-related tools, but no comparisons or exclusions are provided.

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

  • Behavior2/5

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

    No annotations provided, and the description fails to convey behavioral traits such as read-only nature, permissions needed, or any side effects. 'file_stat' suggests a read operation, but no confirmation or additional info.

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

    Conciseness2/5

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

    The description is brief (one sentence) but fails to provide essential information. Conciseness should not come at the cost of clarity; this is under-specification rather than efficient communication.

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

    Completeness1/5

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

    Despite having an output schema, the description lacks basic context about the tool's functionality. For a file metadata retrieval tool, it should at least mention it provides file stats. The current description is completely inadequate.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description adds no meaning to parameters 'path' and 'checksum'. It does not explain what values each parameter expects or how they affect the tool's behavior.

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

    Purpose1/5

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

    Description is a tautology: 'Kali Agent MCP tool: file_stat' merely restates the tool name without indicating it retrieves file metadata. No verb or resource scope distinguishes it from siblings like read_file or list_directory.

    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 on when to use this tool vs alternatives. Sibling tools include many file operations, but description offers no context for selection.

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

  • Behavior1/5

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

    No annotations exist, and the description fails to disclose any behavioral traits such as destructiveness, authorization requirements, or side effects. The agent is left without critical safety information.

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

    Conciseness2/5

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

    The description is extremely short but tautological. Concision is not valuable when it omits essential information. It fails to earn its place by providing utility.

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

    Completeness1/5

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

    Given the tool has one parameter and an output schema, the description should explain the tool's purpose and behavior. Instead, it is completely inadequate, leaving the agent without actionable context.

    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?

    The input schema specifies patch_id as a required string, but the description adds no explanation of its role. With 0% schema description coverage, the description should compensate, but it does not.

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

    Purpose1/5

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

    Description is 'Kali Agent MCP tool: revert_patch', which merely restates the tool name without stating its function. It fails to clarify that the tool reverts a patch, leaving purpose ambiguous.

    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 revert_patch versus alternatives like apply_patch or patch_history. The description offers no context about its appropriate use cases.

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

  • Behavior2/5

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

    No annotations provided. The description covers execution timing and timeout behavior, which is useful for non-functional traits, but omits the actual behavioral impact of git reset (e.g., destructive changes to HEAD, index, working tree).

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

    Conciseness2/5

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

    The description is verbose about execution timing but lacks a concise definition of the core functionality. Important information is missing, and the structure prioritizes secondary details over primary purpose.

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

    Completeness1/5

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

    Given the absence of annotations and the presence of an output schema, the description fails to provide essential context about the git reset operation. The agent cannot understand the tool's effect or return value.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description does not explain the git-related parameters (ref, mode, path, paths). It only discusses execution timing parameters, which are already in the schema but not explained in context of the operation.

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

    Purpose2/5

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

    The description does not state what git_reset does; it only mentions 'Kali Agent MCP tool: git_reset' without explaining the git operation. The name implies git reset, but the agent cannot discern purpose from the description alone.

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

    Usage Guidelines1/5

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

    No guidance on when to use git_reset versus sibling tools like git_checkout, git_restore, etc. The description only advises on execution timing parameters, not the tool's domain of use.

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

  • Behavior1/5

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

    The description discloses no behavioral traits. With no annotations present, the agent has no information about side effects, read vs write, permissions, or rate limits. The minimal text adds zero transparency.

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

    Conciseness2/5

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

    The description is extremely short but wasteful: it repeats the tool name without adding useful information. It is not concise in a value-adding sense; it is under-specified.

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

    Completeness1/5

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

    Despite having an output schema (not shown), the description provides no context about return values, purpose, or behavior. For a parameterless tool, the description should at least explain what status is retrieved, making this severely incomplete.

    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, so the schema coverage is trivially 100%. The description does not need to add parameter meaning beyond the schema. Baseline 4 applies per the rule for 0 parameters.

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

    Purpose1/5

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

    The description is a tautology: 'Kali Agent MCP tool: policy_status' restates the tool's name without specifying any action or resource. It fails to indicate what the tool does, such as reading or checking a policy status.

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

    Usage Guidelines1/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 its many siblings (e.g., audit_log, server_health). There is no indication of context, prerequisites, or alternatives.

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

  • Behavior1/5

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

    No annotations are present, and the description does not disclose any behavioral traits (e.g., read-only, side effects, permissions). The agent gains no insight into what invoking this tool entails.

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

    Conciseness2/5

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

    The description is extremely short but fails to convey essential information. It is under-specified rather than concise, wasting the opportunity to clarify purpose.

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

    Completeness1/5

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

    Despite having an output schema, the description omits what the tool returns or how it behaves. For a simple tool with no parameters, the description is wholly inadequate.

    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 no parameters, so the schema trivially covers them. The description adds nothing about parameters, but with zero parameters, this does not detract from usability.

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

    Purpose1/5

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

    The description 'Kali Agent MCP tool: session_list' merely repeats the tool name without specifying a verb or resource. It fails to indicate that this tool likely lists sessions, leaving its purpose entirely unclear.

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

    Usage Guidelines1/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 session_list versus sibling tools like session_create, session_interrupt, or session_read. The description offers no usage context or exclusions.

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

  • Behavior2/5

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

    No annotations exist, so the description must carry the full burden. It partially discloses timing behavior (background jobs, job_id) but omits core behavioral traits: whether it is read-only, side effects, or what happens on success. The timeout details are helpful but insufficient for complete transparency.

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

    Conciseness2/5

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

    The description is short but focuses disproportionately on execution timing, wasting space that should describe the tool's primary function. It is not concise in a helpful sense; it is concise to the point of omission.

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

    Completeness2/5

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

    Given 9 parameters and a complex execution model (background jobs, timeouts), the description is critically incomplete. It does not explain normal return values (despite an output schema existing), prerequisites, or error handling. The agent lacks essential context for correct usage.

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

    Parameters1/5

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

    With 0% schema description coverage, the description should explain parameters. It only mentions timing parameters (expected_runtime_seconds, etc.) in passing, but fails to explain path, query, kind, limit, or on_timeout semantics. The agent receives no help beyond parameter names and types.

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

    Purpose1/5

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

    The description does not state what the tool does; it merely repeats the name 'symbol_search' and focuses on execution timing. The actual purpose (searching for symbols in code) is only implied by the name and parameters but never explicitly stated.

    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 guidance on choosing timing parameters but does not indicate when to use this tool vs. siblings like search_text or alternatives. There is no context for when symbol_search is appropriate or when it should be avoided.

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

  • Behavior1/5

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

    No annotations are provided, so the description carries full burden for behavioral disclosure. It provides no information about side effects, prerequisites, rate limits, or other behavioral traits. The agent learns nothing beyond the tool's name.

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

    Conciseness2/5

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

    The description is extremely short (one phrase) but fails to convey essential information. It is under-specified rather than concise, as it omits critical details.

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

    Completeness2/5

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

    Given the tool's complexity (1 parameter, no annotations, no param descriptions), the description is far from complete. It does not explain the output schema or the purpose of the 'limit' parameter, leaving the agent underinformed.

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

    Parameters1/5

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

    The input schema has 1 parameter ('limit') with 0% description coverage. The description does not explain what 'limit' controls (e.g., maximum number of checkpoints returned). The agent must guess its meaning.

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

    Purpose2/5

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

    The description is just a header ('Kali Agent MCP tool: checkpoint_list') and does not state what the tool does. It provides no verb or resource, making the purpose unclear. Sibling tools like 'checkpoint_save' and 'checkpoint_load' imply it lists checkpoints, but that is not explicitly stated.

    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 on when to use this tool versus alternatives (e.g., checkpoint_save or checkpoint_load). The description lacks context for appropriate usage.

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

  • Behavior2/5

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

    With no annotations, the description carries the full burden. It reveals execution timing behavior (timeout handling, on_timeout options) but does not disclose whether the tool performs reading, writing, or any destructive actions. Key behavioral aspects are missing.

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

    Conciseness2/5

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

    The description is not concise; it dedicates most content to generic timing instructions that could be shared across tools. The core purpose is missing, and the structure is unfocused.

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

    Completeness1/5

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

    Despite having an output schema, the description says nothing about return values. For a tool with 7 parameters and no annotations, the description is severely incomplete, failing to provide context for safe and effective use.

    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 0%, so the description must compensate. It explains several timing parameters (expected_runtime_seconds, timeout_seconds, etc.) but omits path and all_branches. Coverage is partial, leaving critical parameters undefined.

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

    Purpose2/5

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

    The description fails to state what the tool does beyond the name 'git_branches'. It focuses entirely on execution timing, leaving the core purpose unclear. The name suggests listing branches, but the description does not confirm this.

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

    Usage Guidelines1/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 alternatives like git_checkout, git_log, or other git-related sibling tools. The description only discusses timing parameter selection.

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

  • Behavior2/5

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

    Annotations are absent, so the description must cover behavioral traits. It discloses execution timing behavior (expected_runtime, timeout, on_timeout options), but fails to mention that the tool runs 'git show' on a ref/path, what the output is, or whether it has side effects. Core behavior is missing.

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

    Conciseness3/5

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

    The description is concise (one sentence) but poorly structured: it front-loads irrelevant timing details before the purpose. It should first state the function, then add timing specifics.

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

    Completeness2/5

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

    With 8 parameters, no annotations, and an existing output schema, the description should cover return values and parameter semantics. It only addresses execution timing, leaving the tool's actual operation, return format, and potential errors undocumented.

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

    Parameters1/5

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

    Schema description coverage is 0%, so the description must compensate. It does not explain any parameter semantics, especially the key 'ref' and 'path' parameters critical for git_show. It only mentions timing-related parameters, which are already clear from the schema names.

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

    Purpose1/5

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

    The description does not state what the tool does. It only mentions that execution timing is supported, but the core action of 'git show' (displaying git object details) is never described. The title is null, and the name alone is insufficient. This is a tautology of the name without functional explanation.

    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 on when to use this tool versus sibling git tools like git_log, git_diff, or git_status. The description focuses on execution timing parameters, implying it is for long-running commands, but does not specify the actual use case for git_show.

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

  • Behavior2/5

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

    With no annotations, description must disclose behavior. It details execution timing but does not explain the scan's nature (e.g., read-only, network scanning, potential side effects). Missing core operational context.

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

    Conciseness2/5

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

    Short but inefficient; focuses on a secondary aspect (timing) while ignoring primary purpose. Not well-structured for quick agent comprehension.

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

    Completeness1/5

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

    Given 7 parameters, 0% schema coverage, and presence of output schema, the description is grossly incomplete. Agent lacks info to set parameters correctly or understand return values. Outside timing, the tool is undefined.

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

    Parameters1/5

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

    Schema coverage is 0%, so description must cover parameters. It only discusses timing-related parameters (on_timeout, timeout_seconds, etc.) but omits 'target' (required), 'additional_args', and others. No semantics for the most critical parameter.

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

    Purpose2/5

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

    Description omits what enum4linux_scan does. It only mentions 'Kali Agent MCP tool' without specifying that enum4linux enumerates Samba/Windows shares. The verb and resource are missing, making it unclear to an agent unfamiliar with enum4linux.

    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 on when to use this tool vs. siblings like nmap_scan, nikto_scan, or dirb_scan. Only timing guidance for on_timeout is provided, which is insufficient for tool selection.

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

  • Behavior2/5

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

    No annotations provided, so description must cover behavior. It omits core side effects (e.g., does it create local branch, push to remote?). Instead, it details timing parameters that are likely generic across tools, failing to disclose actual git creation behavior.

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

    Conciseness2/5

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

    Description is short but wastes space on irrelevant timing details while missing the primary purpose. It is not concise in delivering necessary information; each sentence does not earn its place.

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

    Completeness1/5

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

    With 9 parameters, no parameter descriptions, and no output schema explanation, the description is severely incomplete. A tool of this complexity requires clear parameter definitions and behavioral context, which are entirely absent.

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

    Parameters1/5

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

    Schema coverage is 0%, and description provides no explanation for any parameter. Essential parameters like path, branch, start_point, and checkout are not defined, leaving the agent unable to understand their purpose or format.

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

    Purpose2/5

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

    Description focuses on execution timing mechanics rather than stating that the tool creates a git branch. It does not clarify what the tool does, making it vague and indistinguishable from sibling tools like git_checkout or git_branches.

    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 on when to use this tool compared to alternatives. It only discusses timing strategies for execution, ignoring context such as when branch creation is appropriate or what prerequisites exist.

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

  • Behavior2/5

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

    The description adds value by explaining execution timing parameters and on_timeout behavior, but it does not disclose the underlying scanning behavior (e.g., network requests, loudness, potential impact). Without annotations, the transparency is insufficient for an agent to understand the tool's operational effects.

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

    Conciseness2/5

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

    The description is a single dense paragraph that leads with a redundant phrase and prioritizes execution details over core purpose. It lacks clear structure and could be more concise by front-loading the tool's function.

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

    Completeness2/5

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

    Given 9 parameters, no annotations, and an existing output schema, the description is incomplete. It omits the tool's primary function, parameter meanings, and usage context, making it insufficient for an agent to use the tool effectively.

    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 0% schema description coverage, the description should explain all parameters, but it only covers timing-related ones (expected_runtime_seconds, timeout_seconds, etc.). Core parameters like url, mode, wordlist, and additional_args are left unexplained, leaving the agent without crucial input semantics.

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

    Purpose1/5

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

    The description fails to state what gobuster_scan actually does. It only mentions 'Kali Agent MCP tool: gobuster_scan' and then dives into execution timing details, leaving the core purpose of directory/file brute-forcing entirely unspecified.

    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 gobuster_scan versus alternative scanning tools like nmap_scan, nikto_scan, or dirb_scan. The description only discusses execution timing options, not the tool's typical use cases or scenarios.

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

  • Behavior1/5

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

    With no annotations, the description carries full burden for behavioral disclosure. It fails to mention any behavioral traits such as read-only nature, return format, or side effects. The existence of an output schema is not referenced, and the description is silent on what the tool returns or how it operates.

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

    Conciseness2/5

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

    The description is extremely short but underspecified. It is not concise in a helpful way; it omits critical information. Every sentence should add value, but here it only repeats the tool name. The structure is minimal and ineffective.

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

    Completeness2/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 and an output schema, the description is incomplete. It does not clarify what system info is returned, its format, or how it relates to sibling tools. The agent is left without sufficient context to use the tool correctly.

    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?

    While there are no parameters (schema coverage 100%), the description adds no meaning beyond the empty schema. A baseline of 4 for zero-parameter tools is not met because the description does not explain what information the tool provides or the context of its output.

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

    Purpose2/5

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

    The description 'Kali Agent MCP tool: system_info' is essentially a tautology, restating the tool name with a prefix. It does not specify what the tool does or what information it provides. With sibling tools like environment_info, server_health, and server_capabilities, there is no differentiation, making it unclear when to use this tool over others.

    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 alternatives. There are no usage conditions, prerequisites, or examples. The agent receives no information about appropriate contexts for invocation.

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

  • Behavior2/5

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

    No annotations are provided, and the description gives no behavioral traits (e.g., read-only vs. destructive). Agents cannot infer side effects or safety implications.

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

    Conciseness2/5

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

    Extremely short but under-specified; the single sentence provides no useful information beyond the tool name. It is not concise in a helpful way.

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

    Completeness2/5

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

    Despite having an output schema, the description omits any mention of return values or expected behavior. For a tool with three parameters, this is inadequate for agents to use correctly.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description adds no meaning to parameters. 'clear', 'limit', and 'session_id' are named but not explained; agents must guess their purpose.

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

    Purpose2/5

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

    Description 'Kali Agent MCP tool: browser_console' is vague; it doesn't specify whether the tool reads console logs, executes commands, or clears the console. It fails to differentiate from sibling browser tools like browser_click or browser_navigate.

    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 on when to use this tool versus other browser tools. No mention of prerequisites or alternatives.

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

  • Behavior2/5

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

    No annotations are provided, so the description must disclose all behavioral traits. It covers execution timing and on_timeout behavior, but it omits core functionality (e.g., that it returns HTML), whether it modifies session state, and any side effects. The description is insufficient for safe agent decision-making.

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

    Conciseness2/5

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

    The description is extremely short (45 words) but wastes space on a header 'Kali Agent MCP tool: browser_html' and jumps into execution timing without first stating the tool's purpose. It lacks logical structure and front-loading of the primary action.

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

    Completeness2/5

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

    Given 8 parameters and an output schema, the description is incomplete. It does not explain what the tool does, how it interacts with the browser session, or what the output contains. The agent has insufficient information to use the tool correctly, especially with many sibling tools that handle different browser interactions.

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

    Parameters1/5

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

    Schema description coverage is 0%, meaning no parameters are explained in the schema. The description only mentions some timing parameters by name but does not define their meaning, units, or acceptable values. For example, 'max_chars' appears in the schema but is not addressed. This leaves the agent without essential parameter information.

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

    Purpose2/5

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

    The description does not explicitly state that the tool retrieves HTML content from a browser session. It mentions 'Kali Agent MCP tool: browser_html' but lacks a clear verb+resource statement. Sibling tools like browser_text and browser_screenshot suggest alternative actions, but the description does not distinguish between them.

    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 guidance on setting timing parameters and choosing on_timeout values, but it does not explain when to use this tool versus other browser tools (e.g., browser_text, browser_network). There is no mention of use cases or exclusions, so the agent has no guidance on tool selection.

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

  • Behavior2/5

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

    No annotations provided, so the description carries full burden. It mentions execution timing but does not describe the primary behavior (e.g., whether it clears the field first, what happens on success/failure, or what the tool returns). The output schema exists but is not referenced.

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

    Conciseness2/5

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

    The description is poorly structured: it starts with a clunky header, then dives into execution timing advice without first stating the tool's purpose. It is not front-loaded and contains unnecessary filler ('Kali Agent MCP tool:').

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

    Completeness1/5

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

    Given the tool has 9 parameters and an output schema, the description is completely inadequate. It does not explain the primary function, most parameters, or the output. The agent cannot reliably invoke this tool based on the description alone.

    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 coverage is 0%, so the description should explain each parameter. It only discusses timing parameters (expected_runtime_seconds, timeout_seconds, etc.) but does not explain core parameters like selector, text, session_id, or clear. The description adds minimal value beyond the schema.

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

    Purpose2/5

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

    The description fails to state that this tool types text into a browser element. It starts with 'Kali Agent MCP tool: browser_type Explicit execution timing is supported' which does not clarify the core action. The purpose is only inferable from the tool name 'browser_type' and parameters (selector, text).

    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 on when to use this tool versus sibling tools like browser_click, browser_text, or browser_navigate. The description only gives internal advice on setting timeout parameters, not the context or alternatives.

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

  • Behavior2/5

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

    No annotations are provided, and the description fails to disclose any behavioral traits such as read-only nature, required permissions, or output format. With an output schema present, the description should elaborate on what to expect.

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

    Conciseness2/5

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

    The description is extremely short ('Kali Agent MCP tool: process_info'), but this is under-specification rather than conciseness. It lacks valuable front-loaded information and wastes an opportunity to be useful.

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

    Completeness1/5

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

    Given that the tool has a single parameter and an output schema, the description is woefully incomplete. It could at least mention what types of process information are returned, but it provides no context whatsoever.

    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?

    The schema coverage is 0%, and the description adds no meaning beyond the schema. While 'pid' is self-explanatory, the description does not clarify its role or any constraints, falling short for a low-coverage scenario.

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

    Purpose2/5

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

    The description simply restates the tool name without specifying what information is retrieved about the process. It is a tautology, lacking details such as memory, CPU, status, or any specific data returned.

    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?

    There is no guidance on when to use this tool versus similar siblings like process_list or process_tree. No context or conditions for appropriate invocation are provided.

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

  • Behavior2/5

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

    No annotations are provided, so the description should fully disclose behavior. It mentions execution timing and timeout handling, but does not describe what the tool returns (output schema exists but not referenced), whether it is destructive or read-only, or any side effects. The description partially addresses timing behavior but is incomplete.

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

    Conciseness3/5

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

    The description is relatively short, but it is not front-loaded with the main purpose. The first sentence does not convey what the tool does; it immediately dives into execution timing. While concise in word count, it lacks effective structure for quick understanding.

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

    Completeness1/5

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

    Given 8 parameters, no annotations, and an output schema that is not described, the description is severely incomplete. It fails to explain the core functionality, main parameters, and output format. Only timing aspects are covered, leaving the agent without necessary context to use the tool correctly.

    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 0%, so the description must explain parameters. It only covers timing-related parameters (expected_runtime_seconds, timeout_seconds, etc.) and on_timeout. It does not explain the required 'url', 'wordlist', or 'additional_args'. Thus, significant parameter meaning is missing.

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

    Purpose2/5

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

    The description does not explicitly state that dirb_scan performs web directory brute-forcing. It assumes the agent knows what 'dirb' is, which is not guaranteed. The name alone is insufficient, and the description focuses on execution timing rather than core functionality.

    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 dirb_scan versus sibling tools like gobuster_scan or nikto_scan. The description only advises on timeout strategies, not on the appropriate scenarios for this tool compared to alternatives.

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

  • Behavior2/5

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

    With no annotations, the description does not disclose that git_add performs a write operation (staging files), nor does it mention any side effects or prerequisites. It only covers execution timing behavior, leaving core behavioral traits undocumented.

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

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is relatively short but includes a redundant 'Kali Agent MCP tool: git_add' prefix. It is front-loaded with timing advice rather than core purpose, but overall it is not overly verbose.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness1/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Despite an output schema existing, the description omits the fundamental functionality and parameter meanings. With 8 parameters and no schema descriptions, the agent cannot determine how to use the tool effectively.

    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?

    The description explains the timing-related parameters (timeout_seconds, on_timeout, etc.) but fails to explain the essential Git parameters (path, paths, all_changes). With 0% schema description coverage, this is a significant omission.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not explicitly state that this tool stages files for Git commit; it only mentions execution timing. The purpose is implied by the tool name but lacks clarity, and it does not differentiate from sibling git tools like git_commit or git_status.

    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 on when to use git_add vs other git operations. The only usage advice given relates to timeout settings, not to choosing between this tool and alternatives.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description should disclose behavioral traits like side effects (e.g., losing uncommitted changes), but it only covers execution timing. The actual effect of the checkout operation is not described.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is concise (4 sentences) but poorly structured: it starts with the tool name and immediately discusses timing, without a clear purpose statement. Could be reorganized to front-load the action.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness1/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The description is highly incomplete given the 8 parameters, 0% schema coverage, and the existence of an output schema. The core git checkout semantics are absent, making the tool's behavior unclear.

    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 coverage is 0%, so the description must explain parameters. It explains the timing parameters (expected_runtime_seconds, etc.) but neglects core parameters ref, path, and create. This is insufficient for an 8-parameter tool.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not explicitly state the primary action of git checkout (e.g., switching branches, restoring files). It focuses on execution timing options, leaving the agent to infer the purpose from the tool name alone, which is insufficient for a diverse 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/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides guidance on how to set timing parameters but does not specify when to use this tool over sibling tools like git_create_branch or git_restore. No contextual when-to-use or alternatives are mentioned.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description must fully disclose behavioral traits. It covers execution timing and timeout behavior but omits critical aspects such as whether the scan is destructive, whether it requires escalated privileges, what the output format is, or any network implications. The description is insufficient for safe and effective use.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single paragraph of moderate length. It is not well-structured (lacks bullet points or clear sections) but is not overly verbose. It front-loads the tool name but then loses focus. Every sentence is somewhat earned but could be reorganized for clarity.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness1/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given 9 parameters (only 1 required), no schema descriptions, and no output schema details, the description is severely incomplete. It fails to explain the tool's primary function, output, or how to use it effectively. An output schema exists but is not referenced. The description leaves major gaps for a complex tool.

    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 coverage is 0%, meaning no parameter descriptions exist in the schema. The description adds value only for timing-related parameters (expected_runtime_seconds, timeout_seconds, etc.) but does not explain ports, scan_type, additional_args, or target. This leaves most parameters undocumented, forcing the agent to guess their meaning.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description begins with 'Kali Agent MCP tool: nmap_scan' but does not explicitly state that it performs network port scanning or service detection. It immediately discusses execution timing, leaving the core purpose ambiguous. Sibling tools like nikto_scan and gobuster_scan are not 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/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides guidance on when to use 'continue_background' vs 'kill' or 'return_partial' for on_timeout, but offers no advice on when to use nmap_scan over other scanning tools or prerequisites like network access or permissions. Context about timing is present but incomplete for general usage.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description should disclose all behavioral traits. It partially covers execution timing and timeout handling, but fails to describe what happens during a click (e.g., page load, navigation, error cases). The core action behavior is not transparent.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is short (two sentences) but poorly structured. The first sentence is awkward and does not front-load the core purpose. It could be more concise and better organized, but it is not overly long.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given 8 parameters, an output schema, and no sibling differentiation, the description is incomplete. It omits explanation of return values, parameter formats, and the tool's overall behavior beyond timing.

    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 0%, so the description must add meaning. It mentions several parameters (expected_runtime_seconds, timeout_seconds, etc.) but does not explain their function in detail. The required parameters selector and session_id are completely undocumented.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not explicitly state that the tool clicks an element in a browser. It only mentions 'browser_click' and then discusses execution timing, leaving the core action implied. A clear verb+resource phrase like 'Click a specified element in the browser' is missing, making it vague.

    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 browser_click versus sibling browser tools (e.g., browser_navigate, browser_type). The description does explain when to choose different on_timeout behaviors, but that is secondary to the tool's primary usage context.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description must disclose behavioral traits. It explains timing and on_timeout options but does not mention side effects, what closing does, or error conditions. Incomplete.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is relatively short but dense and technical. It could be more concise and structured, but it is not overly verbose.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given 6 parameters with no schema descriptions and an output schema, the description should provide more context on expected behavior and return values. It only discusses timing, leaving major gaps.

    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 0%, so the description must compensate. It only explains on_timeout partially; other parameters like session_id, timeout_seconds remain undefined. Insufficient.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not clearly state that the tool closes a browser session; it focuses on execution timing parameters instead. The tool name implies the purpose, but the description fails to explicitly articulate it.

    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 on when to use browser_close versus alternatives like session_close or browser_navigate. Instead, it provides parameter selection advice without context of 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 discloses that the tool supports explicit execution timing with options for background or synchronous work, and explains on_timeout behavior. However, it does not state whether the tool is read-only or has side effects. With no annotations, this is a moderate disclosure.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is brief (two sentences), but the first sentence adds little value ('Kali Agent MCP tool: browser_text'). The information is not front-loaded; the core purpose is missing entirely.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given 8 parameters and an output schema, the description is incomplete. It does not explain what the tool returns (text?), nor does it cover all parameters. The output schema is not provided, so the agent cannot infer return value structure.

    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 0% schema description coverage, the description should explain all parameters. It only covers timing-related parameters (expected_runtime_seconds, timeout_seconds, etc.) and on_timeout, but omits 'selector' and 'max_chars', which are crucial for the tool's core functionality.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not explicitly state that this tool extracts text from a browser page. It focuses on execution timing, leaving the primary function (reading text) implied by the name. Among sibling tools like browser_html or browser_screenshot, the purpose is not clearly distinguished.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines1/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is given on when to use browser_text versus other browser read tools (e.g., browser_html, browser_console). The description only discusses timing parameters, not the appropriate 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.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, description should disclose core behavior and side effects. It focuses on timing parameters but omits the primary action of reading logs. No mention of whether logs are fetched from stdout/stderr, or about container state requirements.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Description is brief but redundant with 'Kali Agent MCP tool: docker_logs' header. The core timing advice is useful but could be condensed. No structural issues beyond upfront positioning.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given 9 parameters, 1 required, no description of required container parameter. Output schema exists but not referenced. Lacks essential context about log scope, streaming, or return format. Incomplete for effective invocation.

    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 0%, yet description only explains timing-related parameters (5 of 9). No explanation of the required 'container' parameter or optional 'tail', 'since', 'timestamps'. Offers limited value over schema.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    Description does not explicitly state that this tool retrieves Docker container logs; purpose is only implied by tool name. No verb-resource statement or differentiation from sibling Docker tools like docker_inspect or docker_ps.

    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 on when to use docker_logs versus other Docker inspection tools. Only provides timing execution advice, not usage context or alternatives.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description must disclose all behavioral traits. It covers explicit execution timing and the on_timeout options, but omits that the tool is destructive, requires permissions, or affects volumes (force, volumes parameters).

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is brief but redundant (starts with tool name). It would benefit from separating timing details into a structured format. However, it is not overly verbose.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Despite having an output schema, the description fails to convey the primary purpose and most parameter semantics. The tool has 8 parameters and 1 required; the description only adds context for the timing subset, leaving the agent underinformed.

    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 0%, so the description must compensate. It explains timing parameters (expected_runtime_seconds, on_timeout, etc.) in detail, but ignores core parameters like 'container', 'force', and 'volumes', which are essential for usage.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description restates the tool name without specifying its core function. It says 'Kali Agent MCP tool: docker_remove' but does not state that it removes a Docker container, leaving the action ambiguous.

    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 on when to use docker_remove versus sibling tools like docker_stop or docker_rm. The description focuses solely on execution timing parameters, not on usage context or 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 provides useful behavioral details about execution timing and the on_timeout parameter, explaining how to handle long-running tasks. However, it omits fundamental behavior such as the search scope (files, directories), whether it is read-only, and the output format. Without annotations, this is only partial transparency.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single paragraph that is reasonably concise but front-loaded with 'Kali Agent MCP tool:' which is unnecessary. The structure mixes general behavior with parameter guidance, but it is not overly verbose.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool has 7 parameters, no annotations, and an output schema, the description is incomplete. It fails to explain the core output or what the tool searches for. The heavy focus on execution timing leaves significant gaps in understanding the tool's primary function.

    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?

    The description indirectly covers on_timeout and timing parameters but does not explain path or limit. With schema description coverage at 0%, the description adds minimal value beyond default values. The agent would lack understanding of key parameters like path and limit.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description fails to state the primary purpose of the tool, which is to find TODO comments in code. It only discusses execution timing parameters, relying on the tool name to hint at functionality. This lacks specificity about what 'find_todos' actually does.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines1/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 vs alternatives such as find_files or search_text. The description does not mention any context, prerequisites, or exclusions, leaving the agent without decision support.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries the full burden. It discloses execution timing behavior but omits other key traits: whether it reads or modifies files, permissions needed, or side effects. The output format is not mentioned, though an output schema exists.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is concise and fairly structured, but it wastes space with 'Kali Agent MCP tool:' and front-loads execution details before stating the tool's function. It could be organized better.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool's complexity (9 parameters, output schema), the description is incomplete. It lacks a clear purpose statement, does not mention prerequisites (e.g., being in a git repository), and fails to explain how the output schema relates to the result.

    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 coverage is 0%, so the description must compensate. It explains timing parameters (expected_runtime_seconds, timeout_seconds, etc.) but neglects core parameters (path, file_path, start_line, end_line). Their meaning and usage are left to inference.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not state what git_blame does. It assumes the agent knows the git blame command, but only mentions execution timing. The purpose is ambiguous; a clear statement such as 'Show who last modified each line of a file using git blame' is missing.

    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 guidance on timing parameters and on_timeout options but does not indicate when to use this tool versus other git tools (e.g., git_log, git_diff). No explicit alternatives or context for selection are given.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations provided, the description carries full burden. It discloses execution timing behavior but omits core functionality—what the tool does (e.g., return git log entries). The agent cannot infer what data it outputs or what side effects occur, which is critical for a tool with 8 parameters and no schema descriptions.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is concise but misallocated: it front-loads boilerplate 'Kali Agent MCP tool' and immediately dives into timing details, neglecting the tool's primary purpose. A single paragraph is reasonable, but the content ordering and focus reduce effectiveness.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given 8 parameters, 0 required, and an output schema, the description should explain the tool's overall function and key parameters. It fails to state that git_log retrieves commit logs, leaving the agent uninformed about the tool's purpose. The timing advice is helpful but insufficient for complete understanding.

    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 0%, so the description should compensate. However, it only partially explains the timing parameters (on_timeout, timeout_seconds, etc.) while ignoring core parameters like ref, path, and limit. These must be inferred from names, which is unreliable for an AI agent.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not explicitly state that git_log retrieves commit history; it focuses entirely on execution timing configuration. The purpose is merely implied by the tool name, which is insufficient for an AI agent to confidently select it over siblings like git_diff or git_show.

    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 guidance on timing parameters and on_timeout options, but it offers no context about when to use git_log versus other git tools. There is no mention of its primary use case (e.g., viewing commit logs) or alternatives, limiting the agent's ability to choose appropriately.

    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 explains explicit execution timing and the behavior of different on_timeout options (continue_background, kill, return_partial). This adds transparency beyond none annotations. However, it omits the core destructive behavior (removing a worktree) and the tool's actual effect.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness2/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is short but not concise. It opens with 'Kali Agent MCP tool' which adds no value. The content is skewed entirely toward timing, neglecting the main action, making it inefficient for an agent.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness1/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given 8 parameters, 2 required, no schema coverage, and an output schema, the description is grossly incomplete. It fails to explain the tool's purpose, required inputs, or output. Only a narrow aspect (timing) is covered, leaving the agent without sufficient information to invoke the tool correctly.

    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 0% schema description coverage, the description adds little to parameter understanding. It mentions timing parameters (expected_runtime_seconds, etc.) but does not define them or explain their relationship to the tool. Required parameters 'path' and 'worktree' are not described at all.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not explicitly state that the tool removes a git worktree. The core function is implied by the name but not articulated. The description instead focuses on execution timing, leaving the agent unclear about the tool's primary purpose.

    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 git_worktree_remove versus sibling tools like git_worktree_create or git_worktree_list. There is no context for selection or prerequisites. The only guidance is on choosing timing parameters, which is tangential to tool selection.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description must fully disclose behavior. It only covers timing behavior (expected_runtime, timeout, polling) but misses critical aspects: that it executes docker-compose commands, requirements for Docker availability, side effects like building images or starting containers, and error handling.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is moderately concise but contains redundancy ('Kali Agent MCP tool'). It front-loads the tool name but then dives into timing details without a clear structure. Could be streamlined.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness1/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    With 10 parameters and only 1 required, the tool is complex. The description fails to explain the fundamental operation (docker-compose action), how to specify the compose file (path), or what actions the tool supports (default 'ps'). Even with an output schema, the description is severely incomplete for an AI agent to use effectively.

    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 0%, yet the description only explains timing parameters (on_timeout, timeout_seconds, etc.) without adding meaning to the docker-specific parameters (path, action, build, detach, services). The core parameters are left entirely to the schema, which minimally explains them.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description begins with 'Kali Agent MCP tool: docker_compose' but never states what the tool actually does (e.g., manage Docker Compose deployments). It focuses entirely on timing parameters, leaving the core purpose vague. Sibling tools like docker_run and docker_compose are distinct, but no differentiation is provided.

    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?

    Provides guidance on when to use 'continue_background' vs 'kill'/'return_partial' for on_timeout, which is useful. However, it fails to give any context on when to use docker_compose instead of sibling Docker tools (docker_build, docker_run, etc.), leaving the agent without selection criteria.

    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?

    Describes explicit execution timing and on_timeout options (continue_background, kill, return_partial), which adds useful behavioral context beyond the schema. However, does not disclose actual diff behavior, permissions, or side effects.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Description is relatively concise (3 sentences) but poorly structured: it starts with the tool name then immediately jumps to timing details rather than stating purpose. Could be reordered for clarity.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness1/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given 10 parameters, 0% schema description, and no annotations, the description is grossly incomplete. It ignores most parameters, doesn't explain what the tool returns (despite having an output schema), and provides no context for the diff operation itself. An agent cannot use this tool correctly without missing essential information.

    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 coverage is 0%, so description must explain parameter meaning. It only explains timing-related parameters (expected_runtime_seconds, timeout_seconds, etc.) and on_timeout. Core diff parameters like ref, path, staged, file_path, context_lines are completely unexplained, leaving agent unable to understand their purpose.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    Description fails to state what git_diff does (e.g., compute differences between commits or working tree). Focus is on execution timing, not on the core operation. Does not distinguish from siblings like git_show or git_log.

    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 on when to use git_diff vs alternative git tools. Only gives advice on selecting timeout parameters, which is orthogonal to use-case 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?

    With no annotations, the description carries the full burden. It details execution timing behavior, timeout handling, and job_id for background tasks. However, it does not disclose the output format or side effects on the browser state. Partial transparency.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Three sentences, but the first sentence redundantly restates the name. The key execution timing guidance is front-loaded. Could be more concise by stating the purpose first and then timing details. Middle ground.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given 9 parameters, many browser siblings, and no output schema visibility, the description is incomplete. It ignores the main purpose and key parameters, failing to differentiate from similar browser tools. The timing advice is overly specific for a missing core.

    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 0%, so the description must add meaning. It explains timing-related parameters (expected_runtime_seconds, timeout_seconds, etc.) but omits core parameters like session_id, name, selector, and full_page. These are critical for screenshot functionality and are left unexplained.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not explicitly state what the tool does (e.g., 'capture a screenshot of the browser'). It assumes the purpose from the name, but the verb 'screenshot' is implied. The description primarily discusses execution timing parameters, not the core action.

    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 usage guidance for timing parameters and on_timeout options, but does not indicate when to use this tool compared to sibling browser tools like browser_click or browser_html. No alternatives or context for selection are given.

    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?

    With no annotations, the description must disclose behavioral traits. It explains timing parameters and timeout handling, including the ability to run in background with a durable job_id. However, it omits other important behaviors such as image pulling, container lifecycle, or default of detach=true. Partial transparency is achieved.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is brief (two sentences) and front-loads the tool name, followed by timing advice. While concise, it is poorly structured as it starts with a redundant prefix and jumps into details without establishing context. Every sentence earns its place, but the overall structure could be improved.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool's complexity (14 parameters, output schema) and zero description coverage in the schema, the description is severely incomplete. It covers only a subset of parameters and does not explain the core function, return value, or side effects. Essential context for correct invocation is missing.

    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 0%, so the description must compensate. It only describes the five timing parameters (expected_runtime_seconds, timeout_seconds, check_after_seconds, poll_interval_seconds, on_timeout) but ignores the other nine parameters (e.g., env, ports, command, volumes). This leaves most parameters unexplained.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not explicitly state that the tool runs a Docker container. It begins with 'Kali Agent MCP tool: docker_run', which is a tautology, and then focuses on execution timing without defining the core action. Given sibling tools like docker_build, docker_exec, and docker_compose, the purpose is vague and relies on the tool name for inference.

    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 docker_run versus alternatives such as docker_exec or docker_compose. The description only advises on choosing timing parameters and on_timeout behavior, which is helpful but does not address selection relative to sibling tools.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Annotations are absent, so the description must fully disclose behavioral traits. It only covers timeout and background execution behavior, but omits critical details: whether the tool modifies files, required dependencies, side effects, or resource usage. Minimal transparency beyond timing.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is somewhat verbose and repetitive (e.g., repeats parameter names). The opening line is awkward and not focused on purpose. It could be more concise and better structured by stating the tool's function first before diving into timing details.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool has 8 parameters, no schema descriptions, and a complex execution model, the description is insufficiently complete. It does not explain what linting involves, what output to expect (though output schema exists but is not described), or prerequisites. The focus on timing overshadows other essential context.

    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 0%, so the description must compensate. It explains the meaning of timing parameters (expected_runtime_seconds, timeout_seconds, etc.) and on_timeout options well, but does not clarify path, command, or background parameters. Partial coverage improves understanding but leaves gaps.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The name 'lint_project' suggests linting a project, but the description does not explicitly state what the tool does (e.g., runs a linter, checks code style). It focuses on execution timing rather than the core purpose. The purpose is vague and not clearly distinct from sibling tools like typecheck_project.

    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 lint_project versus alternatives like typecheck_project or run_tests. It only discusses timing parameter choices, not contextual usage scenarios. No when-to-use or when-not-to-use information is given.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations provided, the description must disclose behavioral traits. It explains execution timing and background job handling, but fails to mention that the tool runs a network scan, its typical network behavior, required permissions, or what happens when a scan is error-prone. The absence of basic behavioral context (e.g., 'conducts HTTP requests to a target') harms transparency.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is relatively concise at about 60 words, but it front-loads a generic 'Kali Agent MCP tool' header without adding value. The structure prioritizes timing details over core purpose. While not verbose, it could be more efficient by leading with the scanning function.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool complexity (7 parameters, security scanning) and lack of schema descriptions, the description is incomplete. It does not mention the output schema (although one exists), the scanning scope, or how it integrates with the agent's workflow. The focus on timing alone leaves significant gaps in understanding the tool's full behavior and applicability.

    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 0%, so the description should explain all parameters. It explains timing parameters (expected_runtime_seconds, timeout_seconds, etc.) and on_timeout semantics, but does not describe the required 'target' parameter or 'additional_args'. The core parameters are left unexplained, limiting the agent's ability to set them correctly.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not explicitly state that the tool performs a Nikto web vulnerability scan. It only mentions 'nikto_scan' and 'Kali Agent MCP tool', but lacks a clear verb+resource. Sibling tools like nmap_scan have similar vagueness, but given the name, the purpose is somewhat implied, though not clearly articulated.

    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 provides guidance on choosing timing parameters and on_timeout values (e.g., use 'continue_background' for long work, 'kill' or 'return_partial' for synchronous). However, it does not differentiate when to use this scanning tool over siblings like nmap_scan, dirb_scan, or sqlmap_scan. The guidance is limited to execution timing, not 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 description details the behavior of execution timing and timeout handling, which is useful. However, it does not disclose whether the tool is read-only, what permissions are needed, or any side effects. With no annotations, this leaves a gap in transparency.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is four sentences long but starts with a tautological phrase. It front-loads timing details rather than the core purpose. It could be more concise and better structured by stating the tool's main action first.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool has 8 parameters, no schema descriptions, and no annotations, the description is incomplete. It does not mention the output schema or explain three key parameters. The core function is not stated, leaving the agent with significant gaps.

    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?

    The input schema has 8 parameters with 0% description coverage. The description explains only the execution timing parameters (expected_runtime_seconds, timeout_seconds, check_after_seconds, poll_interval_seconds, on_timeout) but fails to explain the filter parameters: user, limit, and state. This leaves most parameters semantically opaque.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description starts with 'Kali Agent MCP tool: service_list' which is a tautology, and then focuses entirely on execution timing parameters without stating the core function of listing services. It fails to explicitly describe what the tool does, leaving the purpose unclear.

    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 guidance on choosing on_timeout values but offers no comparison to sibling tools like service_action, service_logs, or service_status. It does not specify when to use service_list instead of alternatives.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, and the description does not disclose behavioral traits such as read-only/read-write, authentication requirements, or output format. It only covers timing behavior, leaving key aspects opaque.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is relatively short (two sentences) but could be better structured. The purpose is not front-loaded; it begins with 'Kali Agent MCP tool: service_logs' followed by execution timing details, which is not the most intuitive organization.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool's complexity (10 parameters, no schema descriptions, no annotations) and the presence of an output schema, the description is incomplete. It fails to cover basic usage, output expectations, or differentiate from similar tools, leaving the agent with insufficient information.

    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 0% schema description coverage, the description partially explains five timing parameters but omits other important parameters like 'user', 'lines', 'since', 'priority', and even the required 'service' parameter. This leaves gaps in understanding parameter usage.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not explicitly state that the tool retrieves service logs; it focuses on timing parameters instead. The name 'service_logs' hints at the purpose, but the lack of a clear 'Fetches logs for a service' statement makes it vague.

    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 provides guidance on when to use different 'on_timeout' values (e.g., 'continue_background' for long work, 'kill' or 'return_partial' for bounded work). However, it does not differentiate from sibling tools like 'docker_logs' or 'audit_log', leaving selection criteria 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 description reveals that the tool can spawn background jobs and return job IDs for asynchronous tracking, which is useful behavioral information beyond what annotations might provide (none given). However, it does not clarify whether the tool is read-only or destructive.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is relatively concise but could be improved by stating the tool's purpose first before diving into timing details.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool has 7 parameters and an output schema, the description should provide a clear overview of the tool's function and key parameters. It lacks basic information like what 'service' refers to and what the output contains.

    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 0% schema description coverage, the description only explains the timing parameters and on_timeout values, leaving the 'user' parameter completely undocumented. This is insufficient.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not explicitly state that the tool retrieves the status of a service; it focuses on execution timing and background job behavior, leaving the core purpose ambiguous.

    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?

    While it provides guidance on choosing on_timeout values, it does not explain when to use this tool over sibling tools like service_list or service_action.

    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?

    With no annotations, the description partially discloses behavior related to execution timing and timeout handling. However, it fails to indicate whether the tool is read-only, its output structure, or prerequisites (e.g., Docker running). The behavioral disclosure is limited to a specific sub-aspect.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single paragraph but does not front-load key information (purpose). It contains redundant phrasing ('Kali Agent MCP tool: docker_inspect') and could be more concise. It earns a 3 for being minimally acceptable but not efficient.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool has 6 parameters and an output schema, the description lacks completeness: it does not explain the main action, the required 'target' parameter, or the return value. The description covers only the timeout behavior, leaving major gaps for appropriate invocation.

    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 description adds meaning to the timeout-related parameters (expected_runtime_seconds, on_timeout, etc.) by explaining their use cases. However, the required 'target' parameter is completely unexplained, and with 0% schema coverage, this is a significant gap.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not explicitly state what docker_inspect does; it only repeats the name and discusses execution timing. The purpose is vaguely implied by the tool name but is not clarified, leaving the agent unsure of the tool's 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/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 docker_inspect versus its siblings (e.g., docker_logs, docker_ps). The description focuses solely on timeout parameters, not on the tool's selection context.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description carries full burden. It mentions explicit execution timing and on_timeout behavior, but it does not disclose potential destructive impact on the target, required permissions (e.g., root, network access), or that it performs password cracking attacks. The behavioral transparency is insufficient.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is relatively short (2-3 sentences), but it is not well-structured. It begins with a label and then jumps into execution timing details without a logical flow. There is some repetition in explaining the same on_timeout options. It could be more concise and better organized.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool's complexity (13 parameters, no annotations, and an output schema referenced but not described), the description is incomplete. It only covers timing aspects and fails to explain the tool's core purpose, parameter semantics, output, or behavioral implications. The description does not provide a complete picture for correct usage.

    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 0%, yet the description only explains the timing/execution parameters (expected_runtime_seconds, timeout_seconds, etc.) and on_timeout. It does not clarify core parameters like 'target', 'service', 'password', 'username', or their expected formats. With 13 parameters and no schema descriptions, the description fails to compensate adequately.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose3/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description starts with 'Kali Agent MCP tool: hydra_attack', which provides context but does not explicitly state the tool's function. The name suggests a Hydra attack, but the description focuses on execution timing rather than specifying what the tool does (e.g., password cracking). It is distinguishable from siblings like nmap_scan or sqlmap_scan but lacks a clear purpose statement.

    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 gives explicit guidance on when to use 'continue_background' vs 'kill' or 'return_partial' for execution timing, but it does not provide any comparative guidance for choosing this tool over sibling attack tools (e.g., nmap_scan, sqlmap_scan). It misses when-not-to-use and alternatives.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description must fully disclose behavior. It mentions timing and on_timeout behavior but does not cover sandboxing, security, output handling, or error conditions. Critical behavioral traits are omitted.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is concise with no extraneous words. It front-loads the tool name and delivers specific guidance on timing parameters efficiently. However, it lacks an introductory sentence stating the tool's purpose.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given 10 parameters, no annotations, and an existing output schema, the description should cover core functionality, return values, and dependencies. It focuses narrowly on timing, leaving major gaps in overall behavior and usage context.

    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 description adds meaning for timing-related parameters (expected_runtime_seconds, timeout_seconds, etc.) and explains on_timeout options. However, it does not explain cwd, command, env, network, or writable_roots. With 0% schema coverage, more comprehensive parameter explanation is needed.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description states 'Kali Agent MCP tool: sandbox_exec' but does not explicitly state what the tool does with a verb+resource. It implies execution via 'explicit execution timing' but the core action is unclear.

    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 guidance on when to use different on_timeout options (background vs synchronous) but does not explain when to choose sandbox_exec over sibling tools like exec_command or docker_exec. No alternative context is provided.

    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?

    No annotations exist, so the description must cover behavioral traits. It explains execution timing and timeout handling but does not disclose whether the browser is sandboxed, supports JavaScript, or how multiple calls interact. The return value (durable job_id for continue_background) is mentioned, but other behaviors are omitted.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is moderately concise (about 70 words) but is poorly structured: it opens with a redundant title phrase, then jumps into timing details. The core purpose is missing, so it requires restatement.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the lack of annotations and 0% schema description, the description fails to provide a complete picture. It leaves unclear the browser environment, default URL behavior, and relationship to sibling tools. An output schema exists but its contents are not described.

    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 coverage is 0%, so the description should explain all 9 parameters. It only explains on_timeout values and mentions expected_runtime_seconds, timeout_seconds, check_after_seconds, and poll_interval_seconds by name, but does not explain url, width, height, or headless. Four parameters are completely undocumented.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not explicitly state that the tool opens a browser and navigates to a URL. It starts with 'Kali Agent MCP tool: browser_open' which is essentially the name, then immediately dives into timing parameters. The primary action is implied but not clearly articulated, making it vague.

    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 provides guidance on choosing timing parameters and the use of on_timeout values (continue_background, kill, return_partial), but it does not differentiate browser_open from sibling tools like browser_navigate or browser_list. No alternatives or exclusions are mentioned.

    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?

    No annotations are provided, so the description carries full burden. It discloses that explicit execution timing is supported, explains on_timeout behavior, and mentions that 'continue_background' returns a durable job_id. However, it does not describe side effects, permission requirements, or failure behavior.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is relatively short (two sentences) but could be more efficiently structured. The first sentence repeating the tool name is unnecessary. The second sentence provides useful parameter advice but could be broken into bullet points for clarity.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    With 8 parameters, 0% schema coverage, and no annotation, the description should cover more. It omits explanation of critical parameters like path and command, and does not describe the output schema even though one exists. The description is incomplete given the tool's complexity.

    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 0%, so the description must add meaning. It explains timing-related parameters (expected_runtime_seconds, timeout_seconds, check_after_seconds, poll_interval_seconds, on_timeout) but does not mention path, command, or background, leaving those parameters unexplained. The explanation is partial and insufficient.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not clearly state what the tool does beyond the name 'install_dependencies'. It focuses on execution timing parameters but fails to describe the core functionality. It does not distinguish this tool from siblings like exec_command or sandbox_exec.

    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 provides guidance on how to set parameters like expected_runtime_seconds and on_timeout, with specific advice on when to use 'continue_background' vs 'kill'. However, it lacks explicit guidance on when to choose this tool over alternatives, missing tool selection context from sibling list.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description must fully disclose behavior. It mentions that 'continue_background' returns a durable job_id for later use, and that 'kill' or 'return_partial' are for bounded work. However, it does not cover other important aspects like whether the tool is read-only, what happens on timeout with 'return_partial', or any side effects. This leaves significant gaps in transparency.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is relatively short but includes a redundant prefix ('Kali Agent MCP tool: run_tests'). The key content (timing guidance) is front-loaded after the prefix, but the initial sentence is not the most direct statement of purpose. It could be more concise by removing the prefix and starting with the action. Structure is adequate but not optimal.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given 8 parameters with no schema descriptions, no annotations, and an output schema (not detailed), the description does not fully equip the agent. It lacks explanation of the core 'command' and 'path' parameters, the 'background' flag, and the overall outcome beyond timing. The output schema existence reduces the need to describe return values, but essential context for using the tool is missing.

    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 0%, so the description must compensate. It explains 5 of the 8 parameters (expected_runtime_seconds, timeout_seconds, check_after_seconds, poll_interval_seconds, on_timeout) and their meanings, including details on on_timeout values. However, it omits 'path', 'command', and 'background', which are important for core usage. This partial coverage earns a middle score.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose3/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description states the tool is 'run_tests' but focuses on timing parameters rather than explicitly explaining that it executes tests. The core action is clear from the name, but the description does not elaborate on what tests are run or how. This is adequate but not explicit.

    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 guidance on choosing timing parameters and on_timeout values for different scenarios (long work vs bounded synchronous work). However, it lacks comparison to sibling tools like 'exec_command' or 'run_benchmark', failing to clarify when to use this tool over alternatives. This is insufficient for an agent to decide when to use it.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description must disclose behavioral traits. It only covers timing behavior (explicit execution timing and timeout handling). It omits key behaviors like the navigation effect (loads a URL), side effects (changes current page), required session state, or any potential destructive actions. The description is insufficient for understanding the tool's full behavior.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is short (two sentences) but poorly structured. The first sentence redundantly names the tool without adding value. The second sentence launches into timing parameters without first stating the tool's purpose. It could be more concise by front-loading the core action, but it is not overly verbose.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool complexity (9 parameters, core navigation action, timing subtleties), the description is incomplete. It does not state the primary function, explain required parameters (url, session_id), or provide context on navigation outcomes (e.g., page loaded state). The output schema exists, but the description still lacks necessary context for correct usage.

    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 0%, so the description must compensate. It explains the timing parameters (expected_runtime_seconds, timeout_seconds, check_after_seconds, poll_interval_seconds, on_timeout) but ignores core parameters url and session_id. It also doesn't explain wait_until or timeout_ms. The addition is partial and leaves significant ambiguity.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose3/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not explicitly state that the tool navigates the browser to a URL. Instead, it emphasizes execution timing parameters. The name 'browser_navigate' implies the purpose, but the description lacks a clear statement of the core function, making it somewhat vague. It does not differentiate from sibling tools like browser_open.

    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 provides guidance on choosing timing parameters and handling timeouts (use 'continue_background' for long work, 'kill' or 'return_partial' for bounded work). However, it does not explain when to use this tool versus alternative browser tools, nor does it mention prerequisites or context for use.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description must disclose behavioral traits. It mentions explicit execution timing and background job capability, but omits whether the tool is destructive, what it actually does (preview of clean), and any permissions or side effects. The core behavior is missing.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is relatively concise at three sentences, with key advice front-loaded. However, the first sentence is redundant ('Kali Agent MCP tool: git_clean_preview') and could be removed without loss. Overall efficient but not maximally lean.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given 8 parameters, no schema descriptions, many sibling tools, and an output schema (unreferenced), the description is incomplete. It fails to explain the tool's primary action, output, or critical parameters like path. The focus on timing overshadows essential context.

    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 0%, so the description must compensate. It explains timing parameters (expected_runtime_seconds, timeout_seconds, check_after_seconds, poll_interval_seconds) and on_timeout values. However, it ignores path, ignored, and directories, which are critical to the tool's action. Partial coverage improves over nothing.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not state what the tool does. It only says 'Kali Agent MCP tool: git_clean_preview' and then discusses execution timing. It fails to indicate that this tool previews a git clean operation, leaving the purpose ambiguous. Compared to sibling tools like git_status or git_diff, it lacks 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/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides guidance on when to use different on_timeout values (continue_background vs kill/return_partial), implying usage context for long vs bounded work. However, it does not specify when to use this tool instead of other git tools or how it fits into a workflow.

    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?

    Without annotations, the description carries the full burden. It explains the behavior of timeout options (continue_background, kill, return_partial) and that continue_background returns a durable job_id, adding useful transparency. However, it does not disclose that the tool is read-only or non-destructive.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is short (3 sentences) and front-loads the tool name. It avoids unnecessary words, but the structure could be improved by stating the purpose before diving into timing details.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given 7 parameters, 0% schema coverage, and an output schema, the description is incomplete. It omits the fundamental purpose of the tool (showing git status) and does not mention that an output schema exists. The execution timing details are over-emphasized relative to the tool's core function.

    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 0%, so description must compensate. It explains the timing parameters (expected_runtime_seconds, timeout_seconds, etc.) and their intended use, adding value beyond the schema. However, it does not explain 'path' or 'porcelain' parameters, which are core to git_status.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description primarily restates the tool name ('git_status') without explaining what git status does (e.g., show changes in working tree). The focus on execution timing obscures the core purpose. Compared to siblings like git_diff or git_log, the description does not clarify why one would use this tool.

    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 on when to use git_status versus other git tools (e.g., git_diff, git_log). The description only discusses configuration of timing parameters, not the semantic context for choosing this tool over 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?

    With no annotations, the description partially discloses behavioral traits by explaining the execution timing parameters and their effects (e.g., on_timeout for background jobs). However, it does not state whether the tool is read-only or what it returns.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is relatively concise but misallocated: it focuses entirely on execution timing while omitting the tool's primary function. It could be more effective by front-loading the purpose.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Despite the presence of an output schema, the description fails to explain the core action (listing worktrees). For a simple list tool in a security context, the description is incomplete.

    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 description adds meaningful semantics for 5 of the 6 parameters (expected_runtime_seconds, timeout_seconds, check_after_seconds, poll_interval_seconds, on_timeout), explaining their purpose and usage. This compensates for the 0% schema coverage, though the 'path' parameter is not mentioned.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not explicitly state that the tool lists Git worktrees. It only repeats the tool name and then discusses execution timing parameters, leaving the core purpose unclear.

    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 its siblings (e.g., git_worktree_create, git_worktree_remove). The description only covers timing parameters, not 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?

    No annotations are provided, so the description must fully disclose behavior. It describes explicit execution timing and timeout handling, which adds value beyond the schema. However, it omits details like whether the search is recursive, handles binary files, or supports regex. The description partially compensates for missing annotations but is incomplete.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is moderately concise but includes unnecessary repetition (e.g., 'Kali Agent MCP tool: search_text') and focuses heavily on timing parameters at the expense of explaining the tool's primary function. It could be restructured to state the purpose first, then detail parameters.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Despite having an output schema, the description does not explain the return value or fields. With 11 parameters, no schema descriptions, and no guidance on prerequisites or edge cases, the description is insufficient for an agent to use the tool correctly in diverse scenarios. The timing advice is helpful but not enough for completeness.

    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?

    The schema description coverage is 0%, so the description must explain all parameters. It covers the timing parameters (expected_runtime_seconds, timeout_seconds, etc.) but fails to explain core search parameters like 'query', 'root', 'glob', 'limit', 'literal', and 'case_sensitive'. The description adds minimal meaning for most parameters, relying on the schema's defaults and names.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose3/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not explicitly state that the tool searches file content; it focuses on execution timing. The name 'search_text' hints at the purpose, but the description lacks a clear verb+resource statement. The input schema shows 'root' and 'query' parameters, implying file content search, but the description does not confirm this or differentiate from sibling tools like 'find_files'.

    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 guidance on timeout settings (e.g., use 'continue_background' for long work) but does not explain when to use this tool versus alternatives like 'find_files', 'symbol_search', or grep-like commands. There is no mention of use cases or prerequisites.

    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?

    With no annotations, the description partially discloses behavior: it explains execution timing, how on_timeout works, and that 'continue_background' returns a durable job_id. However, it does not mention that the tool will perform a network scan, its potential destructiveness, or prerequisite permissions.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is relatively short (4 sentences) and front-loads the tool name. It could drop the redundant 'Kali Agent MCP tool: ' prefix, but overall it is efficiently structured and wastes few words.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool's complexity (8 parameters, no schema descriptions, no annotations), the description is incomplete. It lacks the tool's core purpose, return value description, prerequisites, and how results are interpreted. The output schema exists but is not referenced.

    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 0%, so the description must add meaning. It explains the intent behind expected_runtime_seconds, timeout_seconds, check_after_seconds, poll_interval_seconds, and on_timeout. However, it fails to describe the required 'url' parameter or other options like 'data' and 'additional_args', which are critical for a scanning tool.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description states 'Kali Agent MCP tool: sqlmap_scan' but does not clarify that the tool runs sqlmap for SQL injection detection. It focuses on execution timing parameters, leaving the core purpose vague. Sibling tools like nmap_scan or nikto_scan are not 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/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides guidance on choosing timing parameters and on_timeout options, but no guidance on when to use sqlmap_scan versus other scan tools (e.g., nmap_scan, nikto_scan). It lacks context about its specific use case (SQL injection).

    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 transparently describes execution timing behaviors (expected_runtime_seconds, timeout handling, polling). However, it omits the tool's actual behavioral impact (e.g., performing HTTP requests, potentially intrusive scanning), leaving the agent uninformed about side effects or resource usage.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is moderately concise but poorly structured; it front-loads a generic header and then focuses entirely on timing. The core purpose is missing, and the information about timing could be secondary to a clear purpose statement.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Despite having parameters and an output schema, the description fails to specify the tool's main function (WordPress security analysis). It only covers execution mechanics, leaving a critical gap. The description is incomplete for proper tool understanding.

    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 description adds meaning to 5 of 7 parameters (expected_runtime_seconds, timeout_seconds, check_after_seconds, poll_interval_seconds, on_timeout) by explaining their role in execution flow. It does not explain the critical 'url' parameter or 'additional_args', but the coverage of timing parameters is valuable.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not state the tool's core function (e.g., scanning a WordPress site for vulnerabilities). It only discusses execution timing, relying on the tool name to imply its purpose. This is vague and insufficient for an AI agent to understand what the tool does.

    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 like nmap_scan or nikto_scan. It only gives internal timing instructions (when to use continue_background vs kill/return_partial), which is not about tool selection.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description carries the full burden. It discloses timing behavior (supports explicit execution timing) but does not mention side effects, permissions, or whether the tool modifies files. It also does not explain the format or content of the output, which is important for a project analysis tool.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is two sentences, but the first sentence is awkwardly phrased as a title plus fragment. It is relatively concise but could be better structured to separate the purpose from parameter guidance.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Despite the complex timing parameters and an output schema (content unknown), the description does not explain what the tool returns or how results are presented. It also lacks context about prerequisites, project size considerations, or how the tool integrates with the project environment. This leaves significant gaps for a tool with 8 parameters.

    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 0%, so the description must compensate. It adds meaning to the timing-related parameters (expected_runtime, timeout, check_after, poll_interval, on_timeout) by explaining their use. However, it does not mention the path, command, or background parameters, leaving those without additional context.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose3/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description starts with a generic prefix and focuses on execution timing rather than clearly stating that the tool typechecks a project. The verb is implied by the name, but the description does not explicitly describe the action (e.g., 'typechecks code for type errors'). It does not differentiate from similar tools like lint_project.

    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 provides detailed guidance on how to choose timing parameters (expected_runtime_seconds, timeout_seconds, etc.) and explains the on_timeout options. However, it does not tell when to use this tool over alternatives (e.g., when to use typecheck_project vs. lint_project or run_tests).

    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?

    With no annotations, the description must fully disclose behavior. It mentions execution timing, background job support, and job_id returns, which is good. But it does not describe side effects (e.g., file modifications, backup behavior, or whether the patch is applied in-place), leaving uncertainty about the tool's impact.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is moderately concise but front-loaded with a generic 'Kali Agent MCP tool' prefix and a sentence about execution timing that could be more integrated. It could be restructured to state the primary operation first, then timing options, for better agent comprehension.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given 10 parameters, 0% schema coverage, and no output schema description, the description is incomplete. It does not explain the return value (though an output schema exists), parameter defaults, or validation. An agent would struggle to use this tool effectively without additional information.

    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?

    The schema has 10 parameters with 0% description coverage, so the description must compensate. It explains 5 timing-related parameters (expected_runtime_seconds, timeout_seconds, check_after_seconds, poll_interval_seconds, on_timeout) but ignores critical parameters like 'patch_text', 'cwd', 'strip', 'check_only', and 'make_backup'. This omission leaves an agent unable to use the tool correctly without additional knowledge.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose3/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description implies the tool applies a patch via its name, but never explicitly states what 'apply_patch' does (e.g., apply a unified diff to files). It focuses on execution timing options, leaving the core action vague. This makes it difficult for an agent to distinguish from sibling tools like 'revert_patch' or 'exec_command'.

    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 provides guidance on when to use different timeout behaviors (continue_background vs kill/return_partial), which is helpful. However, it lacks any comparison to sibling tools or context on when applying a patch is appropriate versus using other patch-related or execution tools.

    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?

    With no annotations, the description explains important behavioral details: execution timing, on_timeout options, and durable job_id for background tasks. However, it omits side effects like modifying git history.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is verbose and repeats the tool name. It front-loads timing instructions instead of stating the primary function. Could be more concise and structured.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Tool has 9 parameters and no schema descriptions; the description only covers timing and timeout behavior. Missing context on return value, side effects, prerequisites (e.g., staged changes), and implications of committing.

    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?

    The description explains timing parameters but does not clarify core parameters like 'path', 'message', 'all_tracked', or 'allow_empty'. Since schema descriptions are missing (0% coverage), the description should compensate but only partially does.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose3/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description does not explicitly state the tool's purpose; it focuses on execution timing. The name 'git_commit' implies committing changes, but the description should clarify that it creates a git commit in a repository.

    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 on when to use git_commit versus sibling git tools like git_add or git_checkout. It only provides timing setup instructions but not usage context or prerequisites.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations provided. The description explains timing and job_id return for long runs, but fails to disclose potential side effects of running exploits (e.g., system modification, need for privileges, risk of crashes). The agent cannot infer safety or permission requirements from this description.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Two sentences – the first is somewhat redundant (repeats tool name), the second packs useful timing guidance. Could be more concise without the prefix. Overall acceptable but not tight.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    With 8 parameters, a required 'module', and an output schema (not shown), the description covers timing but omits module selection, options syntax, and return value shape. No mentions of prerequisites or environment. Lacks completeness for a powerful tool like Metasploit.

    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 coverage is 0%, so description must compensate. It explains timing parameters (expected_runtime_seconds, timeout_seconds, etc.) and on_timeout semantics. But critical parameters like 'module', 'action', and 'options' are left unexplained (options is a free-form object). The description adds value for timing but not for core execution parameters.

    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 identifies the tool as running Metasploit modules (via 'module' parameter) and mentions timing control. However, it opens with 'Kali Agent MCP tool: metasploit_run' which is redundant, and the core action of running a Metasploit exploit is not explicitly stated. Still, it distinguishes from sibling scanning tools like nmap_scan.

    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?

    Provides specific guidance on when to use different on_timeout values (background vs synchronous work). But no guidance on when to use this tool over alternatives (e.g., when to run Metasploit vs nmap). The advice is useful for timing but lacks broader context.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description carries full burden. It does not disclose whether the tool is destructive, requires specific permissions, or has side effects. While it explains timeout behavior, it omits critical behavioral traits for a tool that likely modifies service state.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is concise at 3 sentences, with no superfluous language. It could be more front-loaded by stating the core action first, but overall it is efficient.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool has 8 parameters (2 required) and no schema descriptions, the description should provide a complete overview. It focuses on timing parameters but omits the core function and required parameters. The presence of an output schema may partially compensate, but the description itself feels incomplete for an agent.

    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 0%. The description explains the purpose of expected_runtime_seconds, timeout_seconds, check_after_seconds, poll_interval_seconds, and on_timeout, including the values for on_timeout. However, it does not explain the required parameters 'service' and 'action', or the 'user' parameter, leaving a gap.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose3/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description implies the tool performs an action on a service with explicit timing control, but it never explicitly states the core function. It focuses on timing parameters and job management rather than stating 'perform an action on a service'. This leaves purpose somewhat vague.

    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 provides guidance on choosing on_timeout values for background vs synchronous work, but does not compare to sibling service tools (service_list, service_status, service_logs) or specify when this tool should be used over them. It gives partial 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?

    With no annotations, the description carries the burden. It discloses timeout and polling behavior, and deprecation of poll_interval. However, it does not mention blocking behavior, error handling, or idempotency, leaving gaps in transparency.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Two concise sentences with no fluff. The first states purpose, the second clarifies parameter aliases. Slightly could be improved by front-loading the most critical information, but overall efficient.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given no annotations, output schema exists but is not described, and 4 parameters (1 required), the description is too brief. It fails to explain return value structure, error scenarios, or prerequisites (e.g., job must exist). Leaves important context unaddressed.

    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 0%, so the description must compensate. It adds meaning for timeout_seconds and poll_interval_seconds (timeout and polling cadence) and notes poll_interval as compatibility alias. But job_id is not explained, and defaults are not mentioned, leaving significant semantic gaps.

    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 action ('Wait for a durable job') and specifies key parameters (timeout, polling cadence). It distinguishes from siblings implicitly by focusing on waiting, but does not explicitly contrast with tools like job_status or job_start.

    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 explicit guidance on when to use this tool vs alternatives. Missing context such as 'use after starting a job with job_start' or 'prefer job_status for immediate status checks'. Only implies usage through the description of waiting.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations provided, so description carries full burden. It states it checks permission but does not disclose whether it is read-only, what happens on failure, or any side effects. Minimal behavioral context.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Single sentence, concise and front-loaded. However, it could be slightly expanded to include brief parameter context without losing 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?

    Given the simple tool and presence of output schema, the description covers the core function but lacks detail on behavior and usage. Adequate but with gaps.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Description does not mention the parameters 'path' or 'must_exist'. With 0% schema description coverage, the description fails to add any meaning beyond what is in the schema, leaving the agent without guidance on parameter usage.

    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 verb 'check' and resource 'path', and specifies the check is about permission against configured filesystem roots. This distinguishes it from other path-related tools like file_stat or read_file.

    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 on when to use this tool versus alternatives. It does not mention when not to use it or provide context for choosing it over similar tools like file_stat.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description must cover behavioral traits. It explains timeout behavior but does not mention side effects (e.g., file modifications), destructive potential, or prerequisites. Key information about the actual command execution is absent.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is only two sentences, which is concise. However, the first sentence is somewhat redundant. The structure is adequate but could be improved by front-loading the core purpose.

    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?

    Given the 8 parameters and lack of schema descriptions, the description covers timing aspects but leaves out what the tool fundamentally does (runs a build command) and basic parameter explanations. An output schema exists, so return value details are not needed, but overall completeness is moderate.

    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 0%, so the description must compensate. It adds meaning for timing parameters (expected_runtime_seconds, timeout_seconds, etc.) and on_timeout behavior, but does not explain the purpose of 'path' or 'command' parameters, leaving gaps.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose3/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description mentions 'build_project' but does not explicitly state that it runs a build command. It is vague about what 'building a project' entails, and does not distinguish it from other command execution tools like exec_command or execute_command.

    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 guidance on when to use different on_timeout values (continue_background for long work, kill/return_partial for synchronous work). However, it does not compare this tool to sibling tools, so guidance on when to use build_project instead of other command tools is missing.

    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?

    With no annotations provided, the description carries the full burden. It discloses timing behavior, timeout handling, and the ability to get a job_id for background builds. It mentions job_status, job_logs, job_wait for later checks. Missing info: potential side effects (e.g., modifying local Docker state), required Docker daemon, authentication needs.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single paragraph that front-loads the tool name but immediately dives into timing details. It could be more concise by separating the core purpose from usage instructions. The structure is acceptable but not optimal.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The tool has 10 parameters, 1 required, no annotations, and an output schema (not shown). The description only covers timing parameters, ignoring the main build operation, required parameter, and other options. It lacks information about return values or error handling. The tool is complex and the description is incomplete.

    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?

    The description adds meaning to timing parameters (on_timeout, timeout_seconds, check_after_seconds, poll_interval_seconds, expected_runtime_seconds) but completely neglects core parameters like tag, context, no_cache, build_args, dockerfile. Context is required and not explained. Schema coverage is 0%, so the description should compensate.

    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 starts with 'Kali Agent MCP tool: docker_build' and mentions 'build' in the context, but does not explicitly state 'Build a Docker image'. The purpose is implied by the tool name and the sibling tools include docker_run, docker_compose, etc. However, a more explicit statement would improve clarity.

    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 provides detailed guidance on selecting timing parameters and using different on_timeout options for long-running or bounded synchronous work. However, it does not compare this tool to siblings like docker_run or docker_compose, nor does it specify when to use docker_build over other image-related tools.

    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?

    With no annotations, the description must disclose behaviors. It covers timing and background job behavior but omits details like error handling, permissions, or exit code handling. Basic behavioral context is provided, but significant gaps remain.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is short (two sentences) and front-loaded with guidance. The redundant opening phrase 'Kali Agent MCP tool: docker_exec' adds no value, but overall it is efficiently structured.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given 10 parameters, no schema descriptions, and no output schema detail, the description is incomplete. It lacks fundamentals like return format, error modes, prerequisites, and environment variable usage, making it insufficient for reliable agent invocation.

    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 0%, so the description must compensate. It only vaguely mentions timing parameters without definitions and ignores required parameters (container, command). This provides minimal added meaning beyond parameter names.

    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 implies executing a command in a Docker container by referencing execution timing and Docker context, but it does not explicitly state the primary action. The focus on timing parameters makes the purpose clear enough, though it lacks differentiation from sibling tools like docker_run.

    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 explicit guidance on choosing timing parameters and on_timeout values for different scenarios (background vs synchronous), which helps the agent decide usage. However, it does not compare with alternatives like exec_command or docker_run, missing when-not 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?

    Discloses timing behavior and async/sync modes via on_timeout, but lacks details on side effects, auth requirements, or any destructive actions. No annotations to supplement.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Three sentences with clear front-loading of purpose and timing support. Efficient but could benefit from structured formatting for parameter explanations.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Despite having an output schema, the description misses basic usage instructions for essential parameters (hash_file, wordlist) and does not provide a comprehensive overview of the tool's functionality for a 9-parameter 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?

    Adds meaning for timing parameters (expected_runtime_seconds, timeout_seconds, etc.) and on_timeout, but does not explain core parameters like hash_file, wordlist, format_type, or additional_args. Schema provides no descriptions.

    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?

    Description clearly states it is a tool for running John the Ripper on a hash file with timing control. However, it does not explicitly differentiate from other cracking tools like hydra_attack.

    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?

    Provides explicit guidance on choosing timing parameters and on_timeout behavior, but does not mention scenarios where the tool should not be used or compare with alternatives.

    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?

    With no annotations, the description discloses key behavioral traits: execution timing support, timeout handling, and the difference between continue_background (returns job_id) and synchronous modes. It adds value beyond the schema but does not mention side effects like container termination signals.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is three sentences, no wasted words. First sentence is slightly awkward but informative. It is front-loaded with the tool name and then parameter guidance.

    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 thoroughly covers execution timing behavior but does not explain the primary action (stopping a container) or expected outcomes. Given the output schema exists but is not visible, and the tool has 6 parameters, the description is adequate but misses core function details.

    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 0%, requiring compensation. The description lists the timing parameters and explains on_timeout options, adding semantic context. However, it does not describe the 'container' parameter or define each parameter individually (e.g., expected_runtime_seconds). Partial compensation.

    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 name 'docker_stop' clearly indicates it stops a Docker container. The description adds 'Kali Agent MCP tool' but does not explicitly state the core function, though it is implied. It distinguishes from siblings like docker_remove and docker_run based on the name alone.

    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 focuses on parameter selection (e.g., on_timeout, timeout_seconds) but does not provide explicit guidance on when to use docker_stop versus other docker tools. Usage is implied from the tool name. No alternatives or exclusions are mentioned.

    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?

    With no annotations, the description carries the full burden. It discloses execution timing behavior and the effect of on_timeout on return type (job_id vs partial output). However, it omits details on security implications, environment variables (env), working directory (cwd), and output handling beyond the max_output_bytes parameter in the schema.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is two sentences: first states the purpose, second provides usage guidance. It is efficient with no fluff, though a bulleted or more structured format could improve readability for an agent.

    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?

    Given the tool's complexity (9 parameters, output schema present), the description covers timing and timeout behavior thoroughly but omits details on cwd, env, max_output_bytes, and the structure of the output. The presence of an output schema mitigates the need to describe return values, but the gaps in parameter context reduce completeness.

    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 0%, but the description explicitly explains the purpose of expected_runtime_seconds, timeout_seconds, check_after_seconds, poll_interval_seconds, and on_timeout. It does not explain command (required), cwd, env, or max_output_bytes, leaving those to the schema alone. Overall, partial compensation for the missing schema descriptions.

    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 action (execute) and resource (shell command) with explicit parameters for runtime, timeout, recheck interval, and timeout action. However, it does not differentiate from sibling tools like sandbox_exec, leaving the agent to infer when to use this specific execution tool over others.

    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 instructs the agent to deliberately choose timing parameters and provides guidance on when to use each on_timeout value: 'continue_background' for long work with job_id, or 'kill'/'return_partial' for bounded synchronous work. It does not, however, exclude scenarios where other tools might 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?

    With no annotations, the description explains timing behavior, the async nature via job_id, and the effect of different timeout strategies. Good coverage of behavioral traits, though does not address side effects or destruction.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single paragraph of 4 sentences, reasonably concise. It front-loads the tool identifier and then covers behavior. Could be slightly more structured but is efficient overall.

    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?

    Given 8 parameters with 0% schema descriptions and an output schema (unseen), the description lacks coverage of the command execution aspect (what path and command represent). It does not explain what a benchmark is or how results are returned, leaving gaps for a new user. Acceptable but incomplete.

    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 has 0% description coverage, so description must compensate. It explains the purpose of 5 parameters (expected_runtime_seconds, timeout_seconds, check_after_seconds, poll_interval_seconds, on_timeout). However, it ignores path, command, and background, which are critical. Adds meaning for most but misses key ones.

    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 implies running a benchmark with explicit timing, but does not explicitly state 'runs a benchmark command'. It mentions 'Kali Agent MCP tool: run_benchmark' which identifies the tool but does not fully clarify the action. Good, not perfect.

    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?

    Provides clear guidance on choosing on_timeout values for different scenarios: 'continue_background' for long-lived async work returning a job_id, versus 'kill' or 'return_partial' for bounded synchronous work. Does not compare to sibling tools but gives actionable usage advice.

    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?

    No annotations are provided, so description must disclose behavior. It mentions timing, timeout actions, and job_id returns, but lacks clarity on security implications, side effects, or output handling. Partially informative but leaves gaps.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Description is front-loaded with purpose and parameter list, but contains some redundancy (e.g., 'Explicit execution timing is supported' repeated). Could be slightly more concise.

    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 tool with 9 parameters and an output schema, the description covers timing parameters but omits details on cwd, env, and max_output_bytes. It mentions job_id for continue_background, which aligns with output schema, but overall completeness is moderate.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters4/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, but description adds meaning for many parameters (expected_runtime_seconds, timeout_seconds, etc.) and explains on_timeout values. However, parameters like cwd, env, and max_output_bytes are not elaborated.

    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?

    Description uses specific verb 'execute' and resource 'shell command', and distinguishes from siblings like 'sandbox_exec' by emphasizing explicit timing parameters.

    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?

    Provides guidance on when to use different timeout actions ('continue_background' for long work, 'kill'/'return_partial' for bounded sync work) but does not explicitly contrast with sibling tools like 'sandbox_exec'.

    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?

    No annotations provided, so the description carries the full burden. It explains that the job runs in the background, returns a durable job_id for later checks, and how timeout policies work. It does not mention destructive behavior or authentication needs, but the described behavior is complete enough.

    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 sentences, no filler. First sentence captures the main purpose, second provides actionable usage guidance. Every word earns its place.

    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?

    Given the high parameter count (9) and the presence of an output schema, the description covers the essential aspects. It mentions the durable job_id return and differentiates from sibling tools, providing enough context for correct invocation.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters4/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, so the description must compensate. It explains six key parameters (expected_runtime_seconds, timeout_seconds, check_after_seconds, poll_interval_seconds, on_timeout, and implicitly command) with usage details. However, it omits cwd, env, and name, which could leave gaps for an agent.

    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 it starts a durable background job with explicit execution timing policies. It distinguishes from sibling tools like job_cancel and job_status by focusing on the start action and timing choices.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines5/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    Explicitly advises to deliberately choose timing parameters and provides concrete guidance on when to use each on_timeout value (continue_background for long work, kill/return_partial for bounded synchronous work). This helps the agent select the right behavior.

    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

MCP-Connect MCP server

Copy to your README.md:

Score Badge

MCP-Connect 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/asarlashmit/MCP-Connect'

If you have feedback or need assistance with the MCP directory API, please join our Discord server