Skip to main content
Glama
nulab

Backlog MCP Server

Server Quality Checklist

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

  • Disambiguation5/5

    Each tool has a clearly distinct purpose and target: user info, pull request comments, issue resolutions, wiki count, project update, pull request update, version milestone update. No two tools overlap in functionality.

    Naming Consistency4/5

    Tools follow a verb_noun pattern uniformly, e.g., get_pull_request_comments, update_project. The only minor inconsistency is 'get_myself' using a pronoun instead of a specific noun, but the pattern is otherwise consistent.

    Tool Count5/5

    With 7 tools, the count is well-scoped for a focused server. It provides enough operations without being overwhelming, fitting the typical 3-15 range perfectly.

    Completeness2/5

    The tool surface is severely incomplete. It offers only read and update operations on a few specific resources, with no create, delete, or list tools for core entities like projects, issues, or wikis. Important CRUD operations are missing, leading to likely agent failures.

  • Average 3.1/5 across 7 of 7 tools scored.

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

    • 10 of 16 community issues answered or closed in the last 6 months
    • 117 commits in the last 12 weeks
    • Last stable release on
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is passing
  • 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.

  • This server has been verified by its author.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

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

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

How is the quality score calculated?

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

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

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

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

Tool Scores

  • Behavior1/5

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

    No annotations are provided, and the description discloses no side effects, permissions, notification behavior, or error handling beyond the bare action of adding a comment.

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

    Conciseness2/5

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

    The description is a single sentence, but it is a tautology that adds no information beyond the tool name. 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.

    Completeness1/5

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

    With 7 parameters, no output schema, and no annotations, the description is grossly insufficient. It does not explain how to identify the pull request (number vs repoId vs projectKey), the significance of notifiedUserId, or what the tool returns.

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

    Parameters3/5

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

    The input schema provides descriptions for all 7 parameters, so the description adds no parameter-level information. The schema itself is terse, but the description does not compensate.

    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 'Adds a comment to a pull request' is a direct restatement of the tool name with no additional detail. It does not differentiate itself from siblings like update_pull_request_comment or clarify scope.

    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?

    There is no mention of when to use this tool, prerequisites, or alternatives. An agent cannot determine whether to reach for this tool versus get_pull_request_comments or update_pull_request_comment.

    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. 'Returns list' implies a read-only operation, but it doesn't disclose pagination, filtering behavior, what an 'activity' is, or any side effects. The information is minimal and does not add meaningful transparency beyond the schema.

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

    Conciseness2/5

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

    The description is a single, short sentence with no filler, but it is under-specified to the point of being vague. It omits essential context about the resource and usage, making it more a case of under-specification than effective conciseness.

    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 5 optional parameters and no output schema, the description provides only the basic action. It doesn't explain the domain of 'space activities', how parameters like minId, maxId, and activityTypeId interact, or what the response looks like. This leaves significant gaps for an agent to select and invoke the tool correctly.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the schema fully documents all five parameters. The description adds no parameter-specific meaning, but the baseline of 3 is appropriate since the schema already handles parameter 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 has a specific verb ('returns') and resource ('space activities'), but 'space activities' is ambiguous without domain context. It does not distinguish itself from other list endpoints like get_issue_comments or get_user_recent_updates, so it is only somewhat clear.

    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?

    There is no guidance on when to use this tool versus alternatives. The description provides no context about the intended use case, prerequisites, or situations where another tool might be more appropriate.

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

  • Behavior2/5

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

    With no annotations, the description carries full responsibility for behavioral disclosure. It only states the action itself, with no mention of side effects, permissions, idempotency, or return values. This is similar to a bare mutation description.

    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 concise sentence with no filler. It is front-loaded and appropriately sized for a simple tool, every word serves a purpose.

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

    Completeness2/5

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

    Given the lack of output schema and annotations, the description is too sparse. It does not explain what 'marked as read' means, whether the action is reversible, or what the response looks like, leaving critical gaps for a mutation tool.

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

    Parameters3/5

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

    The input schema provides 100% coverage for the single parameter 'watchId' with its own description. The tool description adds no additional semantic meaning beyond the schema, so the baseline of 3 is appropriate.

    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 'Mark a watch as read' directly restates the tool name 'mark_watching_as_read' without adding any new information. It is a tautology rather than a clear, distinct statement of purpose, and it does not differentiate from siblings like 'update_watching'.

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

    Usage Guidelines2/5

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

    There is no guidance on when to use this tool versus alternatives such as 'update_watching' or 'mark_notification_as_read'. No context is provided about prerequisites, scenarios, or exclusions.

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

  • Behavior1/5

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

    With no annotations, the description carries the full burden of disclosing behavior. It only says 'Updates an existing project', with no information about how updates are applied (e.g., partial vs. full replacement), what happens if the project doesn't exist, whether changes are reversible, or side effects like archiving. For a mutation tool, this is severely inadequate.

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

    Conciseness2/5

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

    The description is extremely short, but this is under-specification rather than effective conciseness. It merely restates the tool name without adding any useful context. A concise description should pack information efficiently; this one is vacuous and doesn't earn its place.

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

    Completeness1/5

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

    Given the tool has 9 parameters, no required parameters, and no output schema, the description fails to provide essential context. It does not clarify which identifier (key, projectId, projectKey) is used to target the project, how the update behaves with partial input, or what the response looks like. The description is completely inadequate for an agent to invoke this tool correctly without relying solely on parameter names.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the baseline is 3. The description itself adds no parameter information, but the schema provides detailed meanings for all 9 parameters, including identifiers, booleans, and an enum. Thus the description adds no extra value beyond the schema, warranting a baseline score.

    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 'Updates an existing project' clearly states the action (update) and the resource (project), and the word 'existing' distinguishes it from sibling tools like add_project and delete_project. This is a specific verb+resource combination that clearly communicates the tool's core purpose.

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

    Usage Guidelines1/5

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

    The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, when it should be preferred over add_project or delete_project, or any exclusions. There is zero usage context beyond the action itself.

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

  • Behavior1/5

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

    With no annotations, the description carries full burden for behavioral disclosure. It only says 'Updates,' implying mutation, but does not state whether changes are reversible, require specific permissions, return the updated object, or affect related resources. This is completely opaque 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 a single, front-loaded sentence—concise and free of verbosity. However, it is so sparse that it under-specifies the tool's behavior, making it minimally adequate rather than a model of effective conciseness.

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

    Completeness1/5

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

    For an 11-parameter mutation tool with no output schema and no annotations, this description is severely incomplete. It does not explain what properties can be updated, what the response contains, any prerequisites, or how this tool fits into the broader workflow of managing pull requests.

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

    Parameters3/5

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

    The schema covers all 11 parameters with descriptions (100% coverage), so the schema does the heavy lifting. The tool description adds no additional parameter meaning beyond stating the operation itself, which is redundant. Baseline 3 applies because the schema is sufficient.

    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 'Updates an existing pull request' clearly states the verb (updates) and resource (pull request), making the core purpose unambiguous. However, it lacks any mention of which fields can be updated, which would further distinguish it from sibling tools like update_pull_request_comment or update_issue.

    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 offers no guidance on when to use this tool versus alternatives, such as add_pull_request for creating a PR or update_issue for modifying issues. No prerequisites, exclusions, or recommended contexts are provided; usage can only be inferred as 'when you need to update a pull request,' which is tautological.

    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, but it only states the core action. It does not mention required permissions, side effects, failure behavior, or any other operational details.

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

    Conciseness4/5

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

    The description is a single concise sentence with no wasted words. It is front-loaded and easy to parse, though it is quite minimal in content.

    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 11 parameters, no annotations, and no output schema, the description is far from complete. It does not explain required fields, how to specify the repository/project, or what the response will look like.

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

    Parameters3/5

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

    The input schema has 100% coverage with descriptions for all parameters, so the baseline is 3. The tool description itself adds no parameter-specific information, but the schema already provides adequate 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 states it creates a new pull request, but this is nearly synonymous with the tool name 'add_pull_request.' It provides no additional scope, fields, or context to distinguish it further.

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

    Usage Guidelines2/5

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

    The description gives no guidance on when to use this tool versus alternatives like get_pull_request or update_pull_request. It does not mention exclusions, prerequisites, or any specific scenarios.

    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 available, so the description must carry the full burden of disclosing behavior. It only states the obvious return value and fails to mention that 'all' only applies to administrators, the effect of 'archived', whether pagination exists, or any permissions/side effects. This is a significant transparency gap.

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

    Conciseness5/5

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

    The description is a single, front-loaded sentence with no unnecessary words. It is well-structured and concise, though the brevity comes at the cost of substantive detail.

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

    Completeness3/5

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

    The tool is simple with two optional booleans and the schema covers parameter semantics, yet the description lacks usage context, return format details, and behavioral nuances. It is minimally adequate but has clear gaps, so a 3 reflects the balance.

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

    Parameters3/5

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

    The input schema provides detailed descriptions for both parameters (all, archived), achieving 100% coverage. The tool description adds no parameter information, but the baseline of 3 is appropriate because the schema fully explains parameter meaning.

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

    Purpose2/5

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

    The description is a direct restatement of the tool name: 'get_project_list' -> 'Returns list of projects'. It adds no additional scope, filtering behavior, or distinction from sibling tools like get_project. This is a tautology, scoring 2.

    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 get_project, get_issues, or other list tools. The description does not mention any prerequisites, exclusions, or context for choosing this tool, leaving agents without decision support.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full responsibility for behavioral disclosure. It only states 'Returns list of issues' without mentioning pagination, default sorting, filter behavior, or return format. This is insufficient for a tool that clearly supports extensive filtering and pagination via its schema.

    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—a single sentence with no fluff. However, it is under-specifying for a tool with this many parameters and no other documentation. It earns its place but offers minimal value, so it's not exceptional.

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

    Completeness2/5

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

    The tool is highly complex with 25 parameters, no output schema, and no annotations. The description provides only a minimal hint about return value ('list of issues') and says nothing about default behavior, filtering, or pagination. This is incomplete for practical use.

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

    Parameters3/5

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

    Schema description coverage is 100%, with every parameter having a descriptive comment. The description itself adds no information beyond the schema, so the baseline score of 3 is justified. It neither helps nor hurts parameter understanding.

    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 'Returns list of issues' clearly identifies the verb (returns) and resource (list of issues), but it doesn't distinguish this from sibling tools like get_issue (singular) or count_issues. It's clear but lacks sibling differentiation, so a score of 4 is appropriate.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives like get_issue, get_related_issues, or count_issues. There is no mention of filtering, pagination, or any preconditions. This is a clear gap for a tool with 25 parameters.

    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, but it only states a list is returned. It does not mention pagination, required permissions, output structure, or whether results are project-scoped, which are critical for correct invocation.

    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 short sentence, making it concise. However, it is under-specified and lacks structural elaboration, striking a balance between brevity and sufficiency.

    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 is too minimal for a tool with no output schema and no annotations. It does not explain what fields are returned, how project context is resolved, or what the list represents (e.g., titles, snippets, full pages). This lacks completeness for an agent to invoke it appropriately.

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

    Parameters3/5

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

    Schema description coverage is 100%, with each parameter described. The description adds no extra meaning, but since the schema already covers the semantics, a baseline 3 is appropriate.

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

    Purpose4/5

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

    The description clearly states the tool returns a list of Wiki pages, distinguishing it from singular get_wiki. However, it lacks scope details like project context or whether it returns page content or metadata, preventing a perfect score.

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

    Usage Guidelines2/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 such as get_wiki or get_wikis_count. There is no mention of how the optional parameters relate to usage scenarios, leaving the agent without decision support.

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

  • Behavior2/5

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

    With no annotations provided, the description bears the full burden of behavioral disclosure. It only restates the mutation implied by the name and fails to disclose whether unchanged fields are preserved, how the issue is identified, whether permissions are required, or what response to expect.

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

    Conciseness3/5

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

    The description is a single sentence with no filler, making it concise. However, for a tool with 21 parameters, it is so sparse that it borders on under-specification and does not provide meaningful structural guidance.

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

    Completeness2/5

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

    Despite the rich schema, the description is not complete enough for an update operation with 21 optional parameters and no output schema. It does not state whether updates are partial, how the target issue is identified, or what side effects occur, leaving significant contextual gaps for an agent.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the baseline is 3 even without parameter details in the tool description. The schema already documents all 21 parameters, including nuanced semantics like 'pass an empty array to clear all versions,' while the description adds no parameter-level meaning.

    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 the core function clearly with a verb+resource construction: 'Updates an existing issue.' It is accurate and specific to the issue resource, but it does not explicitly distinguish the tool from sibling update tools like update_issue_comment or update_project beyond the resource name.

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

    Usage Guidelines2/5

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

    No usage guidance is provided. The description does not explain when to use this tool versus add_issue, get_issue, or update_issue_comment, nor does it mention required identifiers, partial-update semantics, or any 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 is the sole source of behavioral info. It does not disclose return values, validation rules, permission requirements, or side effects like notifications. This is particularly weak for a mutating operation.

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

    Conciseness4/5

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

    The description is a single sentence, front-loaded and free of extraneous words. It is as concise as possible, though perhaps too sparse to be helpful.

    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 6 parameters and no output schema, the description is incomplete. It doesn't explain the expected result (e.g., returns created document), how parameters interact, or constraints. The schema covers fields but the description fails to give operational context.

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

    Parameters3/5

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

    Schema coverage is 100%, so parameter semantics are fully defined in the schema. The description adds no additional meaning beyond restating the project context; it doesn't clarify relationships like parentId or optionality, but the schema already handles this.

    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 (Adds) and resource (a new document) with a target context (specified project). This distinguishes it from sibling add tools like add_issue and add_wiki, though it lacks additional specificity about document types or hierarchy.

    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 for when to use this tool versus alternatives such as add_wiki or update_document. There is no mention of prerequisites, ordering, or when not to use it, leaving the agent without decision support.

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

  • Behavior2/5

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

    With no annotations present, the description carries the full burden of behavioral disclosure. It only states the high-level action and fails to mention side effects (e.g., whether the relationship is bidirectional, whether it requires permissions, or whether it replaces existing relationships). For a mutating tool, this is a significant gap.

    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 clear sentence with no redundant words. It is appropriately concise for a simple operation and achieves maximum efficiency.

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

    Completeness2/5

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

    The tool is simple, but the lack of annotations and output schema means the description must provide more context. It does not clarify how to specify the source issue (issueId vs. issueKey), what a successful response looks like, or any prerequisites. This leaves the agent with incomplete information to invoke the tool confidently.

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

    Parameters3/5

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

    The input schema has 100% description coverage, clearly explaining issueId, issueKey, and targetIssueId. The description adds no additional parameter semantics, so the baseline of 3 applies. The optionality of issueId and issueKey is left unexplained, but the schema itself is sufficient.

    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 'Relates an issue to another issue' clearly states a specific action (relating) on a specific resource (issues), distinguishing it from sibling tools like remove_related_issue and get_related_issues. It is concise and unambiguous, though it could be slightly more explicit about creating a relationship link.

    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. It does not mention that get_related_issues retrieves relationships or that remove_related_issue deletes them. The description alone gives no context for choosing this tool in a workflow.

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

  • Behavior2/5

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

    No annotations are provided, so the description must disclose behavioral traits. It only says 'Creates', which implies mutation, but it doesn't mention permissions, side effects (e.g., mailNotify), return values, or whether the operation is reversible. This is a minimal disclosure for a create operation.

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

    Conciseness5/5

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

    The description is a single sentence with no redundant words. It is front-loaded and achieves the core purpose without waste. It is concise, though it sacrifices helpful detail for 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?

    The description is too minimal for a tool with 4 params and many siblings. It doesn't explain when to use it, what happens on success, or any required permissions. The schema covers params, but the overall context is incomplete for an agent to invoke it reliably.

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

    Parameters3/5

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

    Schema description coverage is 100%, with all parameters (name, content, projectId, mailNotify) having descriptive text. The description adds no parameter information, but it doesn't need to because the schema already documents them. Baseline 3 is appropriate.

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

    Purpose4/5

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

    The description 'Creates a new wiki page' clearly states the verb (creates) and resource (wiki page). It distinguishes from sibling tools like update_wiki and get_wiki, but it is somewhat generic and doesn't specify the project context (projectId) or other constraints, which prevents a perfect score.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, project membership, or differentiate it from other add_* tools like add_issue or addDocument. There is no context for when a wiki page should be created.

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

  • Behavior2/5

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

    With no annotations, the description carries the full burden of behavioral disclosure. It states the core behavior (returns a count) but omits important context such as whether filters affect the count, the response shape, or any access/permission considerations.

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

    Conciseness4/5

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

    The description is a single, concise sentence with no unnecessary words. It is front-loaded and efficient, though somewhat terse given the tool's complexity.

    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 is incomplete for a tool with 21 parameters and no output schema. It does not explain the return format, how filters are applied, or how this tool relates to sibling tools like get_issues. More context is needed for an agent to use it correctly.

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

    Parameters3/5

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

    The schema has 100% coverage of all 21 parameters with descriptions, so the structured schema carries the parameter semantics. The description adds no parameter-specific information, warranting the baseline score of 3.

    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 returns a count of issues, using a specific verb and resource. This distinguishes it from sibling tools like get_issues that likely return lists, though it does not explicitly mention the filtering capability.

    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 about when to use this tool instead of alternatives. It does not mention that it is appropriate for obtaining counts rather than detailed issue data, nor does it reference siblings or use cases.

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

  • Behavior2/5

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

    With no annotations, the description carries full responsibility for behavioral disclosure. It only states that a count is returned, adding no context about what the count includes, whether it respects the boolean parameters, or any side effects. This is too thin for an agent to understand the tool's behavior.

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

    Conciseness5/5

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

    The description is a single, short sentence that is immediately readable and free of fluff. It earns its place by stating the core function without redundancy.

    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?

    There is no output schema, so the description must clarify the return value. It says 'returns count' but does not specify the format (e.g., plain integer vs. JSON object), the scope (all notifications vs. current user), or any limitations. This is a significant gap for a tool with no other contextual documentation.

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

    Parameters3/5

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

    The input schema covers 100% of the parameters with descriptions for both booleans, so the baseline is 3. The description itself adds no parameter clarity, but the schema already defines alreadyRead and resourceAlreadyRead adequately.

    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 counts notifications, using a verb ('Returns') and the resource ('notifications'). It is distinct from sibling tools like get_notifications by virtue of returning a count, though it does not explicitly differentiate itself.

    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 about when to use this tool instead of alternatives. It does not mention whether to use it for a quick total, for unread counts, or how it relates to get_notifications or reset_unread_notification_count.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full responsibility for behavioral disclosure. 'Deletes an issue' reveals only the core action but omits critical details such as whether deletion is permanent, whether it cascades to related items, or any permission requirements. For a destructive tool, this is a significant transparency 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 concise and front-loaded, using exactly three words with no filler. It earns its place by stating the purpose. However, it is borderline under-specified, as the brevity limits its usefulness for an AI agent trying to determine consequences or usage context.

    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?

    This simple destructive tool has no output schema, no annotations, and two optional parameters. The description 'Deletes an issue' does not explain what the effect is on the issue (e.g., permanent removal), what the response will be, or whether both parameters are required in some combination. For a delete operation, the lack of behavioral context makes it incomplete.

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

    Parameters3/5

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

    The input schema provides 100% coverage with descriptions for both issueId and issueKey. However, the description adds no additional meaning beyond what the schema already states, and it does not clarify why both parameters are optional or which one is preferred. The text meets the baseline for high schema coverage but does not elevate it.

    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 'Deletes an issue' clearly states the verb and resource, making it easy to distinguish from siblings like add_issue, update_issue, and get_issue. However, it does not elaborate on scope or uniqueness, so it lacks the richer distinguishing details seen in higher-scoring examples.

    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. It does not mention that this should be used only when an issue should be permanently removed, nor does it warn against confusing it with update_issue (which modifies). The description simply states the action without any 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 disclose behavior. It only states it 'gets information,' with no detail on response format, permissions, or side effects. This is 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.

    Conciseness4/5

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

    The description is a single sentence with no fluff. It is appropriately short for a simple getter, though it could be more specific without losing conciseness.

    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?

    No output schema exists, so the description should explain what information is returned. It does not, and it also fails to differentiate from related document tools. The description is too vague to be considered complete.

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

    Parameters3/5

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

    The schema provides a complete description of the single parameter (documentId) with type and meaning. The tool description adds nothing beyond the schema, so the high schema coverage earns the baseline score of 3.

    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?

    Clearly identifies the action ('gets') and resource ('document'), distinguishing it from siblings like get_documents (plural) and get_document_tree. However, 'information' is vague and could mean metadata, content, or attachments.

    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?

    Provides no guidance on when to use this tool versus alternatives. It does not mention that it fetches a single document by ID or when to prefer get_documents or get_document_tree.

    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. 'Returns list' implies a read operation, but it does not explicitly state that it has no side effects, does not mark notifications as read, or mention any rate limits, pagination defaults, or authentication needs. This is a significant gap for a tool with no other behavioral context.

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

    Conciseness4/5

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

    The description is a single concise sentence with no wasted words. It is properly front-loaded with the action and resource. While it is under-specified in content, it is structurally economical and appropriately sized for a simple read operation.

    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 optional parameters, no output schema, and no annotations, the description is far too sparse. It does not explain the shape of the returned list, default ordering, how count interacts with minId/maxId, or any edge cases. The agent would lack critical context to invoke this tool correctly.

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

    Parameters3/5

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

    The input schema already documents all four parameters (count, maxId, minId, order) with 100% coverage, so the description does not need to add parameter details. It adds nothing beyond the schema, but the baseline of 3 applies because schema coverage is high.

    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 'Returns list of notifications' clearly states the action (returns) and resource (notifications). The word 'list' distinguishes it from sibling 'count_notifications', which returns a count, so it is specific enough. However, it doesn't elaborate on scope or filtering, so it lacks some differentiation detail.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives like count_notifications, nor does it explain scenarios for the optional parameters (count, order, maxId, minId). It simply states the basic function, leaving the agent without decision-support information.

    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 present, so the description carries the full burden of behavioral disclosure. It merely restates the function without mentioning pagination, filtering, sorting, read-only nature, or any other behavioral traits. Key parameters like count, order, minId, and maxId are not discussed, so the agent is unaware of how results are constrained.

    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 succinct at one sentence, but it under-specifies the tool's behavior. It is not needlessly verbose, yet it borders on a restatement of the tool name, lacking informative structure for a tool with nine parameters.

    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 nine parameters and no output schema, the description is seriously incomplete. It does not explain how to identify the pull request (e.g., number vs repoId/repoName), how filtering parameters affect results, or what the response structure looks like, leaving the agent without necessary context for correct invocation.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the baseline is 3. The description adds no additional meaning beyond what the schema already provides for each parameter, and it does not explain how parameters interact or which are needed beyond the required 'number'.

    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 purpose with a specific verb ('Returns list') and resource ('comments for a pull request'). This distinguishes it from siblings like get_issue_comments and get_pull_request, and the scope is immediately obvious.

    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 get_issue_comments or get_pull_request. There are no explicit context cues, prerequisites, 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?

    With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the basic return of a count but does not explain how the various optional filters combine, what the default behavior is with no parameters, or whether authentication or rate limits apply. The phrase 'for a repository' is reductive given the schema allows filtering by projects, assignees, statuses, etc.

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

    Conciseness4/5

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

    The description is a single, front-loaded sentence: 'Returns count of pull requests for a repository.' It is concise with no wasted words. However, for a tool with 8 optional parameters, the structure could include a bit more context without becoming verbose, so it does not earn a 5.

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

    Completeness2/5

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

    The tool has 8 optional parameters, no output schema, and no annotations. The description is minimal and fails to explain the default behavior (e.g., what is counted when no filters are provided), how parameters scope the count, or the relationship to get_pull_requests. It is under-specified for the tool's complexity.

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

    Parameters3/5

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

    The schema description coverage is 100%, so the baseline is 3. The description adds no additional meaning beyond the schema's field descriptions; it does not clarify relationships or required combinations among the 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 clearly states the tool returns a count of pull requests for a repository, with a specific verb and resource. However, it does not distinguish this from sibling tools like get_pull_requests (list) or mention the filtering capabilities implied by the schema, so it lacks explicit differentiation.

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

    Usage Guidelines2/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 get_pull_requests for listing PRs or count_issues for counting issues. It also does not explain when to use the optional filters or any prerequisites, leaving the user without context for selection.

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

  • Behavior1/5

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

    With no annotations, the description carries the full burden of behavioral disclosure. It simply restates the tool's name ('Returns list of issue resolutions') and provides no information about data scope, ordering, permissions, or response format, adding no value beyond the name.

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

    Conciseness5/5

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

    The description is a single, succinct sentence with no filler. It front-loads the core action and resource, earning its place without waste.

    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 lacks essential context about what 'issue resolutions' are, whether all or filtered resolutions are returned, and what the response structure looks like. With no output schema and no annotations, this 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.

    Parameters4/5

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

    The tool has zero parameters, so the schema is vacuous. The description need not explain parameters; the baseline for 0 params is 4.

    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 uses a specific verb ('Returns') and resource ('list of issue resolutions'), clearly indicating what the tool does. It distinguishes from sibling tools by naming a unique resource, though it doesn't explicitly compare with similar list getters.

    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 other issue-related getters like get_issues or get_priorities. The description does not mention use cases, 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?

    With no annotations, the description carries the full burden. It only states that it returns a list, implying read-only behavior, but provides no details about data scope, pagination, ordering, or potential errors. It doesn't explicitly confirm the operation is safe or disclose any 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.

    Conciseness5/5

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

    The description is a single concise sentence with no wasted words. It efficiently communicates the core purpose, and the structure is appropriate for its simplicity.

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

    Completeness2/5

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

    The tool has no output schema and minimal description, yet it fails to explain what versions/milestones are, how they are scoped (despite having project parameters), or what the return data looks like. The description is inadequate for an agent to confidently invoke the tool and interpret results.

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

    Parameters3/5

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

    Schema description coverage is 100%, meaning both parameters are fully described in the schema. The tool description adds no additional parameter meaning beyond what the schema provides, so a baseline of 3 is appropriate.

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

    Purpose4/5

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

    The description clearly states the action (returns list) and resource (versions/milestones), but the phrase 'in the Backlog space' is vague and doesn't specify that the list is scoped to a project via projectId/projectKey. It doesn't differentiate from sibling tools, but no direct sibling with the same resource exists.

    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, nor any mention of the need to supply projectId or projectKey (both optional). It doesn't clearly state that this is the endpoint for retrieving versions/milestones for a specific project as opposed to other list tools.

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

  • Behavior1/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the action without mentioning side effects, scope (e.g., current user), idempotency, or what the reset implies. This is a significant gap for a mutation tool.

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

    Conciseness5/5

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

    The description is a single, direct sentence with no filler. Every word contributes to conveying the action, making it appropriately 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?

    Despite the zero-parameter simplicity, the description is under-specified. It lacks context on the scope of the reset (e.g., all users, current user), whether it affects only the counter or also individual notification entries, and any prerequisites. Given the lack of annotations and output schema, more detail is needed.

    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 input schema has zero parameters and schema description coverage is 100%. With no parameters, the baseline score is 4, and the description need not explain parameter details.

    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 'Reset unread notification count' uses a specific verb and resource, making it clear what the tool does. However, it does not explicitly differentiate from sibling tools like mark_notification_as_read, which also deals with read state.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It does not mention that this resets the count to zero, nor does it contrast with mark_notification_as_read or count_notifications.

    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 fully disclose behavioral traits, but it only says 'updates an existing version milestone.' It does not explain whether updates are partial/full, require permissions, return a value, or have side effects, which is a critical gap for a mutating operation.

    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 one concise sentence with no filler words, and it front-loads the verb. However, it is so minimal that it borders on under-specification, though conciseness itself is not penalized.

    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 8 parameters, no output schema, and no annotations, the description is far too sparse. It does not clarify update semantics, the role of required fields, or how this tool contrasts with related version milestone tools. The agent would need to infer too much from the schema alone.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the baseline is 3. The tool description adds no extra parameter meaning beyond what the schema already provides (e.g., required fields id and name, archived, dates). The description's single sentence does not enhance parameter understanding.

    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 ('Updates') and the resource ('existing version milestone'), which distinguishes it from get/add/delete counterparts. However, it does not specify which fields or aspects of the milestone are updated, so it lacks scope detail.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives like add_version_milestone or get_version_milestone_list. It does not mention prerequisites, exclusions, or typical scenarios, leaving the agent without decision 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?

    With no annotations, the description must disclose behavioral traits, but it only says 'Updates' without explaining side effects, permissions, error conditions, or whether the note is overwritten or merged. This is a significant gap for a mutation tool.

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

    Conciseness4/5

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

    The description is a single, short sentence that front-loads the core action. No wasted words, though it might have been slightly more informative without sacrificing conciseness.

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

    Completeness3/5

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

    For a simple 2-parameter update tool with full schema coverage, the description is minimally viable but lacks behavioral context (e.g., what happens on success/failure, whether it requires an existing watch). It does not fully cover the tool's context.

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

    Parameters3/5

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

    Schema coverage is 100%, so the schema documents both parameters. The description adds no additional meaning about parameters, but the baseline of 3 applies because the schema handles the heavy lifting.

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

    Purpose4/5

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

    The description states a clear verb ('Updates') and resource ('existing watch note'), and the name 'update_watching' aligns with this. It is distinguishable from sibling tools like 'add_watching' and 'mark_watching_as_read' by the focus on updating an existing note, though 'watch note' is not fully defined.

    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 'add_watching' or 'mark_watching_as_read'. The context is implied only by the name and description, with no explicit exclusions or prerequisites.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full responsibility for behavioral disclosure. It only states the result type ('list of priorities') without mentioning ordering, filtering, authentication needs, or potential errors. For a simple read operation this is minimal but lacks detail that could affect invocation expectations.

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

    Conciseness4/5

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

    The description is a single, clear sentence with no wasted words. It is appropriately sized for a trivial list operation, though it could include a bit more context without becoming verbose. It is front-loaded 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?

    With no output schema and a minimal description, the return format, item structure, and sorting are undefined. A simple addition like 'in priority order' or 'including id and name' would greatly improve completeness. As written, the agent gets only the resource name and result type, which is insufficient for a full understanding.

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

    Parameters4/5

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

    The tool has zero parameters, and the input schema is empty, so there is no parameter semantics to explain. The description need not compensate for schema gaps since the schema coverage is 100% by nature; the baseline of 4 applies.

    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 returns a list of priorities, with a specific verb ('Returns') and resource ('priorities'). It is distinct from sibling tools as no other tool mentions priorities, though it could be more specific about what kind of priorities (e.g., issue priority levels).

    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 about when to use this tool versus alternatives. There is no mention of use cases, exclusions, or comparisons to sibling list tools like get_resolutions or get_categories, leaving the agent to infer when 'priorities' is the right resource.

    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 carry the burden of behavioral disclosure. It only says 'Updates a comment on an issue' without mentioning whether the update replaces the entire content, requires ownership, or has any 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.

    Conciseness5/5

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

    The description is a single, concise sentence with no filler or redundant information. It is appropriately sized and front-loaded with the action.

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

    Completeness3/5

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

    For a simple update tool, the description plus schema covers the essential mechanics, but it lacks usage guidelines and behavioral details. Given no output schema and no annotations, it is adequate but not fully complete.

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

    Parameters3/5

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

    The input schema has 100% description coverage for all four parameters, so the baseline is 3. The description itself adds no additional parameter semantics, but it doesn't need to since the schema already explains each field.

    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 uses the specific verb 'Updates' and identifies the resource 'a comment on an issue', making the core purpose clear. However, it does not differentiate from sibling tools like add_issue_comment or update_pull_request_comment, so it lacks distinctive 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?

    There is no guidance on when to use this tool versus add_issue_comment or other update tools. The description provides no context about prerequisites, scenarios, or alternative 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, the description carries the full burden, but it only states 'Updates a comment on a pull request' without detailing side effects, permissions, or behavior like overwriting content. The mutation nature is implied by the verb but not elaborated, leaving unknowns about idempotency, failure modes, or required context.

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

    Conciseness4/5

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

    The description is a single concise sentence that directly states the tool's purpose. It is front-loaded and free of fluff, though it may be too minimal to be genuinely helpful, but for conciseness it is appropriate.

    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 7 parameters, no output schema, and no annotations, the description is under-specified. It does not mention return values, prerequisites (e.g., comment must exist), or error conditions, leaving the agent to infer from the schema and name alone, making it incomplete for a mutation tool.

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

    Parameters3/5

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

    The input schema already describes all 7 parameters with 100% coverage, so the description need not repeat them. However, the description adds no additional semantic meaning beyond the schema, such as which parameters are required or how they relate to the update operation, so the baseline of 3 applies.

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

    Purpose5/5

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

    The description clearly states the action ('Updates') and the target ('a comment on a pull request'), which distinguishes it from sibling tools like add_pull_request_comment and update_pull_request. The verb and resource are specific and unambiguous.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It does not mention distinguishing factors such as requiring an existing comment ID or that it should be used instead of add/delete comment tools, 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?

    With no annotations, the description carries the full burden of behavioral disclosure, but it only says 'creates a new issue.' It does not mention required fields, permissions, side effects, idempotency, or return format. For a mutation tool with zero annotation coverage, this is a significant gap.

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

    Conciseness5/5

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

    The description is a single, front-loaded sentence with no filler words. It efficiently states the core action and object, earning its place without unnecessary complexity.

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

    Completeness2/5

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

    Despite the rich schema, the tool has 17 parameters, no output schema, and no annotations. The description offers no context about typical usage, required fields, or expected results, leaving significant gaps for an agent to understand the tool's full behavior and invocation context.

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

    Parameters3/5

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

    Schema descriptions cover 100% of the 17 parameters, so the baseline is 3. The description itself adds no parameter-specific meaning, but since the schema already provides detailed descriptions for each field, the combined information is adequate.

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

    Purpose5/5

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

    The description uses the specific verb 'creates' and identifies the resource 'issue' with 'in the specified project', clearly distinguishing this from sibling tools like add_issue_comment and update_issue. It is unambiguous and directly states 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 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. It does not mention that update_issue should be used for existing issues, nor does it state any prerequisites or exclusions. The description only states what it does, not when to choose it.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral transparency. It only states the action, with no mention of required inputs beyond schema, potential side effects, permissions, or response format. This is a significant gap for a mutation tool.

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

    Conciseness5/5

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

    The description is a single concise sentence with no wasted words. It is appropriately brief and immediately communicates the core action.

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

    Completeness2/5

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

    For a mutation tool with no annotations and no output schema, the description is too sparse. It doesn't mention that content is required, how to identify the target issue, or what the response will be. The schema provides some parameter context, but the description fails to fill behavioral and usage gaps.

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

    Parameters3/5

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

    Schema descriptions cover 100% of parameters, so the baseline is 3. The description adds no additional semantic value, such as whether issueId and issueKey are alternatives or how attachmentId and notifiedUserId relate to the comment. It simply repeats the tool's purpose.

    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 'Adds a comment to an issue' uses a specific verb and resource, clearly distinguishing it from sibling tools like update_issue_comment or get_issue_comments. It unambiguously states the tool's primary function.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives such as update_issue_comment. It also doesn't clarify the relationship between issueId and issueKey, which is a key usage decision for the agent.

    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 states only the action 'Deletes' without revealing whether the deletion is permanent, whether it cascades to related entities, or whether special permissions are needed. This lack of detail is a significant gap for a destructive operation.

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

    Conciseness5/5

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

    The description is a single sentence, 'Deletes a project', which is maximally concise with zero wasted words. It is appropriately sized for the simple action it describes, though it trades depth for 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?

    For a destructive tool with no annotations and no output schema, the description is far from complete. It fails to mention side effects, return values, or prerequisites, leaving the agent without essential operational context. The minimalism undermines its usefulness in real-world invocation scenarios.

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

    Parameters3/5

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

    The input schema fully describes both parameters (projectId and projectKey) with clear descriptions, giving a baseline of 3. The description adds no additional parameter semantics, but it also doesn't need to given the schema's high coverage. However, it does not clarify that at least one of the two optional parameters is likely required, which leaves some semantic ambiguity.

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

    Purpose5/5

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

    The description clearly states the action ('Deletes') and the resource ('a project'), providing a specific verb+resource combination that unambiguously identifies the tool's purpose. It distinguishes itself from sibling tools like delete_issue or delete_watching by explicitly naming 'project' as the target.

    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, nor are there any prerequisites, exclusions, or context about required permissions. The description is a bare statement with no usage context, leaving the agent to infer when deletion of a project is appropriate.

    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 disclosure. It only says 'Deletes a version' without mentioning consequences such as irreversibility, permission requirements, or potential side effects. This is insufficient for a destructive operation.

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

    Conciseness5/5

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

    The description is a single, clear sentence with no wasted words. The action verb is front-loaded, making the purpose instantly recognizable.

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

    Completeness2/5

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

    Given no annotations, no output schema, and the destructive nature of the tool, the description is too terse. It fails to provide necessary context about the operation's effects, prerequisites, or error behavior.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the baseline is 3. The description adds no new parameter-level detail beyond the schema, though it implies the relationship between the version ID and project identifiers.

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

    Purpose5/5

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

    The description states a specific verb ('Deletes') and resource ('a version from a project'), making the tool's purpose immediately clear and distinguishing it from sibling deletion tools like delete_project or delete_issue.

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

    Usage Guidelines2/5

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

    The description gives no guidance on when to use this tool, what prerequisites exist, or which alternatives might be more appropriate. It is a bare statement of the action with no context for selection.

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

  • Behavior2/5

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

    With no annotations, the description carries full burden, but it only says 'Gets a list' without disclosing pagination behavior, ordering, or potential side effects. The offset parameter hints at pagination, but the description does not explain it.

    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?

    A single sentence that delivers the core purpose without any fluff. It is easily scannable and appropriately sized.

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

    Completeness2/5

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

    The tool lacks annotations and output schema, and the description is minimal. It does not mention response format, pagination details, or that projectIds is required, leaving important gaps for an agent to infer.

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

    Parameters3/5

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

    The schema provides 100% coverage with descriptions for both parameters (offset and projectIds). The description adds no extra meaning, so the baseline of 3 is appropriate.

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

    Purpose5/5

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

    The description clearly states the tool gets a list of documents within a project, using a specific verb and resource. It naturally distinguishes from siblings like get_document (single document) and get_document_tree (hierarchical view).

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

    Usage Guidelines2/5

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

    There is no guidance on when to use this tool versus alternatives such as get_document_tree or get_document. The description does not provide conditions, prerequisites, or exclusions.

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

  • Behavior2/5

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

    With no annotations, the description carries the full burden of behavioral disclosure, but it only states the action without detailing return format, depth of the tree, pagination, or side effects. The read-only nature is implied by the name 'get' but not explicitly confirmed.

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

    Conciseness5/5

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

    The description is a single, front-loaded sentence with no redundant words. It efficiently communicates the core action and resource without unnecessary elaboration.

    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 and annotations, the description is too sparse. It fails to clarify what a 'document tree' entails or how it differs from a flat document list, leaving significant uncertainty for an AI agent deciding whether to invoke this tool.

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

    Parameters3/5

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

    Schema coverage is 100% since the single parameter 'projectIdOrKey' already includes a description ('Project ID or Key'). The description adds no additional parameter semantics, so the baseline score of 3 is appropriate.

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

    Purpose5/5

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

    The description uses the clear verb 'Gets' with a specific resource 'the document tree of a project', which distinguishes it from sibling tools like get_documents and get_document. The scope is explicitly tied to a project, making the purpose unambiguous.

    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 get_documents or get_document. The description neither gives context for selection nor mentions any exclusions 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 responsibility for behavioral disclosure. It only says 'Returns list of comments' without mentioning pagination behavior (e.g., minId/maxId), permissions, error cases, or whether the operation is read-only beyond the verb 'Returns'. This leaves the agent uncertain about real-world behavior.

    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, grammatically clear sentence with zero filler. It conveys the core purpose efficiently, making it appropriately concise for a simple retrieval tool.

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

    Completeness2/5

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

    The tool has 6 parameters, no output schema, and no annotations. The description fails to explain how to identify an issue (issueId vs issueKey), how to leverage count/minId/maxId/order for pagination, or what the response structure looks like. This is a significant gap for an agent to invoke the tool correctly.

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

    Parameters3/5

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

    The input schema has 100% coverage with descriptions for all 6 parameters, so the baseline is 3. The description adds no extra semantic value beyond the schema; it neither explains parameter relationships nor clarifies optionality. Thus, it does not elevate beyond the schema-provided information.

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

    Purpose5/5

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

    The description clearly states a specific verb ('Returns') and resource ('list of comments for an issue'), making the tool's purpose immediately understandable. It distinguishes itself from sibling tools like add_issue_comment/update_issue_comment by focusing on retrieval, and from get_pull_request_comments by scoping to issues.

    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 or when not to use it. The description only states what the tool does, not the context or prerequisites, 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?

    With no annotations, the description carries the full burden of disclosing behavior. It only says 'Returns information,' which is essentially the purpose and does not detail side effects, required permissions, return structure, or behavior when both identifiers are provided. The read-only nature is implied but 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.

    Conciseness5/5

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

    The description is a single, straightforward sentence with no wasted words. It is appropriately concise for a simple getter tool, providing the core purpose without unnecessary 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?

    Despite the simple nature of the tool, the description lacks details about what 'information' is returned, which of the two optional parameters should be supplied, or how this tool relates to siblings like get_project_list. The lack of an output schema makes the vague 'information' more problematic, leaving the agent without enough context to fully understand the tool's capabilities.

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

    Parameters3/5

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

    The input schema fully documents both parameters (projectId as numeric ID, projectKey as string key), achieving 100% schema description coverage. The description adds no parameter-specific meaning, so the baseline score of 3 applies as the schema already handles semantics.

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

    Purpose5/5

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

    The description uses a specific verb ('Returns') and resource ('a specific project'), clearly distinguishing it from sibling tools like get_project_list. The phrase 'specific project' unambiguously signals a single-resource lookup, which differentiates it from other project-related tools.

    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 get_project_list or get_project_users. The description does not mention any conditions, prerequisites, or exclusions, leaving the agent to infer usage from the tool 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?

    Since no annotations are provided, the description carries full responsibility for behavioral disclosure. It only says 'returns information' without mentioning authentication, error behavior, required identifiers, or response format, leaving significant ambiguity.

    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 concise sentence with no filler, front-loading the core purpose. It is appropriately minimal for a simple retrieval tool.

    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?

    While the schema covers parameters, the description lacks context on which identifier is necessary (number is required, but optional params are unclear) and provides no output schema or behavioral details. For a 5-param tool with no annotations, this leaves gaps in usability.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the schema already documents all parameters (number, repoId, repoName, projectId, projectKey). The description adds no additional parameter semantics, warranting the baseline score of 3.

    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 returns information about a specific pull request, using a specific verb and resource. The word 'specific' distinguishes it from sibling tool get_pull_requests, which presumably lists multiple pull requests.

    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 like get_pull_requests for listing or get_pull_request_comments for comments. There are no explicit prerequisites or context indicating scenarios where this tool is preferred.

    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 the only source of behavioral information. It simply states a return value without disclosing side effects, read-only status, or any unusual behavior. The agent cannot know if this operation is safe or if any parameters have 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.

    Conciseness5/5

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

    The description is a single, clear sentence with no unnecessary words. It directly states the tool's purpose without filler.

    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 10 parameters and no output schema, the description is too sparse. It does not explain filtering options, pagination, or the structure of returned data. Even though the parameter names give hints, the description does not provide enough contextual guidance for correct usage.

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

    Parameters3/5

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

    The schema description coverage is 100%, so all ten parameters are documented in the schema. The description adds no additional parameter semantics beyond the schema, so it remains at the baseline.

    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 returns a list of pull requests for a repository, using the verb 'returns' and the resource 'pull requests'. It distinguishes from sibling tools like get_pull_request (singular) and get_pull_requests_count.

    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 about when to use this tool versus other pull request tools. The description does not mention any exclusions or alternatives, leaving the agent to infer from the name.

    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, but it only states the basic function. It does not mention permissions, error behavior, response format, or any limitations, which is a significant gap for a tool with no structured metadata.

    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, well-formed sentence that front-loads the action and resource. There is no unnecessary information, making it highly 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?

    The tool has no output schema, and the description does not explain what the returned list contains (e.g., full issues vs. IDs) or how the two optional parameters should be used together. The description is too minimal to fully guide an agent for a list-returning tool.

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

    Parameters3/5

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

    The schema describes both parameters with clear names and descriptions (issueId as a numeric ID, issueKey as a key). The description adds no further meaning beyond the schema, so the baseline of 3 applies because schema coverage is 100%.

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

    Purpose5/5

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

    The description uses a specific verb ('Returns') and clearly identifies the resource ('list of issues related to a specific issue'). This distinguishes it from siblings like add_related_issue and remove_related_issue, which are write operations, and from get_issue, which returns a single issue.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It does not mention any exclusions or alternative tools, leaving the usage context solely to inference from the tool name and description.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden. It only says 'returns' which implies a read operation, but does not disclose any pagination, default sorting, or permission requirements. The schema parameters like 'order' and 'count' exist but are not explained in the description.

    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, focused sentence that immediately states the purpose. There is no fluff or redundant information.

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

    Completeness2/5

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

    The tool has no output schema, and the description does not explain the shape or content of the returned activity objects. It only mentions 'activities' without detailing key fields or behavior. The schema covers input parameters but not the response structure, leaving a gap for agent understanding.

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

    Parameters3/5

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

    The input schema has 100% parameter description coverage, so the baseline is 3. The description does not add further meaning to the parameters, but the schema already describes each parameter clearly (e.g., count, maxId, minId, order, userId, activityTypeId).

    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 returns recent updates/activities for a specific user, using a specific verb ('returns') and resource. It distinguishes from sibling tools like get_space_activities by scoping to a user.

    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 other activity-related tools such as get_space_activities or get_notifications. There are no alternatives 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?

    Without annotations, the description must disclose behavioral traits, but it only states the return value. It does not explicitly confirm read-only status, clarify what 'watching items' includes, or mention response format or edge cases.

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

    Conciseness5/5

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

    The description is a single, front-loaded sentence with no filler. It efficiently conveys the tool's purpose without unnecessary words.

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

    Completeness2/5

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

    Given the lack of annotations and output schema, the description is too sparse. It does not specify the response shape (e.g., raw number vs object), behavior for invalid users, or the exact meaning of 'watching items'.

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

    Parameters3/5

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

    The schema already provides full coverage for the single userId parameter with a clear description. The tool description adds no additional meaning beyond what the schema already conveys, so the baseline score of 3 is appropriate.

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

    Purpose5/5

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

    The description clearly states the tool returns a count of watching items for a user, with a specific verb and resource. It distinguishes itself from the sibling get_watching_list_items by explicitly mentioning 'count'.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It does not mention that get_watching_list_items returns the full list, nor any other 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?

    With no annotations provided, the description carries full responsibility for behavioral disclosure. However, it merely restates the tool name without mentioning side effects, idempotency, return values, or error conditions, leaving significant behavioral ambiguity.

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

    Conciseness4/5

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

    The description is a single concise sentence, appropriately sized for a simple tool. However, it adds little beyond the tool name itself, so it is not fully earning its place, preventing a perfect score.

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

    Completeness3/5

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

    For a one-parameter, no-output-schema tool, the core action is clearly stated. However, the absence of any details about return behavior, side effects, or permission requirements leaves some contextual gaps, though the simplicity of the operation mitigates the impact.

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

    Parameters3/5

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

    Schema description coverage is 100% with a clear parameter description ('Notification ID to mark as read'). The tool description adds no new information, but the baseline of 3 applies because the schema already fully documents the single parameter.

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

    Purpose5/5

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

    The description clearly states the action (mark) and the resource (notification) with the specific state change (as read). This distinctively differentiates it from sibling tools like mark_watching_as_read, which targets a different resource.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives. There is no context about prerequisites (e.g., notification must exist) or when to prefer this over related notification operations like reset_unread_notification_count.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden. It says 'Removes the relation' but does not disclose whether the operation is destructive to the issues themselves, whether it is idempotent, what happens if the relation does not exist, or any permission requirements. This is a significant transparency gap for a mutation tool.

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

    Conciseness5/5

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

    The description is a single sentence that immediately conveys the core action. It is front-loaded and contains no filler, making it highly efficient for an agent to parse.

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

    Completeness2/5

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

    Given the tool's complexity (3 parameters, no output schema, no annotations), the description is too thin. It does not clarify how to identify the primary issue (issueId vs. issueKey), what response to expect, or whether the operation has side effects. The agent would need external knowledge or additional documentation to invoke it reliably.

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

    Parameters3/5

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

    The schema covers all three parameters with individual descriptions, giving a baseline of 3. The tool description adds no further parameter explanation, but the schema's description of relatedIssueId as 'the related issue to unlink' and issueId/issueKey as identifiers is sufficient for understanding each field. However, the optionality of issueId/issueKey and the required status of relatedIssueId could confuse an agent about which issue is primary; the description does not resolve this.

    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: 'Removes the relation between an issue and a related issue'. It uses a specific verb (removes) and a distinct resource (relation between issues), which separates it from deletion tools like delete_issue or delete_watching. The purpose is unambiguous.

    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, nor are any prerequisites or exclusions mentioned. The description only states what the tool does, leaving the agent to infer usage from the schema and sibling tool names.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It only states the basic mutation operation without disclosing side effects (e.g., mailNotify behavior), permission requirements, failure cases, or whether it performs a partial or full update.

    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 filler words. It is front-loaded and immediately communicates the core action and target.

    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 mutation tool with 4 parameters and no annotations or output schema, this one-line description is inadequate. It does not explain which attributes can be updated or the implications of the update, leaving the agent to infer from parameters alone.

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

    Parameters3/5

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

    Schema description coverage is 100%, with each parameter (name, wikiId, content, mailNotify) having a description. The tool description adds no parameter-specific meaning, so the baseline of 3 is appropriate.

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

    Purpose5/5

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

    The description uses the specific verb 'Updates' and identifies the resource as an 'existing wiki page', clearly distinguishing it from sibling tools like add_wiki. It conveys both the action and the scope (existing entity).

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It does not mention add_wiki for creation or get_wiki for reading, nor any conditions that would make this tool inappropriate.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full responsibility for disclosing behavior. It only states the action ('creates') but provides no details on effects, permissions, idempotency, or return values, so it is minimally transparent.

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

    Conciseness4/5

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

    The description is a single, clear sentence with no wasted words. However, it is under-specified, which prevents a score of 5, but it is appropriately concise for its purpose.

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

    Completeness2/5

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

    While the schema describes all parameters, the description lacks context about the return value, authentication requirements, or any behavioral nuances. For a mutation tool with no annotations and no output schema, this is insufficient for an agent to fully understand the tool's use.

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

    Parameters3/5

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

    Schema description coverage is 100%, with each parameter having a description. The tool description adds no parameter-level information, but the baseline of 3 is appropriate since the schema already handles parameter semantics.

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

    Purpose5/5

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

    The description states a clear verb+resource: 'Creates a new project'. This distinguishes it from sibling tools like get_project, update_project, and delete_project, as it is the only creation operation for projects.

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

    Usage Guidelines3/5

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

    The description implies that this tool is used when creating a new project, but it provides no explicit context about when to use it versus alternatives, prerequisites, or any exclusions. It lacks guidance on required fields like name and key.

    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 carry the full burden of behavioral disclosure. It only says 'Adds', implying a mutation, but does not mention permissions, idempotency, side effects, return values, or error conditions. The agent gets no safety-relevant 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, concise sentence that front-loads the action and object. Every word earns its place, with no filler or redundancy.

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

    Completeness3/5

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

    Given the tool's low complexity (2 simple parameters, no output schema), the description and schema cover the bare essentials. However, it lacks usage context (e.g., when to add a watch vs. alternatives) and any details about the operation's effect or return behavior. It is minimally adequate but not rich.

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

    Parameters3/5

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

    The input schema already describes both parameters (issueIdOrKey and note) with 100% coverage. The description adds no additional meaning beyond the schema, so the baseline of 3 applies.

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

    Purpose5/5

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

    The description clearly states the action ('Adds') and the object ('a new watch to an issue'), using a specific verb+resource construction that distinguishes it from sibling tools like delete_watching and update_watching. The purpose is immediately understandable.

    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 delete_watching, update_watching, or mark_watching_as_read. There are no prerequisites, exclusions, or context clues 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 are provided, so the description carries the full burden. It says 'Returns' which implies a read-only operation, but it does not disclose any side effects, authentication requirements, rate limits, or return format details, leaving significant behavioral ambiguity.

    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 clear sentence with no wasted words. It conveys the core purpose without padding, which is appropriate for a simple getter tool.

    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 no output schema and no annotations, the description should explain what information is returned. Merely saying 'information about the Backlog space' is vague and leaves the agent guessing about the response structure, so the tool is under-specified for effective invocation.

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

    Parameters4/5

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

    The tool has zero parameters, and schema coverage is trivially 100%. The description does not need to add parameter semantics, and per guidelines a baseline of 4 is appropriate for no-param tools.

    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 returns information about the Backlog space, using a specific verb ('Returns') and a distinct resource ('Backlog space'). It is not a tautology and distinguishes from siblings by the unique resource, though 'information' is somewhat vague.

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

    Usage Guidelines3/5

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

    The intended use is implied: call this tool when you need information about the Backlog space. However, there is no explicit guidance on when not to use it or mention of alternatives, though for a simple getter with no params this is acceptable.

    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 for behavioral disclosure. It mentions 'Returns' but does not confirm read-only behavior, authentication requirements, pagination, or what fields each watching item contains. This is a minimal disclosure.

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

    Conciseness5/5

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

    The description is a single concise sentence that front-loads the main action and object. It contains no filler or redundant information.

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

    Completeness3/5

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

    For a simple list tool with one parameter and no output schema, the description provides the basic purpose but lacks return structure details or any usage context. It is minimally viable but does not clarify what a 'watching item' contains or how results are ordered/paginated.

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

    Parameters3/5

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

    The schema description covers 100% of parameters (userId) with a clear 'User ID' description. The tool description adds only the context that items are returned 'for a user', but this roughly maps to the existing parameter meaning. Baseline 3 is appropriate.

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

    Purpose5/5

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

    The description clearly states the action ('Returns list') and the resource ('watching items for a user'), which distinguishes it from sibling tools like get_watching_list_count, add_watching, and delete_watching. It is specific and unambiguous.

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

    Usage Guidelines2/5

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

    There is no guidance on when to use this tool versus alternatives such as get_watching_list_count or related watching mutations. The only implied context is 'for a user', but no explicit exclusions or alternative recommendations are provided.

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

  • Behavior2/5

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

    With no annotations, the description carries the full burden of disclosing behavioral traits. It only says 'Creates a new version milestone' without mentioning side effects, permissions, reversibility, or return values. 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.

    Conciseness5/5

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

    The description is a single, concise sentence with no unnecessary words or repetitive content. It is perfectly front-loaded and efficiently communicates the core purpose.

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

    Completeness2/5

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

    Given the lack of annotations and output schema, the description should provide more context about expected inputs, requirements, or response behavior. It does not clarify the roles of projectId versus projectKey, nor what the tool returns after creation. This is a significant gap for a create operation with six parameters.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the baseline is 3. The tool description adds no parameter details beyond what the schema already provides. The schema descriptions are minimal but present, and the tool description contributes nothing extra.

    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 'Creates a new version milestone' uses a specific verb and resource, clearly distinguishing it from sibling tools like update_version_milestone and delete_version. It states exactly what action is performed and on what entity.

    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?

    Usage is implied through the verb 'creates', and the sibling list includes update/delete tools, making the tool's role apparent. However, there is no explicit guidance on when to use this tool versus alternatives, nor any mention of prerequisites like projectId or projectKey being required.

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

  • Behavior2/5

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

    No annotations are provided, so the description must disclose behavioral traits on its own. It only states that a list is returned; it does not mention whether projectId or projectKey (or both) is required, how they interact (e.g., mutually exclusive), error behavior, authentication needs, or the response format. This is a significant gap for such a bare description.

    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, well-formed sentence that immediately states the action and resource. There is zero fluff, and it is front-loaded with the main purpose. It earns the top score for conciseness.

    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 no annotations and no output schema, the description is incomplete. It does not clarify whether at least one parameter is required, whether projectId and projectKey are alternatives or can be combined, nor what a returned custom field object contains. Given the low complexity, the agent could still infer some usage, but the ambiguous optionality of both parameters creates a real gap.

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

    Parameters3/5

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

    Schema description coverage is 100%, as both projectId and projectKey have clear descriptions (numeric ID and key, with examples). The description adds no further semantics beyond 'for a project'. This falls at the baseline of 3, where the schema handles parameter meaning and the description adds little extra.

    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 'Returns list of custom fields for a project' clearly states a specific verb ('Returns'), a distinct resource ('custom fields'), and scope ('for a project'). It distinguishes from all sibling tools, none of which deal with custom fields, so the agent can easily identify its unique purpose.

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

    Usage Guidelines3/5

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

    No explicit guidance is given about when to use this tool versus alternatives, and no exclusions or prerequisites are mentioned. However, the purpose is self-evident: if a user needs custom fields for a project, this is the tool to call. Usage is implied but not explicitly contrasted with other getters, so a mid-range score is appropriate.

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

  • Behavior2/5

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

    With no annotations, the description carries the full burden of behavioral disclosure. It only states 'returns list' which implies a read operation, but does not clarify behavior like requiring a project identifier, handling missing parameters, or edge cases such as empty results. The description adds minimal transparency beyond the function name.

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

    Conciseness5/5

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

    The description is a single, front-loaded sentence with no filler words. It efficiently conveys the essential purpose without redundancy.

    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 two optional parameters and no output schema, the description leaves ambiguity about whether at least one parameter is required, whether they are mutually exclusive, and what the returned list contains. The description does not sufficiently compensate for the lack of annotations or output schema, making it incomplete for a tool with this ambiguity.

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

    Parameters3/5

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

    Schema coverage is 100% with both parameters (projectId and projectKey) already described clearly. The description does not add any additional meaning or usage notes for the parameters, so the baseline score of 3 applies.

    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 the tool returns a list of Git repositories for a project, using a specific verb and resource. The inclusion of 'list' distinguishes it from the sibling tool 'get_git_repository' which likely returns a single repository.

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

    Usage Guidelines3/5

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

    The description implies usage context ('for a project') but does not explicitly state when to prefer this over 'get_git_repository' or mention alternatives/exclusions. No when-not-to-use guidance is provided, so it remains at an implied level.

    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 burden of behavioral disclosure. It only says 'returns information' with no detail on safety, possible errors, or what exactly is returned. This is minimal and leaves the agent without meaningful 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 concise sentence with no filler. It is front-loaded and every word contributes to the core meaning.

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

    Completeness2/5

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

    The tool has 4 optional parameters with no required fields and no output schema. The description does not explain how these parameters should be combined, what information is returned, or potential edge cases. This leaves significant gaps for a tool that appears simple but has identification ambiguity.

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

    Parameters3/5

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

    Schema description coverage is 100%, and each parameter has a clear description (repoId, repoName, projectId, projectKey). The description itself adds no parameter guidance, but the schema already handles parameter semantics well, grounding the baseline score at 3.

    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 returns information about a specific Git repository, using a direct verb and resource. It distinguishes from sibling get_git_repositories by emphasizing 'specific', which indicates singular vs. list.

    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 'a specific' implies this tool is for fetching a single repository, contrasting with get_git_repositories for listing. However, it does not explicitly state when to use this tool over alternatives, so guidance remains implicit.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the core action without mentioning side effects, irreversibility, permission requirements, or return value. For a destructive operation, this is a notable gap.

    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 concise sentence with no superfluous words, making it easy to parse and immediately actionable.

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

    Completeness3/5

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

    For a simple 1-parameter delete operation, the description covers the essential purpose. However, with no annotations or output schema, it leaves out behavioral details such as response format or permanence. The high schema coverage partially compensates for the lack of additional context.

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

    Parameters3/5

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

    The schema fully documents the single parameter watchId with the description 'Watch ID to delete', achieving 100% schema coverage. The tool description adds no further meaning beyond the schema, so the baseline of 3 is appropriate.

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

    Purpose5/5

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

    The description uses the specific verb 'Deletes' and names the resource 'watch from an issue', clearly distinguishing it from sibling tools like add_watching or update_watching. The purpose is unambiguous.

    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 verb 'Deletes' implies when to use it, but there is no explicit guidance on alternatives or exclusions. For example, it does not clarify that mark_watching_as_read is for read status, not removal. The usage context is implied rather than stated.

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

  • Behavior3/5

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

    With no annotations supplied, the description must fully disclose behavioral traits. It indicates a read operation ('Returns'), but does not clarify whether the tool is read-only (though implied), how errors are handled, or what happens if no parameters are provided. The description is simple and non-misleading, but lacks explicit safety or error 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, six-word sentence that is front-loaded and free of any extraneous information. It maximizes clarity in minimal space, earning a perfect score.

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

    Completeness3/5

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

    The description is mostly sufficient for a simple list-returning tool, but it leaves ambiguity about the optional parameters (both are optional) and does not explain behavior when neither is provided. It also does not mention return format or pagination, and with no output schema, some of this burden falls on the description. More detail would improve completeness.

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

    Parameters3/5

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

    The schema provides descriptions for both parameters (100% coverage), so the baseline is 3. The tool description adds no parameter-level meaning, and the schema descriptions themselves are somewhat inaccurate (projectKey described as numeric ID). The description does not compensate for or correct this, keeping the score at baseline.

    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 ('Returns list of categories') and the scope ('for a project'), making the tool's purpose specific and unambiguous. It distinguishes from siblings by naming the resource 'categories', though it does not explicitly contrast with similar list-getting tools like get_custom_fields or get_issue_types.

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

    Usage Guidelines3/5

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

    The description implies the primary use case—retrieving categories for a project—but offers no explicit guidance on when to choose this tool over alternatives or any exclusions. It lacks context such as 'Use this when you need the list of category IDs' or 'Not for custom fields'.

    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 carry the full burden of behavioral disclosure. It only states that the tool returns a list, but does not mention required parameters (projectId vs projectKey), error handling, authentication needs, or response structure. For a read operation, minimal disclosure may be acceptable, but the lack of parameter-requirement clarity is a notable gap.

    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 of nine words, front-loaded with the action and result. It contains zero redundant information and is easy to parse quickly.

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

    Completeness3/5

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

    For a simple list-retrieval tool with well-documented parameters, the description is minimally sufficient. However, it does not clarify whether both parameters are required or how to choose between them, nor does it describe the return value structure. Given the absence of an output schema, slightly more detail would improve completeness.

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

    Parameters3/5

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

    The input schema provides 100% coverage with both parameters having descriptive text and examples. The description adds no parameter-specific semantics beyond what the schema already offers, so the baseline score of 3 is appropriate.

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

    Purpose5/5

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

    The description uses a specific verb ('Returns') and resource ('list of users') with a clear scope qualifier ('in a specific project'). This clearly distinguishes it from sibling tools like get_users (all users) and get_project (project details). The purpose is immediately obvious.

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

    Usage Guidelines3/5

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

    The description implies usage context (project-scoped user retrieval) but does not explicitly state when to use this versus get_users or when not to use it. No exclusions or alternative tool references are provided, leaving the decision partially to inference.

    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 implies a read-only operation ('Returns count'), but it does not clarify whether projectId or projectKey is required, what happens if both or neither are provided, or any access restrictions. This ambiguity could lead to incorrect invocation.

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

    Conciseness5/5

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

    The description is a single, front-loaded sentence with no wasted words. It efficiently conveys the core functionality.

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

    Completeness3/5

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

    The description is sufficient for a basic understanding, but it leaves critical gaps: the schema lists both parameters as optional, yet the description never specifies that at least one is needed for the count. Additionally, the exact return format (e.g., number vs. object) is not stated, and there is no output schema or annotations to fill these gaps.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the baseline is 3. The description adds no parameter-level meaning beyond what the schema already provides; projectId and projectKey are already explained in the schema.

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

    Purpose5/5

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

    The description clearly states the tool's function with a specific verb ('Returns count') and resource ('wiki pages in a project'). It distinguishes from siblings like get_wiki_pages, which returns the pages themselves, and count_issues, which counts a different resource.

    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 usage context is implied—use when you need the number of wiki pages—but the description does not explicitly state when not to use it or mention alternatives such as get_wiki_pages for page details. No exclusion or alternative guidance is provided.

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

  • Behavior2/5

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

    No annotations are provided, so the description must carry the full burden. It states the tool 'Returns list of issue types', which indicates a read operation, but it does not disclose additional traits such as authentication requirements, error conditions, or the structure of returned data. This is minimal behavioral disclosure.

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

    Conciseness5/5

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

    The description is a single concise sentence of eight words. It contains no redundant or filler content, effectively communicating the tool's purpose with minimal length.

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

    Completeness4/5

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

    Given the tool's low complexity and that the schema documents both parameters with examples, the description provides the essential purpose. However, the lack of annotations leaves out read-only safety, return format, and authentication details, which is a minor gap for such a simple getter.

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

    Parameters3/5

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

    The input schema covers both parameters (projectId and projectKey) with clear descriptions, achieving 100% schema coverage. The description adds no additional parameter semantics, such as which identifier to use or what happens if neither is provided. Baseline 3 is appropriate.

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

    Purpose5/5

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

    The description uses a specific verb 'Returns' and identifies a concrete resource 'list of issue types' with scope 'for a project'. This clearly distinguishes it from sibling tools like get_priorities or get_categories.

    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 'for a project' implies the tool requires a project context, but it does not explicitly state when to use this tool versus alternatives like get_priorities. There is no mention of required parameters or how to choose between projectId and projectKey.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states 'Returns,' implying a read operation, but does not mention whether the count includes all stars or is filtered by date, how the count is computed, or any side effects. This adds minimal 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.

    Conciseness5/5

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

    The description is a single sentence of 10 words, front-loaded with the action and result. Every word earns its place, with no redundant or fluff content.

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

    Completeness4/5

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

    For a simple count tool with well-documented parameters and no output schema, the description is sufficient to infer the return value is a number. It clearly states what is returned (the count), and the schema handles parameter details. However, it could have clarified the return type explicitly or mentioned the optional date range, but it does not compromise understanding.

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

    Parameters3/5

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

    The input schema has 100% coverage with descriptions for all three parameters (since, until, userId). The description adds no parameter-specific meaning, leaving the schema to carry the load. The baseline of 3 is appropriate when schema coverage is high.

    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 identifies the tool's function: it returns a count of stars received by a user. The verb 'Returns' and specific resource 'count of stars received by a user' distinguish it from sibling tools like get_user_recent_updates, which focus on recent updates rather than a count.

    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 purpose implies when to use the tool (whenever a user's star count is needed), but no explicit guidance is given about alternatives or exclusions. There is no mention of when not to use it or which sibling tools might serve different purposes.

    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 bears the full burden. It only states that the tool returns information, which is essentially its core function, and does not disclose behavior around missing issues, parameter requirements, output format, or any safety attributes.

    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 concise sentence that front-loads the core purpose without any fluff. Every word contributes to the meaning.

    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?

    This is a simple tool with two well-documented optional parameters and no output schema. The description conveys the basic single-issue retrieval purpose but lacks information about how to choose between the two identifier parameters or what the response contains, leaving a small completeness gap.

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

    Parameters3/5

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

    The input schema describes both issueId and issueKey with examples, covering 100% of parameters. The description adds no extra parameter semantics, but with high schema coverage the baseline score of 3 is appropriate.

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

    Purpose5/5

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

    The description uses a specific verb 'returns' and resource 'information about a specific issue', clearly distinguishing this from sibling tools like get_issues (plural) and mutation tools. It is immediately clear that this tool targets a single issue.

    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 phrase 'a specific issue' provides clear context for when to use this tool: when retrieving details of one issue, not a list. It does not explicitly name alternatives or exclusions, but the specificity of the scope is sufficient guidance.

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

  • Behavior3/5

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

    With no annotations, the description carries the full burden of behavioral disclosure. 'Returns information' indicates a read-only operation, but it does not describe the response format, potential errors, or authentication requirements. For a simple getter, this minimal disclosure is adequate but not rich.

    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, concise sentence of nine words, front-loaded with the action and resource. It contains no redundant information and earns its place entirely.

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

    Completeness3/5

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

    The tool is simple with only one parameter and no output schema, so the description is minimally adequate. However, it does not specify what 'information' is returned, which could be improved. Given the low complexity, it is acceptable but not complete.

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

    Parameters3/5

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

    The input schema provides 100% coverage, with the only parameter (wikiId) having a description 'Wiki ID'. The tool description adds no extra parameter-level meaning beyond what the schema already specifies, so baseline of 3 is appropriate.

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

    Purpose5/5

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

    The description uses a specific verb 'Returns' with a clear resource 'specific wiki page', distinguishing it from sibling tools like get_wiki_pages (list) and get_wikis_count (count). The word 'specific' emphasizes that this is for a single page, making the purpose unambiguous.

    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 is provided. The use of 'specific' implies it's for retrieving an individual wiki page rather than listing, but the description does not state exclusions or mention get_wiki_pages as an alternative for lists. Usage is implied rather than clearly instructed.

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

  • Behavior3/5

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

    With no annotations, the description carries the full burden. It states the return value but does not disclose details such as whether inactive users are included, ordering, or permission requirements. This is a minimal but non-contradictory disclosure.

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

    Conciseness5/5

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

    The description is a single, front-loaded sentence with no wasted words. It earns a high score for clarity and brevity.

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

    Completeness4/5

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

    The tool is simple with no parameters and no output schema. The description sufficiently conveys the basic purpose, though it could be more complete by mentioning response format or scope. Given low complexity, it is adequate.

    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 description accurately reflects that there are no arguments to configure. The baseline of 4 for zero-parameter tools applies.

    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 returns a list of users in the Backlog space, using a specific verb and resource. It distinguishes from related user-specific getters like get_myself and get_user_stars_count.

    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 other user-related tools. It does not mention alternatives 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?

    With no annotations provided, the description carries the full burden for behavioral disclosure. It states it returns information but does not disclose what specific fields are returned, whether authentication is required, or any potential errors. Minimal value beyond the basic action.

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

    Conciseness5/5

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

    The description is a single, succinct sentence with no redundant words or repetition of existing schema/annotations. It earns its place entirely.

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

    Completeness4/5

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

    Given the tool's simplicity (0 params, no output schema), the description is adequate for basic understanding. However, it could hint at the shape of returned information or mention authentication requirement to be fully complete.

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

    Parameters4/5

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

    There are zero parameters, so the description need not explain parameter details. The empty schema is fully covered, and the baseline for 0-param tools is 4.

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

    Purpose5/5

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

    The description uses a specific verb ('Returns') and resource ('information about the authenticated user'), clearly distinguishing this tool from sibling tools like get_users or get_user_recent_updates by focusing on the current authenticated user.

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

    Usage Guidelines4/5

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

    The description clearly implies the tool should be used when you need the current authenticated user's info, but it does not explicitly mention alternatives or when not to use it. Context is clear enough for an agent to select it over related user-focused tools.

    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

backlog-mcp-server MCP server

Copy to your README.md:

Score Badge

backlog-mcp-server 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/nulab/backlog-mcp-server'

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