Skip to main content
Glama

Server Quality Checklist

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

  • Disambiguation3/5

    Tools like list_issues, search_issues, and semantic_search have overlapping purposes despite different mechanisms. Similarly, get_issue_status duplicates get_issue's state info, and the many save_* tools could confuse agents. Descriptions help but the sheer number causes ambiguity.

    Naming Consistency4/5

    Most tools follow a verb_noun pattern (e.g., list_issues, save_issue), with minor deviations like get_issue_status and link_url_to_issue. The use of save_ for create/update is consistent, but some names like list_issue_labels are slightly inconsistent.

    Tool Count2/5

    57 tools is excessive for a single MCP server, even for a feature-rich platform like Linear. Many tools could be merged or streamlined (e.g., multiple search variants, separate create/update tools), leading to agent decision fatigue.

    Completeness4/5

    The tool set covers most Linear concepts: issues, projects, comments, documents, webhooks, notifications, attachments, relations, and agent sessions. Missing CRUD for teams, users, cycles, and workflow states, but these are less critical for typical workflows.

  • Average 3.4/5 across 57 of 57 tools scored. Lowest: 2.1/5.

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

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

  • If you are the author, simply .

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

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

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

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

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

How is the quality score calculated?

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

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

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

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

Tool Scores

  • Behavior2/5

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

    No annotations provided, so description must carry the burden. It only states basic purpose without disclosing pagination, rate limits, auth requirements, or that it returns a limited list.

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

    Conciseness2/5

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

    Single sentence is concise but under-specified. The brevity sacrifices necessary details.

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

    Completeness2/5

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

    The tool's output schema exists but description does not mention return format or pagination. Incomplete for a list operation.

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

    Parameters1/5

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

    Schema coverage is 0% and description does not mention any of the three parameters (after, first, workspace). No added value beyond the schema.

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

    Purpose3/5

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

    The description states the tool lists documents, which is clear but generic. It does not distinguish from sibling tools like 'search_documents' or 'get_document', nor specify scope or filtering.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool vs alternatives like search_documents. No context on 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?

    No annotations are provided, so the description carries full burden. It only states 'full-text search', implying a read operation, but does not disclose pagination, sorting, output structure, rate limits, or any other behavioral traits beyond scope.

    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 with no wasted words. While it could be slightly more informative, it is appropriately concise.

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

    Completeness1/5

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

    Given the tool has 4 parameters with no schema descriptions and no annotations, the description is severely incomplete. It lacks parameter details, output context, and usage guidance, making it inadequate for an agent to use correctly.

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

    Parameters1/5

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

    Schema description coverage is 0%, requiring the description to compensate, but it provides no explanation for the 4 parameters (query, after, first, workspace). The description adds zero value beyond their names.

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

    Purpose4/5

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

    The description clearly states the tool does full-text search across workspace documents and explicitly excludes Linear's dev docs, providing a specific verb and resource. However, it does not fully differentiate from semantic_search or other search tools among siblings.

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

    Usage Guidelines2/5

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

    The description only provides a negative guideline (NOT for dev docs) but lacks explicit when-to-use or when-not-to-use guidance, and no alternatives are mentioned among the numerous sibling search tools.

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

  • Behavior1/5

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

    No annotations are provided, so the description must fully convey behavioral traits, but it fails to mention that the tool supports pagination (via 'after' and 'first' parameters) or that it is a read-only operation. No side effects or behavior on missing issue_id are disclosed.

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

    Conciseness4/5

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

    The description is extremely short (one sentence) and front-loaded with the core purpose. However, it sacrifices necessary detail for brevity.

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

    Completeness1/5

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

    Given the presence of four parameters (including pagination and workspace) and no output schema description, the description is severely incomplete. It does not cover how to page through results, the meaning of workspace, or the output format.

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

    Parameters1/5

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

    With 0% schema description coverage, the description should explain each parameter, but it does not. The description only says 'List attachments on one issue', leaving the four parameters (after, first, issue_id, workspace) wholly unexplained.

    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 (List) and the resource (attachments) with a specific scope (on one issue). It effectively distinguishes from sibling tools like get_attachment, delete_attachment, or link_url_to_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?

    No guidance on when to use this tool versus alternatives. It does not mention any prerequisites, limitations, or context for use (e.g., pagination or filtering).

    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 'Get', which implies a read operation, but lacks details on authentication, error handling, or side effects.

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

    Conciseness3/5

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

    The description is extremely concise (one sentence), but at the cost of omitting useful details. It is front-loaded but could be more informative.

    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 an output schema exists to cover return values, the description lacks guidance on parameter usage, behavioral expectations, and how this tool fits with siblings. For a simple get tool, more context on the workspace parameter and potential errors would be valuable.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description does not explain the parameters (id, workspace). The agent must rely solely on the schema, which provides no semantic meaning.

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

    Purpose5/5

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

    The description clearly states the verb 'Get' and the resource 'agent session by UUID', making the tool's purpose very specific. It distinguishes itself from sibling tools like list_agent_sessions and create_agent_session_on_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?

    No guidance on when to use this tool versus alternatives, such as list_agent_sessions. No context about preconditions or when not to use it.

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

  • 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 the action without mentioning whether it returns file content or metadata, what happens on not found, or authentication requirements.

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

    Conciseness3/5

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

    Extremely concise (5 words), but lacks necessary details. While brevity is positive, it sacrifices completeness.

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

    Completeness2/5

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

    Despite having an output schema, the description fails to mention that the tool returns data or any behavioral context. For a simple get tool, it is incomplete.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description adds no meaning to the parameters. It only mentions 'by UUID' but does not explain that 'id' is the UUID or the role of 'workspace'.

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

    Purpose5/5

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

    The description clearly states the verb 'Get', the resource 'attachment', and the identifier 'by UUID'. It distinguishes from sibling tools like list_attachments (lists multiple) and attachments_for_url (gets by URL).

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives such as list_attachments or attachments_for_url. The description does not provide context or prerequisites.

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

  • Behavior2/5

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

    No annotations are provided, so the description must fully disclose behavioral traits. It only states 'Get a project milestone...', implying a read operation, but does not mention authentication requirements, error behavior (e.g., if UUID not found), idempotency, or any side effects. The lack of such detail 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.

    Conciseness3/5

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

    The description is a single sentence, which is concise but overly brief. It front-loads the core purpose but omits important details, making it less efficient than a slightly longer description that includes parameter context or usage hints.

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

    Completeness2/5

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

    Despite having an output schema (so return values need not be explained), the description fails to clarify the 'workspace' parameter or provide any context about typical usage. Given the simplicity of the tool (2 params), the description is incomplete for proper agent invocation.

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

    Parameters1/5

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

    Schema description coverage is 0%, meaning the schema provides no descriptions for the two parameters. The description adds zero information about what 'id' or 'workspace' represent, how they should be formatted, or their purpose. This leaves the agent without necessary parameter guidance.

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

    Purpose5/5

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

    The description uses a specific verb ('Get') and resource ('project milestone'), and specifies the unique identifier type ('by UUID'). It clearly distinguishes from sibling tools like list_milestones (list all) or save_milestone (create/update), making the tool's 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?

    The description provides no guidance on when to use this tool vs alternatives such as list_milestones or save_milestone. It does not mention conditions, prerequisites, or explicit exclusions, leaving the agent without context for selection.

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

  • 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. It only states the basic function without disclosing pagination (after, first parameters), default behavior, ordering, or required permissions. A user would not know that results are paginated or that workspace parameter may be required.

    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 concise sentence, which is efficient but sacrifices necessary detail. It is front-loaded with the core action, but omits crucial context about parameters and behavior.

    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 three optional parameters (including pagination) and an output schema, the description is incomplete. It does not explain that the result is paginated, how to use 'after' for cursor-based pagination, or that 'workspace' might be required. The output schema exists, so return structure is covered, but usage context is lacking.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description adds no information about the 'after', 'first', or 'workspace' parameters. The agent cannot infer their meanings or constraints from the description alone.

    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 'List webhooks configured for the workspace,' which identifies the action and resource. It distinguishes from sibling tools like get_webhook (single) and create/update/delete, but does not mention pagination or scope limitations.

    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: use when a list of webhooks is needed. No explicit guidance on when to use this vs alternatives like get_webhook for single webhooks, nor any conditions or prerequisites.

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

  • Behavior2/5

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

    No annotations provided, and the description does not mention any behavioral aspects such as authentication requirements, rate limits, or whether the count is workspace-specific. The description is too minimal for a tool with no annotations.

    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, front-loaded with the main action. However, it is excessively brief and lacks essential details, making it under-specified rather than concise.

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

    Completeness2/5

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

    The tool has an output schema, but the description does not clarify the scope of the count (e.g., user-specific, workspace-specific). For a simple tool with only one parameter, more context would be helpful for correct invocation.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the tool description does not mention the 'workspace' parameter. The agent gets no added meaning beyond the schema structure, which only shows a single optional string/null 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 verb 'Return', the resource 'count of unread notifications', and the scope 'inbox'. It is specific and distinguishes from siblings like list_notifications which return full details.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives like list_notifications or mark_notification_read. No context about prerequisites or typical scenarios.

    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 indicates a read operation ('Get'), but provides no further behavioral details (e.g., permissions, rate limits, or what happens if the notification doesn't exist). The presence of an output schema partially compensates, but the description itself adds minimal transparency beyond the verb.

    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 (one sentence), which is efficient but at the cost of missing necessary details. It is front-loaded with the core action, but lacks structure and sufficient information for effective tool usage.

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

    Completeness2/5

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

    Despite having an output schema, the description is too sparse. It does not explain the return structure, the optional workspace parameter, or any constraints (e.g., id format). Given the tool has two parameters and no nested objects, the description should provide more context to be fully complete.

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

    Parameters2/5

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

    Schema description coverage is 0%, meaning the description doesn't clarify parameter meanings beyond what the schema shows. While 'id' implies the UUID, the 'workspace' parameter is not explained. The description mentions 'by UUID' but does not name the parameter or explain optional parameters. Given the low coverage, the description should compensate but does not.

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

    Purpose4/5

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

    Description clearly states the function: 'Get one notification by UUID.' It uses a specific verb (Get) and resource (notification), and the method (by UUID) helps distinguish it from siblings like list_notifications or mark_notification_read. However, it could be slightly more explicit about uniquely identifying the notification.

    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. For instance, there's no mention that this tool is for fetching a single notification, while list_notifications retrieves all. The description lacks context about prerequisites or comparison with sibling tools.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden for behavioral disclosure. It only states 'Update' but does not mention whether the tool supports partial updates, what the response contains (though output schema exists), required permissions, side effects, or rate limits.

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

    Conciseness3/5

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

    The description is very concise (one sentence) and front-loads the purpose. However, it sacrifices necessary detail, making it too brief to be fully useful. It could include more context without becoming overly long.

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

    Completeness1/5

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

    Given the complexity (7 parameters, no annotations, output schema exists), the description is severely incomplete. It fails to explain what can be updated, how partial updates work, constraints, return values, or any operational context. This is inadequate for an agent to correctly invoke the tool.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must compensate for parameter meaning. However, it only explains the 'id' parameter (by UUID) and provides no information about optional fields like url, label, enabled, workspace, resource_types, or all_public_teams. The description adds minimal value beyond the schema.

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

    Purpose5/5

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

    The description clearly states the action (update), the resource (existing webhook), and the identifier (by UUID). It effectively distinguishes this tool from sibling tools like create_webhook, get_webhook, delete_webhook, and list_webhooks.

    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 lacks any guidance on when to use this tool versus alternatives. It does not mention prerequisites (e.g., webhook must exist), nor does it provide context for when an update is appropriate compared to creating or deleting a webhook.

    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 does not state that the tool is read-only, requires authentication, or has any side effects. For a list operation, it is likely safe, but the description fails to explicitly convey this, leaving the agent uninformed about safety or permissions.

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

    Conciseness4/5

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

    The description is very concise: two sentences plus a parameter explanation. It front-loads the core function. While it could include more details without being verbose, the current structure is efficient and easy 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 has 4 parameters, no annotations, and an output schema (which may describe return values), the description lacks completeness. It fails to cover pagination (after, first) and workspace parameter, and does not hint at the output structure. Significant gaps remain for effective autonomous use.

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

    Parameters2/5

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

    With 0% schema description coverage, the description must compensate. It only explains team_id (its purpose and that omitting it lists across all teams), but neglects the other three parameters (after, first, workspace). These are critical for pagination and additional scoping, leaving the agent with incomplete guidance.

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

    Purpose4/5

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

    The description clearly states the tool lists cycles with an optional team scope. The verb 'List' and resource 'cycles' are specific, and the optional team scoping distinguishes this from a generic list. However, it does not explain what a cycle is, which could be ambiguous for unfamiliar agents.

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

    Usage Guidelines3/5

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

    The description provides guidance on when to use the team_id parameter (omit to list all cycles) but offers no alternatives or when-not-to-use scenarios. Among siblings, there is no other cycle listing tool, so explicit differentiation is not critical, but usage context is minimal.

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

  • Behavior2/5

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

    No annotations provided; description only states basic function. Does not disclose pagination (after, first) or scope (workspace parameter) or 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.

    Conciseness4/5

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

    Very short and front-loaded with the main purpose. However, it omits important parameter details, which could be added 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?

    Despite an output schema existing, the description lacks explanation for all parameters and fails to provide sufficient context for a tool with 4 parameters. Inadequate for a complete understanding.

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

    Parameters2/5

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

    Only issue_id is explained (filters to relations involving one issue). The other three parameters (after, first, workspace) are not described. Schema coverage is 0%, so description adds minimal value beyond 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 lists issue relations and specifies issue_id filters to one issue. It is a specific verb+resource combination, and easily distinguishable from sibling tools like create_issue_relation.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives. Does not indicate prerequisites or context.

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

  • Behavior3/5

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

    With no annotations, the description carries the full burden. It discloses assignee_id magic value ('me'), state_type enum values, query full-text search, filter as raw object, and order_by defaults. However, it omits pagination behavior (after, first) and auth requirements, leaving gaps in agent understanding.

    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, using a bullet-like structure for parameters. Every sentence adds value, and there is no extraneous text. Could be slightly more organized with explicit sections, but it is efficient.

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

    Completeness2/5

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

    Despite having an output schema (reducing need to explain returns), the description lacks key context: pagination semantics, when to use list_issues vs search_issues, and handling of unlisted parameters. For a tool with 11 parameters and no annotations, the description is incomplete.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must compensate. It adds meaning for 5 of 11 parameters (assignee_id, state_type, query, filter, order_by), but leaves 6 parameters (after, first, team_id, workspace, project_id, state_name) completely unexplained. This partial coverage is insufficient for a tool with many 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 'List issues with common filters,' which is a specific verb+resource. It distinguishes from single-issue retrieval tools like get_issue, but does not explicitly differentiate from search_issues, though the emphasis on 'common filters' implies a basic listing purpose.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives like search_issues. Does not mention prerequisites (e.g., workspace context) or when not to use it. The description assumes the agent knows when to pick this over sibling tools.

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

  • Behavior2/5

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

    No annotations are provided, so the description must disclose behavioral traits. It only explains the include_disabled parameter, but omits critical behaviors such as pagination support (via 'after' and 'first' parameters), authentication requirements, rate limits, or whether the tool is read-only. This leaves significant gaps for the agent.

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

    Conciseness4/5

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

    The description is very concise at two sentences with no redundant words. The backtick formatting for the parameter explanation is a minor stylistic informality, but the brevity is a strength. It could be slightly more structured but remains effective.

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

    Completeness2/5

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

    Given 4 parameters, 0% schema coverage, and no annotations, the description is incomplete. It lacks explanation of pagination mechanics, the 'workspace' parameter specification, and the output format (though an output schema exists). The agent would need additional context to use this tool correctly in many scenarios.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must compensate. It explains the 'include_disabled' parameter clearly, but the remaining parameters ('after', 'first', 'workspace') receive no explanation. The agent must infer their meaning from names, which is insufficient for correct invocation.

    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 'List users in a Linear workspace', which specifies the verb 'list' and the resource 'users'. This differentiates it from sibling tools like 'get_user' (single user) and other list tools (e.g., list_issues). However, it does not explicitly contrast with siblings, so it misses the top score.

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

    Usage Guidelines3/5

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

    The description implies usage for obtaining a list of users, but provides no explicit guidance on when to use this tool versus alternatives like 'get_user' for a single user. There is no mention of prerequisites or context for choosing this tool.

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

  • Behavior2/5

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

    No annotations provided; description fails to disclose pagination behavior, response structure, or any limitations. Only states basic search capability.

    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?

    Extremely concise (one sentence), but at the cost of missing critical context. Front-loaded but insufficient for a 4-parameter 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?

    Despite an output schema being present, the description omits essential details for parameter usage and behavioral context, making it incomplete for effective tool invocation.

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

    Parameters2/5

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

    Schema coverage is 0%, yet description adds no parameter details. The 'query' parameter is implied but 'after', 'first', and 'workspace' are unexplained.

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

    Purpose5/5

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

    Description clearly states 'Full-text search across projects' with a specific verb (search) and resource (projects), distinguishing it from sibling search tools for issues, documents, etc.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives like search_issues or search_documents. No conditions or exclusions provided.

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

  • Behavior2/5

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

    No annotations are provided, and the description does not disclose behavioral traits such as side effects, idempotency, authentication requirements, or what happens if a session already exists. For a mutation 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.

    Conciseness4/5

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

    The description is a single concise sentence that front-loads the key information. It could be slightly more structured (e.g., separating the automatic behavior from typical use case), but it is efficient and free of fluff.

    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 moderate complexity (3 parameters, output schema exists), the description is somewhat incomplete. It explains the core action but omits return value behavior, error conditions, and prerequisites. With no annotations, more context is needed.

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

    Parameters2/5

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

    Schema description coverage is 0%, and the tool description does not add any meaning to the parameters beyond their names and types. The description fails to explain the role of 'workspace' or 'external_url' or how they affect the operation.

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

    Purpose4/5

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

    The description clearly states the verb 'open' and resource 'agent session attached to a comment', and provides context about @mention. However, it does not differentiate from the sibling 'create_agent_session_on_issue', which serves a related but distinct purpose.

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

    Usage Guidelines3/5

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

    The description implies usage context (when a comment @mentions the agent), but it does not explicitly state when to use this tool versus 'create_agent_session_on_issue' or other alternatives. No when-not-to-use 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 provided, so description carries full burden. 'List comments' implies read-only, but fails to disclose pagination behavior (through 'first' and 'after') or any other 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?

    Extremely concise one-sentence description that is front-loaded with the core action and scope, no wasted words.

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

    Completeness2/5

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

    Given 5 parameters and no annotations, the description omits pagination, workspace context, and return value expectations. Output schema exists but description should still cover usage context.

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

    Parameters2/5

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

    With 0% schema description coverage, the description only adds meaning for issue_id and project_id ('scope by'), but ignores after, first, and workspace, leaving most parameters unexplained.

    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 states 'List comments' as a read operation and specifies scoping by issue_id or project_id, distinguishing it from other list tools. However, it does not explicitly contrast with sibling tools like save_comment.

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

    Usage Guidelines3/5

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

    Implies usage when you need comments for an issue or project via the scoping fields, but lacks explicit guidance on when not to use it or alternatives.

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

  • Behavior3/5

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

    The description implies a read-only operation but does not disclose behavior beyond that (e.g., whether it returns null or throws error if not found, authentication needs, or rate limits). Since no annotations exist, the description carries the full burden, but it offers minimal behavioral detail.

    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 wasted words. However, it is so concise that it sacrifices useful details that could be included without significant bloat.

    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 presence of an output schema (not shown), return value explanation is not required. However, the description lacks context on error handling, performance considerations, or usage caveats. It is minimally adequate for a simple get tool but leaves gaps for an AI agent.

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

    Parameters1/5

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

    With 0% schema description coverage, the description should explain parameters. It does not: the id parameter is assumed to be a UUID but format is unspecified, and the workspace parameter's purpose is completely omitted. No additional meaning is added beyond the raw 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 'Get an initiative by UUID' clearly states the action (get) and the resource (initiative), with a specific lookup key (UUID). It distinguishes itself from sibling tools like list_initiatives and save_initiative by implying retrieval of a single item by unique identifier.

    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 list_initiatives or save_initiative. It does not mention prerequisites, context, or conditions that would help an agent select this tool appropriately.

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

  • Behavior2/5

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

    No annotations provided, and the description only says 'Get', implying a read operation but without disclosing any behavioral traits such as idempotency, rate limits, or error conditions.

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

    Conciseness4/5

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

    Extremely concise single sentence with no filler. Front-loaded with the key action and resource, but lacks any supplementary structure.

    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 get-by-ID tool with an output schema, the description is minimally adequate. However, it omits any mention of error handling, response size, or relationships, which could be helpful.

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

    Parameters2/5

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

    Schema coverage is 0%, and the description does not explain what the parameters represent beyond their names. For example, 'id' is not clarified as the project UUID, and 'workspace' purpose remains unclear.

    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 'Get', the resource 'Linear project', and the identifier 'by UUID'. It effectively distinguishes from sibling tools like list_projects and save_project.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives (e.g., list_projects for multiple, save_project for mutations), nor when not to use it. Missed opportunity to provide 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 provided. Description does not disclose whether this is a read-only operation, authentication needs, rate limits, or any side effects. Minimal transparency.

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

    Conciseness4/5

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

    Single sentence, no wasted words. Clear and direct, though could benefit from additional context about parameters.

    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?

    Output schema exists so return values are covered. However, no usage guidelines or behavioral context provided. Adequate for a simple get operation but could be more complete.

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

    Parameters2/5

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

    With 0% schema description coverage, description must explain parameters. It refers to UUID for 'id' but gives no meaning for optional 'workspace' parameter. Lacks clarity on parameter usage.

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

    Purpose5/5

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

    Description clearly states 'Get a webhook by UUID' with a specific verb and resource. It distinguishes from siblings like list_webhooks (list all) and create_webhook.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives. Does not mention prerequisites (e.g., must have UUID) or context where get is preferred over list.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It does not disclose behavioral traits such as read-only nature, pagination behavior (despite after and first parameters), or context like workspace scoping. The description is minimal.

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

    Conciseness3/5

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

    The description is two sentences with good front-loading, but it omits crucial parameter information, making it under-specifying rather than concise.

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

    Completeness2/5

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

    Although an output schema exists, the description offers no details on return values or pagination. With zero parameter coverage and no behavioral transparency, it is incomplete for a tool with 3 parameters.

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

    Parameters2/5

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

    Schema description coverage is 0%, yet the description adds no meaning to the parameters after, first, or workspace. The schema field names provide minimal hints, but the description fails to explain their roles (e.g., pagination, filtering).

    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 'List initiatives in the workspace' with a specific verb and resource, and distinguishes from siblings like list_projects and get_initiative by noting that initiatives are top-level org-wide goals containing 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 use for listing top-level goals, but provides no explicit guidance on when to use this tool versus get_initiative (detail) or save_initiative (create/update). No exclusions or prerequisites are mentioned.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden. It does not disclose behavioral traits such as pagination behavior (default 50 results), authentication requirements, or that it is read-only. The description only explains parameters without additional insight.

    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 extremely concise (4 sentences, no fluff) and front-loaded with the main purpose. Every sentence serves a clear purpose.

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

    Completeness3/5

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

    Given that an output schema exists and the tool is a simple list, the description is mostly adequate but misses contextual completeness: no mention of pagination defaults, required authentication, or differentiation from similar tools.

    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?

    Despite 0% schema description coverage, the description adds meaning for 'team_id' (scopes to team) and 'state' (lists possible values and default). However, 'after', 'first', and 'workspace' are not explained, leaving gaps.

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

    Purpose4/5

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

    The description states 'List projects' which clearly identifies the verb and resource. However, it does not differentiate from sibling tools like 'search_projects', which also lists projects but with different semantics (text search vs. filtering).

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

    Usage Guidelines2/5

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

    The description provides guidance on parameter usage ('team_id' and 'state' filters), but lacks any guidance on when to use this tool versus alternatives like 'search_projects' or 'get_project'. No exclusions or prerequisites are mentioned.

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

  • Behavior2/5

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

    With no annotations, the description must disclose behavioral traits like side effects, authentication needs, or scope (e.g., only current user's inbox). It only states the action without discussing irreversibility, rate limits, or what happens to already-read notifications. Lacks depth.

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

    Conciseness5/5

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

    Two sentences, front-loaded with the main action, second sentence adds parameter detail. No extraneous words; efficient and clear.

    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 covers the primary action and one parameter but omits the workspace parameter entirely. While an output schema exists (not shown), the description could better explain return values or side effects for a bulk operation. It is minimally adequate but has gaps.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must compensate. It partially explains the 'category' parameter with examples but completely ignores the 'workspace' parameter. Only half of the parameters are addressed.

    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 marks every notification in the inbox as read, using a specific verb and resource. The option to scope by category is also mentioned, distinguishing it from the sibling tool mark_notification_read which targets individual notifications.

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

    Usage Guidelines2/5

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

    No explicit guidance on when to use this tool versus alternatives like mark_notification_read or archive_notification. The context of 'every' implies bulk operation, but no when-not or exclusion criteria are provided.

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

  • Behavior3/5

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

    No annotations are provided, so the description carries the full burden. It reveals that the tool can mark as read or unread via the `read` parameter, which is valuable. However, it does not disclose other behavioral traits like idempotency, permissions, or side effects.

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

    Conciseness4/5

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

    The description is a single clear sentence. It is concise but lacks any structure (e.g., separate paragraphs). However, every word earns its place, and the format is direct.

    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 3 parameters, 0% schema coverage, and no annotations, the description is too minimal. It does not explain the return value (though an output schema exists), prerequisites, or what happens to the notification state. More context is needed for effective use.

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

    Parameters2/5

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

    Schema coverage is 0%, so the description must compensate. It mentions the `read` parameter and its default behavior, but completely omits the `id` and `workspace` parameters. The `id` parameter is required but not described, leaving 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 'Mark a notification read' with a specific verb and resource, and it explicitly distinguishes the unread functionality by mentioning `read=False`. This differentiates it from sibling tools like 'archive_notification' or 'mark_all_notifications_read'.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives. Sibling tools include 'mark_all_notifications_read', 'archive_notification', and 'notifications_unread_count', but the description does not provide any context for choosing among them.

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

  • Behavior3/5

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

    No annotations provided, so description carries burden. Adds one behavioral note (includes workflow states inline) but no details on side effects, authorization, or rate limits.

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

    Conciseness5/5

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

    Two sentences, front-loaded with purpose, minimal waste. The second sentence adds useful extra info.

    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?

    Output schema exists to document return values. For a simple retrieval tool, description is mostly complete, but parameter details are missing.

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

    Parameters1/5

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

    Schema description coverage is 0%. Description adds no meaning to the two parameters (id, workspace). The schema itself provides only names and types.

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

    Purpose5/5

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

    Description clearly states the tool retrieves a Linear team by UUID and includes workflow states inline, distinguishing it from list_teams which lists all teams.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool vs alternatives like list_teams. No mention of context such as prerequisites or when to avoid using it.

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

  • Behavior2/5

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

    With no annotations, the description carries full burden for behavioral disclosure. It only states listing, omitting any mention of pagination, rate limits, authentication needs, or side effects. The existence of an output schema is not reflected 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 extremely concise, consisting of a single sentence that includes both the purpose and a key parameter detail. No 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 tool has four parameters and no annotations, the description is too brief. It does not explain pagination (after, first), workspace filtering, or expected output beyond listing sessions. The output schema exists but is not referenced.

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

    Parameters2/5

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

    Schema description coverage is 0%, but the description only addresses one parameter (issue_id) out of four. Parameters after, first, and workspace are entirely unexplained, leaving the agent guessing about pagination and filtering behavior.

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

    Purpose5/5

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

    Description clearly states the tool lists agent sessions and specifies that the issue_id parameter scopes results to one issue. This verb-resource combination is distinct from sibling tools like get_agent_session or create_agent_session_on_issue.

    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?

    Description implies usage for listing sessions, optionally filtered by issue, but does not explicitly state when to use this tool versus alternatives like get_agent_session for a single session, or when not to use it. No exclusions or context 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 provided, the description carries full burden for behavioral disclosure. It only states the tool lists milestones, without mentioning pagination behavior (though after/first parameters hint at it), authentication needs, rate limits, or any side effects. The description is too minimal.

    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 extremely concise with two sentences. The first sentence states the core function, and the second provides a key parameter clarification. No filler or unnecessary text.

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

    Completeness2/5

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

    Despite having an output schema, the description does not explain the return format, pagination mechanics, or behavior without required parameters. For a listing tool with multiple optional filters, this lacks completeness for an agent to use effectively.

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

    Parameters2/5

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

    Schema coverage is 0%, so the description must compensate. It only explains the project_id parameter's scoping. The after, first, and workspace parameters are left completely unaddressed, which is insufficient for a 4-parameter tool.

    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 ('List') and the resource ('project milestones'), and distinguishes from single-get or write tools by specifying the scope. It is specific and avoids tautology.

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

    Usage Guidelines3/5

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

    The description implies usage for listing milestones, but does not provide explicit guidance on when to use this tool versus alternatives like get_milestone or save_milestone. No when-not or exclusion criteria are given.

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

  • Behavior2/5

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

    No annotations are provided, so the description must disclose behavioral traits. It states the action and parameter constraints but does not explain side effects (e.g., whether it creates or updates, permissions required, idempotency). This is insufficient for safe 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 three sentences, each providing essential information: action, health enum, body format. No wasted words. It is front-loaded with the main purpose.

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

    Completeness3/5

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

    The tool has 4 optional parameters and no annotations. While the description covers the action and two parameters, it omits context for 'workspace' and 'project_id'. With an output schema present, return values are not needed, but parameter explanations are lacking. Adequate but with clear 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?

    With 0% schema description coverage, the description partially compensates by explaining 'health' (enum values) and 'body' (markdown). However, 'workspace' and 'project_id' are not described at all. The explanation adds value but is incomplete.

    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 ('Post a status update') and the resource ('against a project'). It distinguishes from sibling tools like 'save_project' or 'save_issue' by focusing on status updates. The mention of health enum values adds specificity.

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

    Usage 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, scenarios, or when not to use it. The agent must infer context from the name alone.

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

  • Behavior2/5

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

    No annotations are provided, and the description only states it gets a document by UUID, implying a read operation. It does not disclose behavior like error handling (e.g., if document not found), authentication requirements, or rate limiting. More detail is needed.

    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, front-loaded with the core action. Every word earns its place, and there is no extraneous 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?

    Given the tool's simplicity (get by ID, 2 params, output schema exists), the description is somewhat complete but lacks details on return value, error cases, and the optional workspace parameter. The output schema may cover return format, but the description itself omits behavioral constraints.

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

    Parameters2/5

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

    The input schema has 2 parameters with 0% description coverage. The description mentions 'by UUID' but does not explain the workspace parameter or add meaning beyond the schema. The id parameter is loosely referenced but no format or constraints are described.

    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 'Get a document by UUID' clearly states the verb (get) and resource (document), distinguishing it from siblings like list_documents (list) and save_document (save). 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 Guidelines3/5

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

    The description provides no explicit guidance on when to use this tool or when to avoid it. It is implied that it should be used to retrieve a known document by ID, but no alternatives or exclusions are mentioned.

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

  • Behavior3/5

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

    With no annotations, the description adds transparency by explaining that 'id' accepts UUID or human identifiers and uses a one-shot search. However, it omits details like permissions, error handling, or return behavior beyond what the output schema likely covers.

    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 very concise with two sentences, front-loading the core purpose. No unnecessary words or repetition.

    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 simplicity of the tool (2 parameters, no nested objects, output schema present), the description covers the essential behavior. It could mention result details or error scenarios, but the output schema likely compensates.

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

    Parameters2/5

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

    Schema coverage is 0%, so the description must compensate. It adds meaning for the 'id' parameter (two formats) but provides no information for the 'workspace' parameter, leaving it unclear.

    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 fetches a single issue, with the verb 'get' and the resource 'issue'. It distinguishes itself from sibling tools like list_issues or search_issues by targeting a single issue by ID.

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

    Usage Guidelines2/5

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

    No explicit guidance on when to use this tool versus alternatives like search_issues or list_issues. The description implies usage for retrieving a specific issue by ID but does not explain scenarios or exclusions.

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

  • Behavior2/5

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

    No annotations are provided, so the description must carry the full burden. It only discloses the create/update behavior and the status type. It does not mention any side effects, permissions, rate limits, or the output format, leaving significant behavioral gaps.

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

    Conciseness5/5

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

    The description is three sentences long, front-loads the main purpose, and contains no unnecessary words. It is efficient 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?

    For a tool with 10 optional parameters, no schema descriptions, and no annotations, the description is too minimal. It does not explain most parameters, output structure, or constraints. Context signals indicate complexity, and the description does not adequately address it.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must compensate. It only explains the 'status' parameter values. The other 9 parameters (e.g., icon, color, content, owner_id) are not described, leaving their meaning and usage unclear.

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

    Purpose5/5

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

    The description clearly states the verb 'Create or update' and the resource 'initiative'. It distinguishes from sibling tools by being the only tool for creating/updating initiatives, and explains the role of the 'id' parameter for update vs create.

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

    Usage Guidelines4/5

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

    Provides clear guidance: pass 'id' to update, omit to create. Also clarifies that status is a string, not an enum, which helps with correct input. However, it does not explicitly mention when not to use this tool or alternatives.

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

  • Behavior2/5

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

    No annotations provided, so description must disclose behavioral traits. It only states basic create/update behavior but lacks details on idempotency, permissions, error handling, or side effects. Minimal transparency.

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

    Conciseness5/5

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

    Two concise sentences with front-loaded main purpose. No unnecessary words. Efficient for quick understanding.

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

    Completeness2/5

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

    Despite having an output schema, the description lacks details for 4 of 7 parameters and provides no behavioral context. Incomplete for an agent to reliably use without external documentation.

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

    Parameters2/5

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

    With 0% schema coverage, description should explain all parameters. It only addresses id, name, project_id, leaving workspace, sort_order, description, target_date unexplained. Adds partial meaning but insufficient for 7-param tool.

    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 'Create or update a project milestone' with specific verb and resource. It distinguishes from siblings like list_milestones and get_milestone by indicating mutation behavior.

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

    Usage Guidelines4/5

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

    Provides clear guidance: 'Pass id to update. Creating requires name and project_id.' This helps decide create vs update. However, it does not explicitly warn against using for read-only tasks or compare with other tools.

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

  • Behavior3/5

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

    With no annotations, the description bears full burden. It mentions the backend (Linear's searchIssues) and returns (standard issue shape plus totalCount). However, it does not disclose pagination behavior, rate limits, or whether it searches across all accessible issues, leaving gaps.

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

    Conciseness5/5

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

    Two sentences: first states purpose, second adds technical and return info. Extremely concise with no wasted words.

    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?

    Output schema exists, so return details are partly covered. However, the description lacks guidance on pagination (after, first) and workspace filtering, which are important for a search tool. The complexity of search requires more completeness.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description should compensate. It only implies the 'query' parameter via 'full-text search' but provides no explanation for 'after', 'first', or 'workspace'. This adds minimal value beyond 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 it performs full-text search across issues in the workspace, using the verb 'search' and specifying the resource 'issues'. It distinguishes from siblings like 'list_issues' which likely lists all issues without free-text search.

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

    Usage Guidelines3/5

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

    The description implies usage for free-text searching, but does not provide explicit when-to-use or when-not-to-use compared to alternatives like 'list_issues' or 'get_issue'. No exclusions or context are given.

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

  • Behavior2/5

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

    With no annotations provided, the description must fully disclose behavior. It mentions scoping via `team_id` and default all-workspace behavior, but omits important details such as pagination (via `after` and `first` parameters) and the `workspace` parameter, leaving significant gaps.

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

    Conciseness5/5

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

    The description consists of two concise sentences that front-load the main action and then clarify scoping. There is no unnecessary verbiage, and every sentence serves a clear purpose.

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

    Completeness3/5

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

    Given the presence of four parameters and an output schema, the description covers the core functionality but lacks details on pagination and the `workspace` parameter. It is adequate for basic understanding but not fully complete for all 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 description adds meaning for the `team_id` parameter, explaining its scoping effect, which adds value beyond the schema. However, the other three parameters (`after`, `first`, `workspace`) are not described, and schema description coverage is 0%, so partial coverage.

    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 'List workflow states (issue statuses) per team,' using a specific verb and resource. It distinguishes from the sibling tool 'get_issue_status' by emphasizing listing multiple per team, making its purpose evident.

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

    Usage Guidelines4/5

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

    The description provides clear context on the `team_id` parameter ('scopes results to one team; omit for all'), but it does not explicitly contrast with the sibling tool 'get_issue_status' for when to use one over the other.

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

  • Behavior4/5

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

    Given no annotations, the description adds value by noting that nodes carry '__typename' for branching and that unread_only restricts to unread notifications. However, it does not mention pagination behavior (despite after/first params) or user/workspace scoping clearly.

    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 very concise: two sentences plus a code snippet. Every sentence adds value and the key point (listing notifications) is front-loaded.

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

    Completeness2/5

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

    Despite having an output schema, the description fails to cover three out of four parameters, which have no schema description. The tool has moderate complexity (4 params, pagination) and the description is incomplete for efficient use.

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

    Parameters2/5

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

    Schema coverage is 0%, so the description should explain all parameters. It only documents unread_only (its effect), but omits explanations for after, first, and workspace, which are critical for proper usage.

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

    Purpose5/5

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

    The description clearly states the tool lists notifications in the viewer's inbox, which is a specific verb and resource. It differentiates from siblings like get_notification (single) and notifications_unread_count (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 description implies usage for listing inbox notifications and explains the unread_only parameter, but it does not explicitly state when to use this tool versus alternatives like get_notification or mark_notification_read.

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

  • Behavior4/5

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

    No annotations provided, so description carries full burden. States reversibility, a key behavioral trait. Could add more detail (e.g., permissions, effect on unread count) but sufficient for a simple archive 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?

    Single sentence, front-loaded with verb and object, no unnecessary words. Perfectly concise for the operation.

    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?

    Covers core behavior but misses parameter context and explicit usage guidance. With sibling notification tools, more context on how archive fits in the notification lifecycle would be helpful. Adequate for a simple tool but lacking completeness.

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

    Parameters2/5

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

    Schema description coverage is 0%, so description needed to explain parameters, but it doesn't mention them at all. Parameter names are somewhat self-explanatory, but lacking context for 'workspace' and confirming 'id' is notification ID.

    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 action 'Archive' and resource 'notification', with clarification that it removes from inbox and is reversible. Distinguishes from siblings like mark_notification_read or delete_notification.

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

    Usage Guidelines3/5

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

    Implies usage for archiving notifications but no explicit when-to-use vs alternatives like mark as read or delete. Mentions reversibility, which hints at safe use, but no guidance on prerequisites or exclusions.

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

  • Behavior3/5

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

    No annotations provided, so description carries full burden. It discloses that it searches across the workspace and returns attachment records, but does not mention read-only behavior, pagination via 'first' parameter, or the effect of the 'workspace' parameter. Adequate but not fully transparent.

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

    Conciseness5/5

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

    Two sentences, front-loaded with the core purpose, followed by a usage example. No superfluous words.

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

    Completeness3/5

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

    With 3 parameters and an output schema (not described), the description covers the primary purpose well. However, it lacks details about pagination, optional workspace filtering, and whether the tool is read-only. Adequate for a simple lookup but could be more complete.

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

    Parameters2/5

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

    Schema description coverage is 0%. The description mentions 'URL' but does not explain the 'first' (pagination default) or 'workspace' (optional filter) parameters. The description adds minimal value beyond the schema for understanding parameter 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 clearly states it's a reverse lookup for attachment records pointing to a URL, with concrete examples (Slack thread, PR, external doc). It distinguishes itself from sibling tools like list_attachments and link_url_to_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 description explicitly says when to use it (finding which issue references a given URL) and implies it's not for general attachment listing. It provides useful context but does not mention alternatives or when not to use.

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

  • Behavior3/5

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

    No annotations provided, so description must disclose behavior. It explains session output modes (comment/commentThread) and external_url linking. Does not mention side effects (e.g., session creation, persistence) or required permissions.

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

    Conciseness5/5

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

    Two concise sentences, front-loaded with the main purpose. No wasted words.

    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 an output schema exists, the description covers the core behavior: attaching an agent session to an issue and configuring its output type. Could mention that the issue must already exist.

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

    Parameters3/5

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

    Schema coverage is 0%, so description must compensate. It explains session_type and external_url, but does not describe issue_id or workspace (only that workspace defaults to null). Adds meaning to 2 out of 4 parameters.

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

    Purpose5/5

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

    Clearly states the action ('Open an agent session attached to an issue') and specifies the resource (issue). Distinguishes from sibling create_agent_session_on_comment by targeting an issue.

    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?

    Describes the two session_type options and external_url parameter, implying usage. However, it does not explicitly state when to use this tool over create_agent_session_on_comment or list_agent_sessions, nor any prerequisites.

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

  • Behavior4/5

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

    The description explicitly states 'Non-destructive (no cascade)', which informs the agent that deleting a relation does not affect related issues. This adds valuable behavioral context beyond what the schema alone provides.

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

    Conciseness5/5

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

    Two sentences, no redundancy, directly to the point. Every word adds value.

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

    Completeness3/5

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

    Given the tool's simplicity and the presence of an output schema, the description is minimally complete. However, it could mention the optional workspace parameter and how it affects deletion.

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

    Parameters2/5

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

    Schema description coverage is 0%, but the description only mentions 'by ID' without elaborating on the 'id' parameter or the 'workspace' parameter. It does not compensate for the lack of schema descriptions.

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

    Purpose5/5

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

    The description clearly states the verb 'Delete' and the resource 'issue relation by ID'. It distinguishes from siblings like 'create_issue_relation' and 'list_issue_relations'.

    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 when-to-use or when-not-to-use guidance is provided, but the operation is self-explanatory given the tool name and siblings. Adequate but could mention that this is for deleting a specific relation, not for bulk removal.

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

  • Behavior4/5

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

    No annotations are provided, so the description carries full burden. It discloses that passing 'me' resolves via viewer query and substitutes the ID, which is a key behavioral trait.

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

    Conciseness5/5

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

    Two sentences, front-loaded with purpose, no extraneous words. Highly concise.

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

    Completeness3/5

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

    The description covers the core behavior and the 'me' special case, which is good given the output schema exists. However, the workspace parameter is not explained, leaving a gap for agents.

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

    Parameters2/5

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

    With 0% schema description coverage, the description needs to explain parameters. It only covers the 'id' parameter and the special 'me' value, but completely omits the optional 'workspace' parameter, leaving it undocumented.

    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 'Get a Linear user by ID', which is a specific verb+resource. It also explains the special 'me' case, distinguishing it from list_users which returns multiple users.

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

    Usage Guidelines3/5

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

    The description implies usage for fetching a single user and explains the 'me' behavior, but does not explicitly contrast with siblings like list_users or mention when not to use this tool.

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

  • Behavior3/5

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

    No annotations provided. Description adds behavioral context (renders in sidebar, OpenGraph fallback) but lacks details on side effects, permissions, idempotency, or error handling.

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

    Conciseness5/5

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

    Two sentences with no wasted words. First sentence states action clearly, second adds relevant nuance. Highly efficient.

    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 link attachment tool with output schema, description covers purpose and key behavior. Lacks mention of workspace purpose and error conditions, but overall sufficient.

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

    Parameters3/5

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

    Schema coverage is 0%. Description explains title and icon_url (customization, OpenGraph) but does not clarify issue_id, url, or workspace. Adds partial value but incomplete for undocumented params.

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

    Purpose5/5

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

    Description uses specific verb 'Attach' and resource 'URL to an issue', clearly distinguishing from sibling tools like list_attachments and get_attachment which deal with file attachments.

    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?

    Description implies usage for linking URLs but does not provide explicit guidance on when to use vs alternatives, nor 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.

  • Behavior3/5

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

    No annotations are provided, so the description bears full burden. It correctly describes the listing operation and team scoping, but fails to disclose pagination behavior, rate limits, or authorization needs. It is honest but minimal.

    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 extremely concise with two sentences. The key action ('List issue labels') is front-loaded. Every word adds value without 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?

    The tool has an output schema, so return value details are covered. However, critical parameter semantics for pagination (after, first) and workspace scoping are missing. The description provides reasonable completeness for a simple list operation but has notable gaps.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must compensate. Only team_id is explained ('scopes to one team; omit for org-wide'). Parameters after, first (pagination), and workspace are completely undocumented, leaving the agent without guidance on their meaning or usage.

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

    Purpose5/5

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

    The description clearly states the tool lists issue labels and explains the team_id parameter's scoping behavior. It distinguishes from sibling tools like create_issue_label (create vs list) and list_comments (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 Guidelines4/5

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

    The description provides explicit context on when to use team_id (scope to one team) and when not (omit for org-wide). While it doesn't explicitly mention when not to use this tool vs alternatives, the context is clear enough given sibling names.

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

  • Behavior3/5

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

    No annotations are provided, so the description must cover behavioral traits. It discloses mutation behavior and the two modes (create/update), but does not mention idempotency, side effects, or error cases. Given the output schema exists, partial transparency is acceptable.

    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 highly concise at 3 sentences (45 words). It front-loads the core purpose, then provides targeted parameter details. Every sentence adds value with no 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?

    With 15 parameters and no schema descriptions or annotations, the description covers only 5 parameters. It omits guidance on several important fields (e.g., cycle_id format, allowed state_id values). The output schema exists but does not compensate for missing parameter context.

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

    Parameters3/5

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

    The description adds meaning beyond the schema for 5 of 15 parameters: id, title, team_id, assignee_id (accepts 'me'), and priority (0-4 mapping). Schema coverage is 0%, so description partially compensates, but many parameters like cycle_id, due_date, state_id are left unexplained.

    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 'Create or update an issue', specifying the verb (create/update) and resource (issue). It distinguishes itself from sibling tools like bulk_save_issues by focusing on single issue operations.

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

    Usage Guidelines4/5

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

    The description provides explicit guidance: 'Pass `id` to update. Creating requires `title` and `team_id`.' This tells the agent when to use each mode. It does not contrast with siblings like get_issue or list_issues, but the usage context is clear.

    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 full burden. It discloses the heterogeneous return type and presence of __typename for entity branching. However, it does not state that the tool is read-only, nor does it explain pagination behavior or rate limits. The information provided is adequate but not comprehensive.

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

    Conciseness5/5

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

    The description is concise at three sentences, with the most critical information (purpose and usage guidance) front-loaded. Every sentence contributes value without 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?

    For a tool with 4 parameters and a rich output schema, the description covers the return type and usage context well but leaves parameter behaviors (pagination, scoping) unexplained. The presence of an output schema partially mitigates the need to detail return values, but parameter semantics are insufficient.

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

    Parameters2/5

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

    Schema coverage is 0%, meaning the description adds no parameter-specific details. The 'query' parameter is implied by the tool's purpose, but 'first', 'after', and 'workspace' are unexplained. The description fails to compensate for the lack of schema descriptions.

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

    Purpose5/5

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

    The description clearly states it performs semantic search across the workspace and returns heterogeneous node types with a typename discriminator. It distinguishes itself from sibling tools like search_issues by emphasizing conceptual vs. exact matching.

    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 explicitly advises using this tool when the search target is conceptual rather than an exact string, providing a clear usage criterion. However, it does not mention alternatives for exact-string queries (e.g., search_issues), which would strengthen 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?

    No annotations are provided, so the description carries the burden. It explains parameter effects (color format, scope) but does not disclose side effects like duplicate handling or required permissions.

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

    Conciseness5/5

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

    Three focused sentences with no wasted words. Each sentence adds a specific detail: creation act, team/workspace scope, color format, and nesting.

    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?

    Key behavioral details are provided for non-obvious parameters, but workspace and description are omitted. Output schema exists but its content is unknown; still, the description could be more comprehensive.

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

    Parameters3/5

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

    Schema coverage is 0%, so description compensates for color, team_id, and parent_id. However, workspace and description parameters are not explained, leaving gaps for 2 of 6 parameters.

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

    Purpose5/5

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

    The description starts with 'Create a new issue label,' clearly specifying the action and resource. This distinguishes it from sibling tools like 'list_issue_labels' which lists labels.

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

    Usage Guidelines4/5

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

    The description provides specific usage guidance for parameters like team_id (team-scoped vs workspace-scoped) and parent_id (two-level hierarchy). It does not explicitly state when to use vs alternatives, but the context is clear.

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

  • Behavior3/5

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

    With no annotations, the description carries the burden. It states 'Return the current workflow state,' indicating a read-only operation. No side effects, permissions, or error conditions are mentioned, which is acceptable for a simple query but could be more explicit.

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

    Conciseness5/5

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

    Two sentences, front-loaded with the action and resource. Every word adds value, no redundancy or fluff. Ideal conciseness.

    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 and existence of an output schema, the description covers the core purpose, input hints, and differentiation from siblings. It could mention output structure details or error handling, but overall it is sufficient for the task.

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

    Parameters2/5

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

    Schema description coverage is 0%. The description adds meaning for 'issue_id' by mentioning 'id or identifier,' but does not explain the 'workspace' parameter. Given only two parameters, partial coverage leaves a gap.

    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 specifies the action ('Return'), the resource ('workflow state for one issue'), and the input ('id or identifier'). It distinguishes itself from the sibling tool 'get_issue' by labeling itself a 'minimal-fields variant for status-driven automations,' which clarifies its unique role.

    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 explicitly contrasts with 'get_issue,' noting it is a 'convenience tool' and 'minimal-fields variant,' implying use when only status is needed. However, it does not explicitly state when not to use it or mention other alternatives.

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

  • Behavior3/5

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

    No annotations provided, so description carries full burden. It discloses create/update behavior and required conditions for creation. However, it does not discuss error handling, side effects, or output format (though output schema exists). Basic traits covered but lacks depth.

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

    Conciseness5/5

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

    Two sentences: first sentence front-loads the main purpose, second sentence adds essential usage details. No wasted words; every sentence adds value.

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

    Completeness3/5

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

    With 8 optional parameters, 0% schema description, and no annotations, the description covers only half the parameters. Output schema exists, so return value is handled. Missing details on icon, color, content, workspace reduce completeness for agent decision-making.

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

    Parameters3/5

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

    Schema description coverage is 0%, so description must compensate. It explains id, title, project_id, and initiative_id, but omits icon, color, content, and workspace. Key parameters covered, but not all, leading to partial compensation.

    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 explicitly states 'Create or update a document' with clear distinction between create and update via 'id'. It also explains the attachment to project/initiative, making the tool's purpose 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 Guidelines4/5

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

    Provides clear guidance on when to use id for update versus creating with title and one of project_id or initiative_id. Lacks explicit exclusion of sibling tools like get_document or search_documents, but the context shows different operations.

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

  • Behavior3/5

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

    No annotations provided, so description carries full burden. It discloses that the tool can create or update, the requirement for team_ids, date format, and priority range. However, it does not mention side effects (e.g., overwriting fields), error behavior for non-existent id, or authentication needs. Moderate transparency.

    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?

    Description is concise, front-loaded with the main purpose, and each sentence adds value. No redundant or vague statements. Perfectly sized for quick comprehension.

    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 13 parameters and no annotations, the description covers the core logic and key constraints but does not explain all parameters. Output schema is present, so return values are documented elsewhere. The description is sufficient for experienced users but may leave new users wondering about other parameters. Acceptable 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?

    Schema has 13 parameters with 0% description coverage. The description adds meaning for key parameters: id (determines create/update), team_ids (required for create), date format for start_date and target_date, and priority scale. But many parameters (name, color, icon, content, lead_id, state, etc.) are left unexplained. Adequate but not comprehensive.

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

    Purpose5/5

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

    Description clearly states it creates or updates a Linear project, and explains the distinction between create (omit id, pass team_ids) and update (pass id). This provides a specific verb+resource combination that distinguishes it from siblings like get_project or list_projects.

    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?

    Explicitly describes when to use create vs update, and mentions Linear's requirement for team_ids when creating. However, does not specify when not to use the tool or mention alternative tools (e.g., use get_project for reading). This is a minor gap.

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

  • Behavior4/5

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

    With no annotations, the description discloses important behaviors: default resource_types, scoping, HMAC signing. It doesn't cover rate limits or idempotency, but it adds value 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.

    Conciseness5/5

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

    The description is succinct, front-loaded with the main purpose, and every sentence adds value. No fluff or repetition.

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

    Completeness3/5

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

    Given 8 parameters with 0% schema coverage and no annotations, the description covers the most critical parameters but leaves label, enabled, and workspace unexplained. The output schema exists, so return values need not be described. 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?

    Schema coverage is 0%. The description adds meaning for 5 of 8 parameters (url, resource_types, team_id, all_public_teams, secret) but omits label, enabled, workspace. Provides defaults and usage hints, partially compensating for missing schema descriptions.

    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 'Create a webhook subscription' with a specific verb and resource. It distinguishes itself from sibling tools like get_webhook, list_webhooks, update_webhook, and delete_webhook.

    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 explains when to use different parameters like team_id vs all_public_teams, and defaults for resource_types. It provides context but lacks explicit when-not-to-use guidance or alternatives.

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

  • Behavior4/5

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

    No annotations provided, so description carries full burden. It discloses that the tool is destructive (deletion), uses a draft+confirm pattern, and the confirm call issues webhookDelete against Linear. Draft expiration is noted. Could mention if reversal is possible, but sufficient.

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

    Conciseness4/5

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

    Description is structured with clear line breaks and bullet-like points, front-loading the core action. Sentences are concise, though the draft expiration note could be integrated. Efficient overall.

    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 complexity (3 parameters, destructive with draft flow, output schema present), the description covers the essential procedure and expiration. Missing explanation for the workspace parameter, and no output schema details. Good 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?

    Schema coverage is 0%, but description explains the roles of 'id' and 'confirm_draft_id' in the two-call flow. However, it does not mention the 'workspace' parameter, leaving its purpose unclear. Partial compensation.

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

    Purpose5/5

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

    Description clearly states 'Delete a webhook' with verb+resource, and distinguishes from sibling tools like get_webhook, create_webhook, update_webhook, list_webhooks. No ambiguity.

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

    Usage Guidelines4/5

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

    Explicitly describes the two-call draft+confirm flow and draft expiration, guiding the agent on correct usage. Lacks an explicit 'when not to use' statement, but the procedure is clear and no conflicting siblings exist.

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

  • Behavior4/5

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

    Labels the tool as 'Destructive — uses draft+confirm' and describes the two-step commit process. Since no annotations, the description effectively conveys the behavioral traits.

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

    Conciseness5/5

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

    Three short sentences. Front-loaded with purpose. Every sentence adds essential information without waste.

    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 presence of an output schema, the description adequately covers the two-call flow and references sibling. Could mention error handling or prerequisites, but acceptable.

    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?

    With 0% schema coverage, description should compensate more. It mentions `confirm_draft_id` and implies `id` for the attachment, but does not cover `workspace`. Adds some meaning but not fully.

    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 'Delete an attachment' with specific verb and resource. References sibling tool delete_webhook for flow comparison, aiding differentiation.

    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?

    Explains the two-call flow in detail, including what each call does. Does not provide explicit when-not-to-use, but references a sibling tool for similar flow.

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

  • Behavior4/5

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

    No annotations provided, so description carries full burden. Discloses server-side mutation, destructive potential, and the auth safety mechanism. Lacks details on return value or concurrency, but output schema exists.

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

    Conciseness4/5

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

    Three clear paragraphs with code formatting for params. Efficient but includes some redundancy (auth_phrase explanation repeated in schema). Front-loaded with core purpose.

    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?

    Covers core functionality and critical safety. Does not explain return values or errors, but output schema exists. For the complexity of 11 params and no annotations, it is nearly complete.

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

    Parameters3/5

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

    Schema coverage is 0%, so description should compensate. It explains ids and auth_phrase well but only mentions other params are optional without describing their meaning. Parameter names are self-explanatory, but description adds minimal value beyond naming.

    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?

    Clear verb 'apply the same update to multiple issues' with specific resource 'issues' and explicit efficiency advantage over save_issue. Distinguishes from sibling save_issue by highlighting batch update.

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

    Usage Guidelines5/5

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

    Explicitly states when to use: for bulk operations like 'mark these 50 as Done' and compares to save_issue. Also specifies the required auth_phrase and the need to omit unchanged fields.

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

  • Behavior5/5

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

    With no annotations provided, the description carries the full burden. It discloses that creating a relation automatically creates the inverse relation visible on the other issue, which is key behavioral information beyond the schema. This is clear and accurate.

    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?

    Extremely concise at three sentences, front-loaded with the primary purpose. Every sentence adds unique value without 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 4 parameters (2 required) and no schema descriptions, the description only covers one parameter (type) thoroughly. Workspace and the ID parameters are not elaborated. An output schema exists but return value is not described. The description feels incomplete for a creation 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 description coverage is 0%, so the description must compensate. It explains the type parameter in detail (allowed values and meanings), but does not clarify issue_id, related_issue_id (presumably identifiers), or workspace. The description adds partial semantic value.

    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 'Create a relation between two issues,' specifying the verb (create) and resource (issue relation). It distinguishes from sibling tools like list_issue_relations and delete_issue_relation.

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

    Usage Guidelines4/5

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

    It explains the type parameter and its effect (automatic inverse relation), but does not explicitly state when to use this tool versus alternatives like list_issue_relations, or exclude cases. Some guidance is implied but not fully explicit.

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

  • Behavior3/5

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

    No annotations are provided, so the description carries the full burden. It mentions that workspace selects which PAT to use and pagination details, but does not explicitly state that the tool is read-only or describe any side effects, rate limits, or auth requirements.

    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 extremely concise with no wasted words. The purpose is stated in the first sentence, and parameter details are clearly separated in subsequent lines.

    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 that an output schema exists (so return values are documented elsewhere), the description covers pagination and workspace selection adequately. It could mention default behavior of workspace and what happens when no teams exist, but overall it is fairly complete for a list tool.

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

    Parameters5/5

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

    Schema description coverage is 0%, so the description must compensate. It fully explains all three parameters: workspace (selects PAT), first (page size, max 250), and after (cursor for pagination), adding significant value beyond 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 'List teams in a Linear workspace' with a specific verb and resource. It distinguishes itself from sibling tools like 'get_team' which retrieves a single team.

    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 explains the parameters (workspace, first, after) with defaults and max values, providing clear context for pagination. However, it does not explicitly state when to use this tool versus alternatives like get_team or other list tools.

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

  • Behavior4/5

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

    With no annotations, the description transparently describes the return structure (dict with workspaces, primary, errors) and notes that tokens never appear. It covers safety and output format well.

    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?

    Three sentences, front-loaded with the main purpose, no unnecessary words. Highly efficient.

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

    Completeness5/5

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

    The tool has no parameters, an output schema, and the description explains the return values in detail, making it fully self-contained for an agent.

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

    Parameters4/5

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

    There are no parameters, so the baseline is 4. The description adds value by explaining the output structure beyond 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 it lists configured Linear workspaces, including PAT prefix and primary status. The verb 'list' is specific, and no sibling tool serves the same purpose.

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

    Usage Guidelines3/5

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

    The description implies usage by being the only tool for listing workspaces, but it does not provide explicit guidance on when to use it or when to avoid it. No prerequisites or alternatives are mentioned.

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

  • Behavior4/5

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

    With no annotations, the description carries the full burden. It discloses that only 'body' is updateable when editing, and creation requires specific fields. It does not mention permissions, rate limits, or idempotency, but the core behavior (upsert) is transparent. A minor gap is not explaining the effect of missing optional parameters.

    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 three sentences, front-loaded with the main action. Each sentence is purposeful: first states the purpose, second gives update constraints, third gives creation requirements. No redundant words, making it highly efficient.

    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 absence of annotations and 0% schema coverage, the description is quite complete: it covers create/update distinction, required fields, updateable fields, and threading. The 'workspace' parameter is unexplained but may be inferred. An output schema exists, so return value documentation is not needed. A slightly higher score would require workspace explanation.

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

    Parameters4/5

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

    Schema description coverage is 0%, so the description must compensate. It explains parameters 'id', 'body', 'issue_id', 'project_id', and 'parent_id' with their roles. However, 'workspace' is not mentioned, leaving one of six parameters undocumented. Overall, it adds substantial meaning beyond 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 'Create or update a comment.' It immediately distinguishes the tool's dual purpose and specifies the resource (comment). The distinction between create and update based on 'id' presence is explicit, differentiating it from siblings like list_comments which only read.

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

    Usage Guidelines4/5

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

    The description gives explicit guidance: pass 'id' to edit, and for creation requires 'body' and either 'issue_id' or 'project_id'. It also explains 'parent_id' for threading. However, it does not specify when not to use this tool versus alternatives like saving issues or creating labels, but the context is clear for comment operations.

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

  • Behavior4/5

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

    With no annotations, the description fully discloses behavior: per-workspace viewer query, return contents, and failure meaning. It implies a read-only check, though not explicitly labeled as such. No contradictions exist.

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

    Conciseness5/5

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

    The description is concise (3 sentences), front-loaded with the core purpose, and provides actionable recovery instructions. Every sentence adds value.

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

    Completeness5/5

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

    Given zero parameters and the presence of an output schema, the description covers the tool's purpose, behavior, and error outcome completely. It is self-contained and sufficient for correct invocation.

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

    Parameters4/5

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

    Since there are no parameters (schema coverage 100%), the description adds no parameter details, but this is not needed. Baseline of 4 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 identifies the tool's purpose: verifying PAT validity for each workspace. It specifies the action (verify, calls viewer query) and what it returns (user info, organization), distinguishing it from sibling tools which are mostly CRUD operations.

    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 explains when to use the tool (to check token validity) and what to do on failure (re-generate PAT). It does not explicitly state when not to use or compare with alternatives, but the context is clear given the tool's unique diagnostic function.

    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

linear-mcp MCP server

Copy to your README.md:

Score Badge

linear-mcp MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

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

curl -X GET 'https://glama.ai/api/mcp/v1/servers/adelaidasofia/linear-mcp'

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