Skip to main content
Glama
raviraj-ntp

armorcode-mcp

by raviraj-ntp

Server Quality Checklist

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

  • Disambiguation4/5

    Most tools have clearly distinct purposes, especially for findings where each action (accept, confirm, mitigate, etc.) targets a specific status. However, the sheer number of finding-related tools (15+) could cause some confusion, particularly between armorcode_accept_risk and armorcode_block_finding, though descriptions clarify.

    Naming Consistency5/5

    All tools follow the consistent pattern of 'armorcode_verb_noun' with underscores, using predictable verbs like get, list, add, create, delete, search, etc. The naming is uniform and easy to understand across the entire set.

    Tool Count2/5

    With 37 tools, the count is well above typical well-scoped MCP servers (3-15) and exceeds the 25+ threshold for 'too many'. While the ArmorCode domain may have many operations, the tool surface feels overly granular, with many separate tools that could be parameterized.

    Completeness4/5

    The tool set covers the core ArmorCode workflows: findings (CRUD-like status changes, tagging, comments), scans, products, exceptions, and risk scores. Missing operations like deleting findings or updating products are minor gaps that do not severely hinder common use cases, especially with the armorcode_api escape hatch.

  • Average 2.5/5 across 37 of 37 tools scored. Lowest: 1.3/5.

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

    • No community issues in the last 6 months
    • 2 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

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

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior1/5

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

    Without annotations, the description bears full responsibility for behavioral disclosure. Only a single default value ('dryRun defaults true') is mentioned, with no explanation of side effects, commit behavior, required permissions, or outcomes. Critical behavioral context 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 short (one sentence) but severely under-specified. It fails to earn its place by omitting essential information; conciseness here sacrifices completeness, making the tool nearly unusable from the description alone.

    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 0% schema description coverage, no annotations, and no output schema, the description provides almost no contextual information. A user cannot understand what the tool does, how parameters work, or what to expect as a result.

    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 adds no meaning for three required parameters (findingId, exploitable, reason) beyond the schema types. Only 'dryRun' is mentioned with its default, leaving most parameters semantically 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 is a noun phrase ('Structured exploitable/notexploitable comment') that describes what the comment is, not what the tool does. It does not explicitly state the action (e.g., 'Adds...') nor the target object (finding), making the purpose ambiguous without relying on the tool name and parameters.

    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 siblings like 'armorcode_add_comment' (generic comment) or 'armorcode_set_product_exploitability'. No context for appropriate use cases or alternatives is given.

    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 the full burden. It only states that 'dryRun defaults true', which hints at a safe default but does not disclose any other behavioral traits (e.g., side effects, reversibility, required permissions, output).

    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 expense of completeness. While concise, it fails to communicate essential information about the tool's purpose, parameters, or behavior.

    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 domain (security risk acceptance) and the lack of output schema, the description is severely incomplete. It does not explain what the tool does, what the dryRun flag controls, or what happens after execution.

    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 value only for the 'dryRun' parameter by noting its default value. With 0% schema description coverage, the other three parameters (findingId, notes, reason) are left completely unexplained in both the schema and description.

    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 'Accept Risk' is essentially a tautology of the title and provides minimal clarity. It does not specify what 'accepting risk' entails in the context of ArmorCode, nor does it differentiate from sibling tools like 'armorcode_mitigate_finding' or 'armorcode_suppress_finding'.

    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 prerequisites, context, or explicit when-to-use/when-not-to-use instructions.

    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 states that 'dryRun defaults true', which is a behavioral trait beyond the schema. However, with no annotations provided, it fails to disclose whether the tool modifies state, requires permissions, or produces side effects, leaving major gaps.

    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?

    Though very short, the description sacrifices essential information for brevity. It is under-specified and fails to earn its place by providing meaningful guidance, making it more cryptic 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 4 parameters, no output schema, and no annotations, the description is completely inadequate. It does not explain the operation, return values, or side effects, leaving the agent without sufficient 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%, yet the description only clarifies the default for dryRun. It does not explain the meaning or purpose of notes, reason, or findingId, which are critical for correct invocation.

    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 'Triage Finding' essentially restates the tool name without specifying what 'triage' entails. It lacks a clear verb and resource, making it vague and not helpful for understanding the tool's function.

    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., confirm_finding, accept_risk). The context of 'triage' is left undefined, and 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.

  • Behavior2/5

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

    No annotations provided; description does not disclose behavioral traits such as idempotency, read-only nature, or required permissions. Simply saying 'Schedulers for a security tool' adds no useful 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.

    Conciseness2/5

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

    The description is extremely short but lacks substance. It is concise yet fails to convey necessary information, making it under-specified rather than efficiently communicated.

    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 many sibling tools for scheduling, a concrete description of what this tool returns (e.g., list of scheduler IDs, names, schedules) is missing. No output schema, so the agent is left guessing the return structure.

    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 a required 'toolName' parameter with no description. Schema coverage is 0%, and the tool description does not explain what 'toolName' means or how to use it. No enums or examples are provided.

    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 'Schedulers for a security tool.' is vague; it doesn't specify that the tool lists schedulers. The action verb 'list' is only in the name. A clear purpose would be 'List all scan schedulers for a given 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 this tool vs. sibling tools like 'armorcode_delete_scan_scheduler' or 'armorcode_execute_scan'. The description does not mention 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 carry the behavioral disclosure burden. It only mentions a parameter default ('dryRun defaults true') without explaining the tool's side effects, required permissions, or state changes.

    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 excessively short—two fragments rather than a complete sentence. While brevity can be a virtue, here it omits essential information, making the tool difficult to use 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?

    The tool has 4 parameters, no output schema, and no annotations. The description is severely incomplete, failing to explain the tool's effect on a finding, the meaning of 'dryRun', or the expected response. This level of under-specification renders the tool almost unusable without external documentation.

    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 compensate. It adds meaning for only one parameter (dryRun's default). The other three parameters (findingId, notes, reason) receive no explanation beyond the schema's type and required 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 'False Positive. dryRun defaults true.' is nearly a tautology with the title, providing minimal clarification of the tool's specific action. It does not distinguish from siblings like 'suppress_finding' or 'confirm_finding'.

    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 alternatives. With many sibling tools for similar actions (e.g., accept_risk, mitigate_finding), the absence of usage context is a critical gap.

    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 only mentions a default parameter value. It does not disclose whether this tool mutates state, what side effects occur, or any 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?

    Too short to be useful. While brief, it sacrifices essential information. It is under-specified rather than concise.

    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 4 parameters, no schema descriptions, no output schema, and many sibling tools, the description is woefully incomplete. It does not enable correct tool selection or 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 coverage is 0%. The description only mentions that dryRun defaults true, but does not explain the purpose of findingId, notes, or reason. Agents cannot infer parameter meanings.

    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 'Control Finding' is nearly tautological. It does not specify what action 'control' performs on a finding, especially with many sibling tools that have clearer verbs like accept, block, confirm, suppress.

    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 siblings like armorcode_block_finding, armorcode_confirm_finding, etc. The description lacks context for differentiation.

    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 only mentions counts but does not state that the tool is read-only, what the output format is, or whether any filters are applied. This 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.

    Conciseness2/5

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

    The description is extremely short, consisting of a single fragment. It is concise but lacks structure and essential details, making it 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?

    Given 5 optional parameters, no output schema, and no annotations, the description does not provide enough context for an agent to understand inputs, outputs, or behavior. It is incomplete in nearly all aspects.

    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 5 parameters with no descriptions and no enums. The description does not explain what any of these parameters (status, severity, sourceTool, etc.) do or how they affect the results. With 0% schema coverage, the description adds zero value.

    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?

    Description states 'Finding counts by severity/status' indicating an aggregation of findings. However, it lacks a clear verb and does not explicitly confirm that it returns aggregated statistics per severity and status. It is somewhat clear but could be more specific.

    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 like get_severity_stats or search_findings. The description does not provide 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.

  • Behavior2/5

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

    With no annotations, the description carries full burden but only says 'breakdown', missing behavioral traits like read-only nature, authentication needs, or rate limits.

    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 cost of missing essential details; not appropriately sized 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 no output schema and no parameter descriptions, the tool definition fails to explain what stats are returned (e.g., counts, severity levels), making it 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 description coverage is 0% and the description does not explain the two parameters (productName, subproductName) beyond implying product/subproduct context, adding no meaningful semantics.

    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 'Severity breakdown for product/subproduct' indicates the tool provides severity statistics but uses a vague verb ('breakdown') and does not distinguish from similar sibling tools like risk score retrievals.

    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 such as risk score tools or other statistics endpoints, nor any exclusions stated.

    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 the full burden of behavioral disclosure. It does not state whether the tool is read-only, requires authentication, or has side effects. The name implies a read operation, but this is not explicit.

    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, which is concise but too brief for a tool with three parameters. It lacks essential information and seems under-specified rather than efficiently 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 lack of annotations, output schema, and parameter descriptions, the description is highly incomplete. It does not address return values, parameter meanings, or usage scenarios, making it insufficient for effective tool selection and 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%, requiring the description to compensate. The description only mentions 'subproduct' and does not explain the purpose of 'environment' or 'productName' parameters, leaving their semantics unclear.

    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 'Risk score for a subproduct' indicates a retrieval operation for a specific subproduct's risk score, which distinguishes it from sibling tools like 'armorcode_get_product_risk_score' and 'armorcode_get_all_product_risk_scores'. However, it is minimal and could be more explicit about the 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?

    No guidance is provided on when to use this tool versus alternatives such as 'armorcode_get_product_risk_score' or 'armorcode_get_all_product_risk_scores'. 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 is responsible for disclosing behavior. It only notes dryRun defaults true but fails to explain side effects, permissions needed, or what happens when dryRun is false. The tool's actions are 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 extremely short (two sentences), which is concise, but the lack of substantive content makes it under-specified. It sacrifices clarity 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?

    For a tool with 4 parameters, no output schema, and many sibling tools, the description fails to provide essential context: no return value description, no usage examples, no behavioral details beyond a default value. It is wholly insufficient.

    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 has 0% description coverage. The description only adds that dryRun defaults true, without clarifying the purpose of findingId, notes, or reason. No parameter-specific semantics are provided 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 merely restates the title 'Mitigate Finding' and mentions a default for dryRun. It does not specify what mitigation entails (e.g., status change, remediation) nor distinguish it from sibling tools like suppress_finding or accept_risk. The purpose is 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 mitigation versus alternatives like blocking, suppressing, or accepting risk. No context or prerequisites 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?

    With no annotations, the description should disclose behavioral traits. It only mentions a parameter default ('dryRun defaults true') but fails to explain the effect of suppression, whether it is reversible, 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?

    The description is extremely brief (two fragments) but lacks structure and critical information. It is under-specified rather than 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 4 parameters, no output schema, and no annotations, the description is severely incomplete. It fails to provide adequate context for correct 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 should compensate by explaining parameters. It only notes the default for 'dryRun' but does not clarify its purpose, nor does it explain 'reason', 'notes', or 'findingId' beyond the schema.

    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 'Suppress Finding' which identifies the verb and resource, but does not distinguish it from sibling tools like 'block_finding' or 'mitigate_finding', leaving ambiguity about the exact 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?

    No guidance is provided on when to use this tool versus alternatives such as 'accept_risk', 'mark_false_positive', or 'triage_finding'. 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.

  • Behavior2/5

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

    No annotations exist, so the description must fully disclose behavior. It does not mention that the tool can perform destructive write operations via POST/PUT/DELETE or read via GET, nor does it address authorization, rate limits, 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 overly terse, sacrificing necessary detail. While the core idea is front-loaded, it fails to provide essential information in its single sentence.

    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 (generic REST, 4 parameters, many sibling tools, no output schema), the description is woefully incomplete. It omits usage context, parameter semantics, and behavioral traits.

    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 any parameter. Parameter roles must be inferred solely from names like 'method', 'path', 'body', and 'dryRun'.

    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 identifies the tool as an escape hatch for any ArmorCode REST path, making its generic-purpose nature apparent. However, it lacks a specific verb or resource, relying on the method parameter to define the 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?

    No guidance is provided on when to use this generic tool versus the numerous specific sibling tools (e.g., armorcode_get_finding). There is no mention of fallback scenarios or when this is the appropriate choice.

    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 behavior. 'Create temporary scheduler' is vague—no info on whether it's safe, destructive, or what side effects occur.

    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 (one sentence) but missing critical information. Conciseness at the expense of 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?

    No output schema, no param descriptions, and minimal behavioral info. Completely inadequate for a 5-param 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 description only mentions dryRun default. No explanation for required params (toolName, productName, subproductName) or optional environment.

    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 states it creates a temporary scheduler for PULL tools with an example (Black Duck), which is specific. However, it doesn't differentiate from sibling tools like 'execute_scan' or 'list_scan_schedulers'.

    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. Mentions dryRun default but no context on when to change it 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?

    The description only mentions 'dryRun defaults true', which provides one behavioral detail about the default behavior. However, it does not disclose whether this is a write operation, what side effects occur when dryRun is false, or any authorization requirements. No annotations are present to supplement, so the description carries the full burden and 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 very short (two sentences) and lacks structure. While it is concise, it sacrifices necessary content. The first sentence largely restates the title, and the second provides a single behavioral note. It earns a 3 as minimally adequate in length but lacking meaningful 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 has 4 parameters (one required), no annotations, and no output schema, the description is far from complete. It does not explain the confirm action's outcome, side effects, return value, or usage context. The agent has insufficient information to safely invoke this 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 description coverage is 0% and the description adds minimal semantic value. The only parameter detail is that dryRun defaults to true. The description does not explain the meaning or usage of findingId, notes, or reason, leaving the agent to infer from the schema alone.

    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 'Confirm Finding', which identifies the action and resource, but it is vague and does not explain what confirming a finding entails. Among sibling tools like armorcode_accept_risk, armorcode_block_finding, and armorcode_mitigate_finding, the description fails to distinguish the specific purpose of 'confirm' from these related actions.

    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, nor does it specify prerequisites or context. The sibling list contains many similar tools, and without guidance, the agent cannot determine the appropriate scenario for 'confirm'.

    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 mentions that 'dryRun defaults true', providing one behavioral detail. However, without annotations, it fails to disclose other important traits such as whether the operation is destructive 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.

    Conciseness3/5

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

    The description is extremely short (two sentences), but it sacrifices completeness. While it is concise, it lacks necessary detail, making it less 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?

    The tool has 5 parameters and no output schema or annotations. The description fails to explain the purpose of most parameters, the expected behavior, or the return value, making it highly 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?

    With 0% schema description coverage, the description only explains the 'dryRun' parameter's default value. The other four parameters (toolName, environment, productName, subproductName) are not described, leaving significant ambiguity.

    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 states 'Trigger scan for subproduct', which is a clear verb and resource. However, it does not differentiate from the sibling tool 'armorcode_trigger_scan_pull', which may have a similar 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 guidance is given on when to use this tool versus alternatives, nor any prerequisites or conditions 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 provided, the description should disclose behavioral traits such as read-only nature, required permissions, or side effects. It only states the data returned, leaving important behavior unspecified. The description does not add value beyond 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?

    While the description is short, it is under-specified rather than concise. It omits essential information (parameter details, output format, usage guidance). True conciseness would include all necessary context in a streamlined manner.

    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 absence of an output schema, the description should explain what the response contains (e.g., list of products with risk scores). It does not. Additionally, the parameter 'environment' is left undefined, making the description incomplete for a tool with one parameter and no schema details.

    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 sole parameter 'environment' has no description in the input schema (0% coverage). The tool description does not explain the parameter's purpose, allowed values, or behavior. This is a critical gap because the description should compensate for the missing schema documentation.

    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 'Risk scores for all products' clearly states the resource (all products) and what is returned (risk scores), and it distinguishes from the sibling 'armorcode_get_product_risk_score' which is for a single product. However, it lacks a verb, making it a noun phrase rather than an imperative 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?

    No guidance on when to use this tool versus alternatives. For example, it does not mention that for a single product's risk score one should use 'armorcode_get_product_risk_score'. The description is too brief to provide 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?

    No annotations are provided, so the description must convey behavioral traits. It does not disclose whether the operation is read-only, has side effects, or requires authentication. It simply states the output without any 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.

    Conciseness3/5

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

    The description is very short (one sentence), which is efficient but under-specified. It lacks necessary detail, so it is not optimally concise—it saves words but sacrifices 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?

    For a simple tool with 2 parameters and no output schema, the description should cover basic purpose and parameter meaning. It covers purpose vaguely but ignores parameter details and usage context, making it incomplete for effective 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%. The description hints at 'productName' ('by name') but provides no explanation for the optional 'environment' parameter. No additional semantic value is added beyond the schema structure.

    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 'Risk score for a product by name' clearly identifies the tool's output (risk score) and the key identifier (product name). It is distinguishable from siblings like 'armorcode_get_all_product_risk_scores' (all products) and 'armorcode_get_subproduct_risk_score' (subproduct). However, it lacks a verb and is very brief.

    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 such as 'armorcode_get_all_product_risk_scores' or 'armorcode_get_subproduct_risk_score'. No when-to-use or when-not-to-use advice 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?

    No annotations are provided, and the description does not disclose behavioral traits such as read-only nature, potential side effects, or required permissions. It only states the action without any 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.

    Conciseness3/5

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

    The description is extremely concise with a single sentence, but it sacrifices completeness. It is not wasteful, but could benefit from additional context without being 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 no output schema and no parameter explanations, the description fails to explain return values, pagination, or filtering. It is insufficient for an agent to fully understand the tool's behavior.

    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 'search' parameter. The tool has one optional parameter, but 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.

    Purpose4/5

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

    The description clearly states the verb 'List' and the resource 'ArmorCode products/groups', providing a specific purpose. It distinguishes from sibling listing tools like armorcode_list_scans and armorcode_list_subproducts by specifying the 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?

    The description provides no guidance on when to use this tool compared to alternatives. It does not mention any context or trade-offs.

    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 carry the full behavioral burden. It only notes that 'dryRun defaults true', revealing one default parameter behavior but omitting other important traits (e.g., whether the action is irreversible, permission requirements, 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?

    The description is extremely concise at two short sentences. While it wastes no words, it front-loads little useful information beyond the tool name. The structure could be improved by ordering key behavioral notes 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 4 parameters, 0% schema coverage, no output schema, and no annotations, the description is severely incomplete. It fails to explain what reopening a finding entails, return values, or side effects, making it inadequate for an agent to use confidently.

    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 0% description coverage, meaning no parameter descriptions exist. The description only adds default value info for 'dryRun', not explaining the required 'findingId' or optional 'notes' and 'reason'. This leaves the agent uninformed about expected inputs.

    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 'Reopen Finding', which clearly identifies the action and resource. However, it is very terse and does not specify the context or differentiate it from similar sibling tools like armorcode_block_finding or armorcode_suppress_finding.

    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 is no mention of prerequisites, scenarios, or exclusions, leaving the agent to infer usage from the name alone.

    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 mentions the dryRun default but does not disclose other behaviors like whether the operation is destructive, authentication needs, rate limits, or side effects. For a creation tool, this is insufficient for an agent to understand the full 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 very short (6 words), which is concise but at the cost of informativeness. Key information is missing, so brevity does not serve the purpose well. It could be considered under-specified rather than well-structured.

    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 output schema, and no annotations, the description is severely lacking. It fails to explain return values, error states, permissions, or how the dryRun affects the operation. The tool's complexity demands much more 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?

    Schema coverage is 0%, and the description only adds meaning for the dryRun parameter (defaults to true). Other required parameters (name, description, startDate, endDate, productName) are not described, leaving the agent without guidance on formats or constraints.

    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 specifies 'Create risk register exception' with a clear verb and resource, distinguishing the tool from sibling tools like 'get_exception' and 'list_exceptions' by the action 'create'. However, it does not explicitly differentiate from other action tools like 'accept_risk' or 'mark_false_positive'.

    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 only usage guidance is 'dryRun defaults true', which hints at a preview mode. There is no mention of when to use this tool versus alternatives such as 'accept_risk' or 'suppress_finding', nor any conditions 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?

    With no annotations, the description carries the burden of disclosure. It only mentions that dryRun defaults to true, but does not describe the actual effect of the deletion (e.g., irreversible? permissions required? side effects). This is insufficient 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.

    Conciseness3/5

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

    The description is very short (two sentences), but it lacks important details. It is concise but not effectively structured for an AI agent, and the brevity comes at the cost of completeness.

    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 no output schema and no annotations, the description is critically incomplete. It fails to explain the effect of deletion, the meaning of dryRun, or the required input (schedulerId) beyond the schema. The agent would be left with many unknowns.

    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 clarifies the default value of dryRun, but does not explain the purpose of either parameter (schedulerId is not described, dryRun's role is unclear). Minimal value added beyond the schema.

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

    Purpose4/5

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

    The description clearly states the action ('Delete') and the resource ('scheduler config'). Although brief, it distinguishes the tool from siblings like 'armorcode_list_scan_schedulers' which is about listing, not deleting.

    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 (e.g., when to dry run vs delete directly). The description only notes the default value of dryRun, but does not explain the context of 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?

    No annotations provided. The description mentions 'dryRun defaults true', which adds some behavioral context (dry-run mode), but it does not disclose other important traits like permissions, reversibility, 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?

    The description is very short, which is concise, but it lacks structure and does not front-load critical information. It could be more informative without being overly long.

    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, 2 required, no output schema, and no annotations, the description is severely incomplete. It does not explain the update action, what happens with dryRun false, return values, or prerequisites.

    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%. The description only adds meaning to the 'dryRun' parameter by stating its default. Other parameters (findingId, severity, notes, reason) are not described, leaving the agent to rely solely on the schema.

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

    Purpose4/5

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

    The description states 'Update finding severity', which is a clear verb+resource. It distinguishes from sibling tools like block_finding or confirm_finding, though it does not explicitly differentiate.

    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. Does not mention when-not to use or provide context for choosing over other severity-related 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?

    No annotations are provided, so the description must carry the behavioral transparency burden. It only says 'Audit events for a finding' without disclosing whether it is read-only, requires permissions, 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.

    Conciseness3/5

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

    The description is a single sentence with no waste, but it is too minimal given the lack of other documentation. It is adequately concise but could benefit from more detail without becoming 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?

    The description fails to specify what the output contains (e.g., event details, timestamps, types). With no output schema, the agent lacks sufficient context to understand the tool's full behavior.

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

    Parameters2/5

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

    Schema coverage is 0% and the description does not mention the required parameter 'findingId'. The parameter name suggests it is the ID of a finding, but the description adds no semantic meaning beyond the schema.

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

    Purpose4/5

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

    The description 'Audit events for a finding' clearly states that the tool retrieves audit events for a specific finding. It is distinct from siblings like get_finding which retrieves the finding itself. However, it could be more explicit about the verb and scope.

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

    Usage Guidelines2/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 (e.g., get_finding, get_scan). It does not specify when-not or mention any preconditions 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?

    The description discloses that 'dryRun defaults true' but does not explain what dryRun does or any other behavioral aspects like whether the comment is appended or if there are side effects; with no annotations, this 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 very concise (7 words) but at the expense of completeness; it conveys the basic action but lacks necessary detail.

    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?

    For a 3-parameter tool with no output schema, the description is incomplete; it does not explain expected behavior, return values, or prerequisites for adding a comment.

    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 only mentions 'dryRun defaults true' and does not explain 'note' or 'findingId', adding negligible meaning beyond the schema structure.

    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 'Add' and the resource 'comment' to a 'finding', which is specific and distinct from sibling tools like 'armorcode_add_exploitability_comment'.

    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 such as 'armorcode_add_exploitability_comment' or other finding actions; the description only mentions a default value.

    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 lacks behavioral context beyond the basic operation. It does not indicate that this is a read-only action, nor does it describe what happens if the ID is invalid or missing. With no annotations, the description carries the full burden and falls short.

    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 very concise at one sentence, which is appropriate for a simple retrieval tool. However, it could benefit from a slightly more structured format, such as stating the output or parameter context, but it is not overly verbose.

    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 low complexity (single required parameter, no output schema), the description is minimally complete. It conveys the core purpose but lacks details about return values or error handling. It is adequate but not robust.

    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 schema provides no description for the single parameter 'exceptionId.' The tool description also does not explain the parameter, leaving ambiguity about its format or meaning beyond what the schema defines (integer, >0). This is inadequate.

    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 'Exception details by ID,' specifying the action (get) and the resource (exception) and the method (by ID). It implicitly distinguishes from siblings like 'list_exceptions' (which lists) and 'create_exception' (which creates).

    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 does not provide any guidance on when to use this tool versus alternatives. It only says 'by ID,' leaving the agent to infer that it is appropriate when an exception ID is known, but no exclusions or comparisons 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?

    No annotations are provided, and the description does not disclose behavioral traits such as pagination, default page size, sorting, rate limits, or whether it is a read-only operation. The pageSize parameter implies pagination but is not explained.

    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, front-loaded with the verb 'List,' and no extraneous information. Could be slightly more structured, but it is concise.

    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, no output schema, and no annotations, the description is incomplete. It does not explain return values, pagination behavior, error handling, or permissions, which are critical for a list operation.

    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%, and the description only says 'with filters,' adding no meaning beyond parameter names. The parameters (e.g., toolName, scanStatus) are somewhat intuitive, but the description 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.

    Purpose4/5

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

    The description clearly states it lists security scans with filters, effectively distinguishing it from sibling tools like armorcode_get_scan (single scan) and other list tools (e.g., list_products). However, it doesn't specify which filters are available.

    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 like armorcode_get_scan for a single scan or armorcode_search_findings for findings. No mention of prerequisites or 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?

    Without annotations, the description carries full burden for behavioral disclosure. It does not mention pagination, result limits, authentication requirements, or any side effects. For a list operation, such details are important.

    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 very concise with one clear sentence. It is front-loaded but may be too brief, borderline under-specified.

    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 simplicity of the tool (no output schema, two optional params), the description is incomplete. It does not define what constitutes a subproduct or provide enough context for 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%. The description adds minimal insight: it hints at the 'productName' parameter via 'optionally by product' but does not explain the 'search' parameter or any constraints like expected formats.

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

    Purpose4/5

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

    The description clearly states the tool lists subproducts with an optional filter by product, which distinguishes it from the sibling 'list_products' tool. However, it lacks additional specificity about the listing behavior.

    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, such as when a more detailed search is needed. The description only implies the basic use case.

    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 full burden for behavioral disclosure. It only states 'Check', implying a read-only operation but without explicit safety guarantees. No side effects, rate limits, or auth needs are mentioned.

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

    Conciseness5/5

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

    The description is a single sentence with no extraneous words. It is front-loaded and efficiently conveys the core 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?

    Given three required parameters, no output schema, and no annotations, the description is severely incomplete. It does not explain what the returned status looks like, how to interpret results, or any additional context needed for 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%, and the tool description does not explain the three parameters (product, subProducts, env). The agent must infer meaning from parameter names alone, which is insufficient for accurate invocation.

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

    Purpose5/5

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

    The description clearly states the tool's action ('Check') and resource ('ArmorCode release gate (/client/build)'), making the purpose immediately obvious. It distinguishes from sibling tools like 'armorcode_accept_risk' which perform different actions.

    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, nor any conditions or exclusions. The agent receives no help in deciding whether to invoke this over 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?

    With no annotations provided, the description must disclose behavioral traits. It only reveals that the tool performs a 'block via accept-risk' and that dryRun defaults true. It does not mention whether the action is reversible, what permissions are required, or what happens to the finding after blocking, leaving significant 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?

    The description is extremely concise with a single sentence, front-loading the core action 'Block via accept-risk'. However, it omits important detail that could be expected for a tool with four parameters and no output schema, but it earns points for being terse and to the point.

    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, output schema, and low schema coverage, the description is insufficient. It does not explain the outcome of blocking, any required context (e.g., user permissions), or how dryRun impacts behavior. The tool's purpose is hinted but not fully described for safe and correct 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 only adds meaning for the dryRun parameter, stating it defaults to true. The other three parameters (findingId, notes, reason) receive no explanation, meaning the agent lacks context on how to use them beyond what the schema types imply.

    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 states 'Block via accept-risk', clearly indicating the tool blocks a finding through accept-risk mechanism. It mentions 'fix unavailable', which provides context. However, it does not explicitly contrast with sibling tools like armorcode_accept_risk, leaving room for ambiguity.

    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 phrase 'fix unavailable' suggests a condition for use (when fix is not possible), and 'dryRun defaults true' implies a testing mode. However, there is no explicit guidance on when to use this tool versus alternatives like accept_risk or mitigate, nor does it mention 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.

  • Behavior2/5

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

    The description is minimal; it does not disclose behavioral traits such as read-only nature, authorization requirements, or whether it returns a full object. No annotations are present to fill the gap.

    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 extremely concise at one sentence. It is front-loaded with the core purpose, but omits valuable context that could be added without sacrificing brevity.

    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 output schema and many sibling tools, the description should indicate what 'full details' includes or how the response is structured. The current text is too vague to fully inform an agent's decision.

    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%, but the parameter 'findingId' with type integer and exclusiveMinimum is self-explanatory. The description adds 'by ID' which confirms usage but provides no additional semantic detail over the schema.

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

    Purpose4/5

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

    The description 'Full finding details by ID' clearly states the verb ('get') and resource ('finding'), and implies retrieval by ID. It distinguishes from sibling tools like 'armorcode_search_findings' (list/search) but does not explicitly explain the scope or uniqueness.

    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 like 'armorcode_search_findings' or 'armorcode_get_finding_events'. No when-not-to-use or prerequisite information 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, and the description does not disclose behavioral traits such as read-only nature, permissions required, or any side effects. For a get operation, it is expected to be safe, but this is not explicitly stated.

    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 extremely concise with a single sentence, front-loading the purpose. However, it may be under-specified for agents needing more context, but no words are wasted.

    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 simplicity (1 parameter, no output schema, no annotations), the description only covers the basic function. It lacks details about return values, error handling, or potential limits, making it incomplete for an optimal agent experience.

    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% (the description does not mention the scanId parameter). While the single parameter is self-explanatory from its name and type, the description adds no additional meaning beyond what the schema provides, failing to compensate for the low coverage as required.

    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 'get' and resource 'scan details' with the key identifier 'by ID'. It is distinct from sibling tools like armorcode_list_scans, which returns a list, not details of a single scan.

    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., when to use get_scan vs list_scans or get_finding). There are no usage prerequisites or exclusions 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?

    With no annotations provided, the description bears full responsibility for behavioral disclosure. It merely says 'Open risk register exceptions,' without explaining the scope of exceptions returned, pagination, authentication requirements, or any side effects. This leaves significant ambiguity for 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.

    Conciseness3/5

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

    The description is only 4 words, making it extremely concise. However, it is too sparse, lacking any detail that would genuinely aid an agent. While front-loaded, it does not justify its brevity with sufficient information, so it earns a moderate score.

    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 simplicity (no parameters, no output schema, no annotations), the description is barely complete. It identifies the resource but fails to describe the return format, typical output, or any contextual details that would help an agent understand what to expect. The low complexity does not excuse the lack of informative content.

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

    Parameters4/5

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

    The tool has zero parameters, and the schema coverage is 100% (empty). Per the calibration, a baseline of 4 is appropriate since the description does not need to compensate for missing parameter information. The description adds no additional parameter semantics, which is acceptable given the absence of 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 'Open risk register exceptions' clearly indicates the tool operates on exceptions, which aligns with the name and title. It implies a list operation, distinguishing it from siblings like 'armorcode_get_exception' that likely fetch a single exception. However, it could be more explicit by stating 'List exceptions' rather than 'Open.'

    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 siblings like 'armorcode_get_exception' and 'armorcode_create_exception,' but the description does not differentiate usage contexts, leaving the agent without clear 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?

    Discloses that it adds a comment first then adds the tag, and notes that dryRun defaults true. However, no annotations are provided, and the description does not reveal side effects, authentication needs, or rate limits. Gives basic behavior but lacks depth.

    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 very short (two sentences) and front-loaded with key action. It is efficient, though it could benefit from slightly more detail without becoming 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?

    For a tool with 4 parameters, no output schema, and no annotations, the description is too sparse. It omits return values, error handling, prerequisites, and does not fully explain the behavior when dryRun is false.

    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?

    Only the dryRun parameter gets additional meaning ('defaults true'). The other three parameters (findingId, exploitable, reason) have no description, and schema coverage is 0%. Description fails to add value for most parameters.

    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 clearly states the tool's action: 'Triage exploitability: adds comment first, then product_exploitability tag.' It uses specific verbs and resources, and distinguishes from sibling tools like armorcode_bulk_set_product_exploitability and armorcode_add_exploitability_comment.

    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. Does not mention prerequisites, when not to use, or contrast with sibling tools such as armorcode_bulk_set_product_exploitability or armorcode_triage_finding.

    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 the procedural order (comment first, then tag) and dryRun behavior, but with no annotations, it omits important behavioral traits like mutation, 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.

    Conciseness4/5

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

    Single sentence is concise, but the structure could be improved by separating the action from the default. Still, no wasted 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 9 parameters, no schema descriptions, and no output schema, the description is insufficient. It does not explain how findings are selected (criteria like productName, findingAgeDays) or what the tool returns.

    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%, and the description only explains 'dryRun' and the high-level action. Most parameters (productName, reason, status, severity, etc.) are not described, leaving the agent to infer their roles.

    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?

    Clearly indicates bulk triage of multiple findings with a comment and exploitability tag. Distinguishes from sibling 'armorcode_set_product_exploitability' by emphasizing 'bulk' and 'multiple.'

    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?

    Implies batch operation for multiple findings and mentions dryRun default, but lacks explicit guidance on when to use vs alternatives like single-finding tools. No exclusion criteria.

    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 what the tool returns (e.g., success/failure, error messaging) or any side effects. For a tool with no annotations, the description should provide more 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.

    Conciseness5/5

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

    The description is a single sentence with no wasted words, clearly conveying the tool's function. It earns its place.

    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 an output schema, the description should explain what the tool returns or how the result is presented. It does not, making it incomplete for a tool with no output schema.

    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 coverage is 100%. The description does not need to add parameter information, and a baseline of 4 is appropriate.

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

    Purpose5/5

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

    The description clearly states the verb 'Verify' and the resource 'ArmorCode API connectivity', making the tool's purpose unambiguous. It is distinct from sibling tools which focus on specific operations like managing findings or risks.

    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?

    No explicit guidance on when to use this tool versus alternatives, but the context implies it is for checking connectivity before other operations. A score of 3 is appropriate given the simplicity of the tool.

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

  • Behavior4/5

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

    With no annotations provided, the description carries the burden of behavioral disclosure. It reveals that severity and excludeTagPrefix are applied client-side as a fallback, which is a key behavioral trait. It also hints at pagination behavior. However, it omits details on rate limits, auth requirements, or what happens with large result sets, but the disclosed information is significant.

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

    Conciseness5/5

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

    The description is two sentences long, front-loading the purpose and following with critical usage details. Every sentence provides value, with no redundant or extraneous information. It is highly 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?

    Despite having 13 parameters and no output schema, the description covers only a few aspects: client-side filtering for severity/tags and pagination via fetchAll. It does not explain afterKey, pageSize, maxPages, or the meaning of tags/status, which are critical for effective use. The description is too sparse given the 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 13 parameters with 0% description coverage. The description only mentions severity, excludeTagPrefix, and fetchAll, but does not explain their meaning, format, or relation to other parameters like afterKey, pageSize, or tags. It fails to compensate for the lack of schema descriptions, leaving most parameters ambiguous.

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

    Purpose5/5

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

    The description clearly states the tool is for searching/filtering ArmorCode findings, with specific verb ('Search/filter') and resource ('findings'). It distinguishes itself from sibling tools that perform specific actions (e.g., accept_risk, add_comment) and from armorcode_get_finding (single finding). The mention of pagination with fetchAll adds specificity.

    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 using fetchAll for pagination and notes that severity and excludeTagPrefix are applied client-side when server filters fail. This gives clear context for when to use these features. However, it does not explicitly state when not to use this tool versus alternatives like armorcode_get_finding for a single finding.

    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 provided, so description carries full burden. It mentions add/remove and dryRun default, but does not disclose permissions, reversibility, or behavior on existing tags. Minimal but not misleading.

    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 fluff, front-loaded with purpose. Every sentence adds value.

    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 4 parameters, no output schema, and no annotations, the description is too brief. It covers purpose and one alternative but lacks parameter details and behavioral context. Adequate but has 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% and description only mentions 'tags' and 'dryRun' defaults. It does not explain format of tags/removeTags (e.g., comma-separated), or the meaning of findingId. Very little parameter guidance.

    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?

    Clearly states 'Add/remove finding tags only (no comment)', uses specific verb and resource, and distinguishes from sibling tool armorcode_set_product_exploitability.

    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 tells when to use this tool (tags only) and suggests an alternative for exploitability triage. Also mentions dryRun default which informs safe usage.

    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

armorcode-mcp MCP server

Copy to your README.md:

Score Badge

armorcode-mcp MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/raviraj-ntp/armorcode-mcp'

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