confluence-mcp
Server Quality Checklist
Latest release: v0.1.0
- Disambiguation2/5
Several tools are redundant or have overlapping functionality, such as list_pages vs list_pages_in_space and update_page vs update_page_title, which both can modify titles. The large number of similar list/get/create/update/delete tools across pages, blogposts, comments, and properties creates potential confusion despite detailed descriptions.
Naming Consistency4/5The vast majority of tools follow a clear verb_noun pattern (e.g., list_pages, create_page, delete_inline_comment), and the naming is consistently snake_case. Minor deviations like 'bulk_user_lookup' (which starts with an adjective rather than a verb) prevent a perfect score, but the overall pattern is predictable.
Tool Count1/5With 62 tools, the server is extremely large and exceeds the typical well-scoped MCP server by a wide margin. Even for a complex domain like Confluence, this number of tools would overwhelm agents and make tool selection difficult, fitting the 'extreme mismatch' category.
Completeness3/5The tool set covers many core Confluence operations including pages, blog posts, spaces, comments, properties, labels, and tasks. However, there are glaring gaps given the size: no search functionality, no attachment upload/update, no task creation/deletion, no space update/delete, and no dedicated blog post comment listing.
Average 3.8/5 across 62 of 62 tools scored. Lowest: 2.3/5.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 0 commits in the last 12 weeks
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI status not available
This repository is licensed under GPL 3.0.
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.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior1/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral context beyond what the annotations already convey. It does not mention permanence, cascading effects on replies, permissions required, or the return value. With destructiveHint=true and readOnlyHint=false already present, the description merely repeats the verb from the name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness3/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded, but the 'Args' section is fully redundant with the input schema and does not earn its place. Clear structure, but no added value beyond the title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive one-parameter tool with no output schema, the description provides the minimum: the action and the parameter. However, it lacks important context about side effects (e.g., whether deletion is permanent or removes replies), and with no output schema the agent cannot anticipate the result. Annotations cover safety profile, but the description itself is incomplete for confident invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters1/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage for the only parameter. The description states 'comment_id: Comment ID', which simply echoes the schema property title and provides no additional meaning such as where to find the ID, format, or relationships to other objects.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Delete an inline comment' clearly states the action and resource, and the resource type distinguishes it from sibling tools like delete_footer_comment. However, it does not explicitly contrast it with related tools (update_inline_comment, create_inline_comment), so it lacks explicit sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as update_inline_comment or delete_footer_comment. The description only states the action without any context on prerequisites, exclusions, or alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only repeats the action 'Delete' without adding any behavioral context beyond the annotations. It does not disclose whether deletion is permanent, whether it is reversible, or any permission requirements. The annotations (destructiveHint=true, idempotentHint=true) carry the entire burden, but the description adds no 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.
Conciseness2/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short but under-specified rather than appropriately concise. It contains only the tool name and a restatement of the parameter, providing no useful instructions or context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive operation with no output schema, the description inadequate. It fails to explain the effect of the deletion, any consequences, or how it fits into the broader API workflow. The minimal description does not give an agent enough context to invoke the tool confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must compensate. It merely restates 'comment_id: Comment ID', which duplicates the schema property title and provides no additional meaning, such as the required format, existence requirements, or relationship to other resources.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does 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 'footer comment', which is specific and distinguishes it from sibling tools like delete_page or delete_inline_comment. However, it does not explicitly differentiate from similar deletion tools, relying on the name itself for that distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description does not mention prerequisites, exclusions, or relationships to sibling operations like list_footer_comments or get_footer_comment.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, but the description adds no extra behavioral context. It doesn't mention how body_format or version affect the response, nor any authentication, rate limits, or error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness3/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the main action, but the argument list largely repeats schema metadata in prose form without adding new information. It is acceptable but has no extra value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a simple get-by-ID operation, but the description still lacks important context: no return format, no error handling, no relationship to list_footer_comments or replies, and no explanation of parameters like body_format. Without an output schema, the description is insufficient for an agent to fully understand the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With schema description coverage at 0%, the description carries the burden of explaining parameters. It labels them ('Comment ID', 'Body representation', 'Specific version number') but adds no essential detail. 'Body representation' remains ambiguous, and 'Specific version number' doesn't clarify whether versions are numbered sequentially or dated.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get a footer comment by ID' clearly identifies the verb and resource. It distinguishes from siblings like create/update/delete/list footer comments, but doesn't explicitly mention alternatives 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 Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It does not reference list_footer_comments, get_inline_comment, or other potentially competing tools, and no exclusions or prerequisites are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description simply restates the action 'Delete' without adding behavioral depth. Although annotations mark it as destructive and idempotent, the description does not disclose whether deletion is permanent, what permissions are required, or any side effects on related data, missing the opportunity to add context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, containing only the core action and an Arg list, with no redundant sentences. It is well-structured and front-loaded, but the extreme brevity leaves out essential details, which is more a completeness issue than a conciseness one.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive operation with no output schema, the description should explain the result of deletion, permanence, and any impact on associated pages or spaces. It provides none, causing significant gaps for the agent to predict the tool's behavior. The presence of annotations mitigates some risk, but the description itself is incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. The Args section says 'attachment_id: Attachment ID', which essentially repeats the parameter's title from the schema. It provides no details on where to find the ID, its format, or any constraints, insufficient for a single required parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Delete an attachment' with a specific verb and resource, making the tool's purpose clear. It distinguishes itself from sibling delete tools (e.g., delete_page, delete_blogpost) by naming 'attachment' as the resource. However, it does not elaborate on what constitutes an attachment, which would strengthen clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives. It does not mention prerequisites (e.g., needing an existing attachment ID) or context where this tool is preferred, leaving the agent without direction for appropriate 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 readOnlyHint=true and destructiveHint=false already present in annotations, the description's only additional behavioral info is that it lists child comments. It omits details about pagination, sorting behavior, error handling, or return shape, offering minimal transparency beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The text is brief and front-loaded with the core purpose; the args list is neatly formatted. There is no redundant prose, making it an efficient reference, though the minimalism borders on under-specification.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and five parameters, the description fails to indicate the return format, pagination semantics, supported body_format values, or sort fields. It only states the action and lists parameter names, leaving significant gaps 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/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, so the description must compensate, but each parameter line merely restates the parameter name (e.g., 'sort: Sort field', 'cursor: Pagination cursor') without adding meaning. Only comment_id gains context as 'Parent comment ID'; body_format, sort, and cursor remain underspecified.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence clearly states it lists replies (child comments) of a footer comment, specifying the resource and action. While it differentiates from list_page_footer_comments and get_footer_comment by scope, it does not explicitly name alternatives, so it stops short of full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus list_page_footer_comments or get_footer_comment. The description only defines the operation and its arguments, with no mention of prerequisites, exclusions, or alternative tool recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the read-only nature is clear. The description adds no further behavioral context (e.g., pagination semantics, ordering guarantees, or whether replies are included).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the core action. The Args list is minimal, though it partially duplicates the schema, which is acceptable given the lack of schema descriptions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and a moderately complex paginated list operation, the description does not explain return shape, pagination behavior, or any filtering constraints. The information provided is insufficient for an agent to fully understand the invocation outcome.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. The Args section provides only terse labels like 'Body representation' and 'Pagination cursor,' which add marginal meaning beyond the schema titles but fail to explain valid values, formats, or relationships between params.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'List inline comments on a page' with a specific verb and resource, clearly distinguishing it from sibling tools like list_page_footer_comments. The scope is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided for when to use this tool versus alternatives, such as get_inline_comment or list_page_footer_comments. The description simply restates the action without context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds minimal behavioral context beyond the annotations. It mentions the space scope and parameters but omits return format, pagination behavior, or any caveats. Given readOnlyHint=true and destructiveHint=false are already present, the description's contribution is limited.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the core purpose, followed by a compact argument list. No fluff or redundant explanations, and the argument list is useful given the schema lacks descriptions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, so the description should explain return values and pagination details, but it doesn't. An agent cannot infer the response shape, sort options, or how to use the cursor, making the description incomplete for effective invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description must compensate for parameter meaning. It does provide terse definitions for each parameter, but some are nearly tautological ('sort: Sort field', 'space_id: Space ID'). 'prefix: Filter by label prefix' and 'cursor: Pagination cursor' add actionable semantics, though not deeply detailed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists labels used across a space, providing a specific verb and resource. However, it does not differentiate from sibling tools like list_labels or get_space_content_labels, which could confuse an agent about which tool to choose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does 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 lacks any mention of alternative tools, exclusions, or preconditions, leaving the agent without direction on selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, non-destructive behavior, but the description adds no additional behavioral context such as ordering, inclusion of the page itself, or response shape. It merely restates the action without enriching the agent's understanding beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short and front-loaded with the main purpose. However, the 'Args:' section redundantly restates the schema, which does not earn its place. The purpose sentence is clear and concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and minimal parameter documentation, the description is incomplete. It does not specify the return format, whether the result is ordered, or how the ancestor list is structured, making it difficult for an agent to anticipate the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters1/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With schema description coverage at 0%, the description must provide meaning for the page_id parameter. It only repeats the parameter name ('Page ID') without explaining the expected format, how to obtain it, or any relationship to other IDs. This adds no value beyond the schema's field name.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Get' and resource 'ancestor pages' with the clarifying phrase 'breadcrumb trail'. This clearly distinguishes it from sibling tools like get_page_descendants or get_page_children.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the use case of retrieving ancestor pages for breadcrumb navigation, but it does not explicitly state when to use this tool versus alternatives or provide any exclusions. The reader must infer usage from the purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds that the result is scoped to the current user and clarifies 'operations' as 'permissions', but does not disclose return format or any further behavioral details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with a clear purpose sentence. The Args block is slightly redundant with the schema but does not significantly bloat the description. Overall, every sentence earns its place, though some redundancy exists.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one parameter and good annotations, the description is minimally viable. However, it fails to distinguish itself from get_space_permissions and does not describe the output format, which could confuse an agent when selecting between similar tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description includes an Args section but only restates 'space_id: The ID of the space', adding little beyond the parameter name itself. With 0% schema coverage, the description fails to provide meaningful elaboration such as how to obtain the space_id or any format constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets operations/permissions for the current user in a space, with a specific verb and resource. However, it does not differentiate from the sibling tool get_space_permissions, which appears to serve a similar purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like get_space_permissions or get_page_operations. The description simply states what it does without any contextual exclusions or recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, so the destructive nature is covered. However, the description adds no behavioral context beyond the bare 'Delete', such as whether deletion is permanent, reversible, or requires special permissions. It does not contradict annotations but also does not enrich them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with a single declarative sentence and a simple Args list. It is easy to scan, but the Args list is redundant with the input schema, so some elements could be trimmed without loss.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter deletion tool with annotations covering destructiveness, the description is minimally viable. However, it lacks any mention of edge cases, effect on related data, or success/failure behavior, which would make it more complete for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description merely repeats the schema field names ('page_id', 'property_id') and their types ('Page ID', 'Property ID'), adding no additional meaning. The schema already provides these titles, so the description fails to compensate for the lack of semantic detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Delete a content property from a page' with a specific verb and resource. It distinguishes from sibling tools like delete_page, delete_blogpost, and delete_attachment by targeting content properties specifically.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does 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 update_page_property or delete_page. There are no explicit exclusions or context about prerequisites, making the usage context implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, covering the safety profile. The description adds no extra behavioral context, such as pagination behavior, error cases, or return format. It only restates the purpose and parameter list, so it adds no value beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness3/5Is the description appropriately sized, front-loaded, and free of redundancy?
The purpose sentence is concise and front-loaded. However, the 'Args' block largely duplicates the input schema without adding meaningful detail, making it redundant. The structure is clean but contains some waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with no output schema, the description is incomplete. It does not mention return format, ordering, pagination specifics, or edge-case behavior. While annotations cover safety, the description fails to provide the full context an agent needs to use the tool effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description carries the full burden for parameter semantics. It provides brief definitions (e.g., body_format as 'storage, view, atlas_doc_format', cursor as 'Pagination cursor'), but these are minimal and mostly tautological. The description does not explain valid sort values or other nuances, so it only partially compensates for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and identifies the resource as 'footer (page-level) comments', which clearly distinguishes it from sibling tools like list_page_inline_comments. This is a precise and unambiguous purpose statement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'footer (page-level)' implies this tool is for page-level comments, but no explicit when-to-use guidance or mention of alternatives (e.g., inline comments) is provided. The usage context is implied rather than stated directly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is clear. The description adds minimal behavioral context beyond the parameter list, such as no mention of pagination behavior or return format, but this is acceptable given the annotations cover the key safety aspects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is quite short and gets to the point. The Args block is repetitive but each line is minimal and no unnecessary text is included. It loses one point for the awkward formatting of listing parameters, but overall it is efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description should explain return values and edge cases, but it does not. It also fails to differentiate this tool from sibling tools like 'list_blogposts'. The tool is simple, but the lack of any behavioral or return details makes it incomplete for effective selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must fully compensate. However, the Args section provides only terse labels like 'Space ID', 'Sort field', and 'Blog post status filter' that add little beyond the schema's property names. No examples, allowed values, or format details are given for sort, status, cursor, or limit, leaving significant ambiguity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List blog posts in a space' with a specific verb and resource, and the space scope distinguishes it from the sibling tool 'list_blogposts' which likely lists across spaces. This is a clear, specific 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/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like 'list_blogposts' or 'list_blogposts_with_label'. There are no exclusions or explicit alternative recommendations, leaving the agent to infer usage solely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With annotations already declaring readOnlyHint=true and destructiveHint=false, the description adds no additional behavioral context. It does not describe pagination behavior, sort defaults, or error conditions, which would be useful for a list operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficient: a one-sentence purpose followed by a compact Args list. Every line serves a purpose, and there is no unnecessary fluff. The front-loaded purpose aids quick scanning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having 7 parameters and no output schema, the description does not explain the return format, pagination semantics, or how filters combine. It is insufficient for an agent to fully predict the tool's behavior beyond the schema and annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does 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 lists all 7 parameters with brief comments, but most are redundant with the schema's titles. The mediatype example ('image/png') adds some value, but sort and status lack allowed values. Overall, minimal compensation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description is explicit: 'List attachments on a page' identifies the verb, resource, and scope. This clearly distinguishes it from sibling tools like get_attachment (single attachment) and delete_attachment (mutation).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as get_attachment or list_page_properties. There are no exclusions or mention of filter combinations. It simply states the operation without 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?
Annotations already indicate a writing, non-destructive, idempotent operation. The description adds the version_number constraint ('must be current version + 1') which is important for optimistic concurrency, but it does not explain the result of a version mismatch or 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.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the action, using an efficient list to document parameters without redundancy. Each sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 5 required parameters and no output schema, the description covers all inputs and the versioning constraint. However, it omits return values, error behavior on version conflict, and any possible side effects, despite openWorldHint being true. It is sufficient but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description includes an Args section that explains all five parameters, fully compensating for the 0% schema description coverage. version_number receives a crucial semantic constraint, adding significant meaning beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Update a content property on a page' with a specific verb and resource. It is implicitly distinguishable from sibling tools like update_page and update_page_title, though it does not explicitly call out the distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as create_page_property or update_page. The description only provides the operation and args, leaving usage context to be inferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. However, the description adds no additional behavioral context such as what happens if the space ID is invalid, permission requirements, or return format. It does not contradict the annotations, and the bar is lower due to annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, consisting of a one-sentence purpose and a minimal argument listing. It is front-loaded with the core functionality and contains no filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter read operation, the description is adequate but not complete. It lacks explanation of the return value (since no output schema exists) and does not address edge cases like non-existent spaces. Given the low complexity and strong annotations, this is a reasonable but not exemplary score.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, meaning the schema provides no parameter descriptions. The description's 'Args' section repeats the parameter name and a vague 'Space ID', which adds little beyond the schema's title 'Space Id'. It fails to provide meaningful semantics like format, examples, or constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get a space by its ID', which specifies the exact action and resource. It effectively distinguishes this from sibling tools like 'list_spaces' (which lists all spaces) and 'get_blogpost' (which fetches a different resource type).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance is provided on when to use this tool versus alternatives. While it implies use when you have a specific space ID, it does not mention scenarios where other tools like 'list_spaces' or 'get_space_permissions' might be more appropriate, 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?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the agent knows this is a safe read operation. The description adds minimal behavioral context (key filtering, pagination) but does not explain return format, errors, or permission needs. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured with a one-sentence summary and a clearly formatted Args list. It is efficient, though the 'Page ID' explanation adds little value over the schema title, and the overall content is sparse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple, has strong annotations, and no output schema. The description covers the essential purpose and parameters but lacks contextual guidance like when to use it versus get_page_property or what the return structure represents. Adequate for a basic list tool but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description's arg explanations ('Filter by property key', 'Pagination cursor', 'Max results') add basic meaning beyond the schema's bare titles. However, these explanations are minimal and do not elaborate on formats or defaults beyond what is already inferable from the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List content properties on a page' uses the specific verb 'List' and clearly identifies the resource ('content properties') and scope ('on a page'), distinguishing it from sibling tools like get_page_property (singular) and create/update/delete property tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does 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 versus alternatives such as get_page_property, nor does it mention pagination behavior or scenarios where the key filter would be appropriate. It merely states the action without 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?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the agent knows this is a safe read operation. The description adds context like 'Narrow results to a specific space' and 'Pagination cursor,' but does not disclose additional behavioral traits such as response format, pagination limits, or any potential anomalies. With annotations covering safety, a score of 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: a single sentence followed by an Args list. Each line earns its place, though parameter names repeat schema titles. It is well-structured and front-loaded with the primary action, making it easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with 6 parameters and no output schema, the description covers the core purpose and parameter meanings. However, it omits behavioral details like response shape, pagination defaults, or the meaning of openWorldHint. It is adequate but not fully complete for an agent that has no other context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description's Args list must carry the parameter meaning. It provides brief explanations for all six parameters, with some being helpful (space_id, body_format, cursor, limit) and others tautological (label_id). It adds value beyond the bare schema titles but lacks detail on allowed values or formats.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'List all pages that carry a specific label.' It uses a specific verb and resource, and the label focus distinguishes it from generic page-listing tools. However, it does not explicitly mention sibling alternatives or contrast itself with them, so it falls short of a perfect 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the description: use this tool when you have a label_id and want pages with that label. However, there is no explicit guidance on when to prefer this over alternatives like list_pages or list_blogposts_with_label, nor any exclusion criteria. This is adequate but not 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?
The description adds 'recursive' and 'paginated' as behavioral traits beyond the readOnly and non-destructive annotations, which is useful. However, it does not disclose return format, pagination mechanics, or potential pitfalls like very large result sets, so transparency is moderate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and well-structured, leading with a clear purpose statement followed by an Args list that adds necessary information without redundancy. Every element earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's modest complexity, good annotations, and lack of output schema, the description adequately covers the core behavior and parameter meanings. However, it omits return type details and does not disambiguate from closely related sibling tools, making it not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the Args list provides basic semantics for all four parameters (parent ID, cursor, limit, sort). This is helpful, but it lacks detail such as valid sort fields, limit bounds, or how the cursor is obtained, leaving gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets all child pages of a parent page and specifies it is recursive and paginated. It distinguishes from direct children via 'recursive' but does not explicitly differentiate from the sibling get_page_descendants, causing minor ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when recursive, paginated child page retrieval is needed, but provides no explicit guidance on when to use this tool over alternatives like get_page_direct_children or get_page_descendants. No exclusions or alternative tool names 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?
Annotations (readOnlyHint=true, destructiveHint=false) already establish this as a safe read operation, lowering the bar. The description adds the behavioral fact that it returns 'all descendants' rather than just direct children, but it does not disclose pagination behavior, ordering, or whether the traversal is recursive. This provides modest additional context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a compact docstring with a clear one-sentence purpose followed by a parameter list. It is concise and front-loaded, with no wasted words, though the argument descriptions are minimal.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a paginated list tool with no output schema. The description fails to explain what the response looks like, how pagination works (e.g., using the cursor), or what constitutes a descendant (recursive vs. direct). For a list operation, this leaves the agent without essential integration information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must compensate. It provides terse but useful meanings: page_id ('Page ID'), limit ('Max results'), and cursor ('Pagination cursor'). These add clarity over the bare schema titles but omit details such as default values, maximum limits, or cursor format.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Get' and identifies the resource as 'descendants of a page' with the qualifier 'all', clearly distinguishing it from sibling tools like get_page_children and get_page_direct_children. The title aligns perfectly with the description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool versus alternatives. The word 'all' implies a broader scope, but there is no direct guidance such as 'use this for all generations, not just direct children' or mention of alternatives. Context is clear but not fully developed.
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 annotations already indicate a write operation (readOnlyHint=false), so the description adds value by explaining that 'status' controls whether the post is published immediately or saved as a draft, and that 'body_representation' supports specific formats. However, it does not disclose the return value, possible side effects, or any authorization requirements, which would be useful for a create operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: a one-sentence purpose followed by a clean argument list. Each line adds necessary clarification, but it does duplicate the parameter names already present in the schema, which is slightly redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
All five parameters are thoroughly covered with additional context beyond the schema. However, the description omits any mention of the return value, error conditions, or prerequisites such as the existence of the space. For a create tool with no output schema, this leaves some uncertainty about expected outcomes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description fully compensates by explaining every parameter. It provides meaningful context for 'space_id', 'title', 'body_value', and crucially enumerates allowed values for 'body_representation' and 'status' that are absent from the schema. This is exemplary parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create a new blog post') and the resource ('in a space'), which is specific and distinct from other tools like create_page. However, it does not explicitly differentiate from siblings such as create_page, so it loses a point for lacking that direct comparison.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like create_page or update_blogpost. It only lists parameters, leaving the usage context entirely implicit. This is a clear gap for a tool with many contextually similar siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and destructiveHint=false, so the safe read nature is covered. The description adds context about the version parameter ('Specific version number') but does not disclose behavior like error handling, return output, or handling of optional body_format. It adds minimal value beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with a clear front-loaded main sentence followed by an organized Args list. Every sentence and field contributes value, and there is no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with good annotations and a clear operation, the description is adequate. It covers the action and parameters, and the return value is implied as the inline comment itself. It could mention output format or error conditions, but given the simplicity and annotations, it is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description's Args section is the only semantic source. It explains each parameter briefly ('comment_id: Comment ID', 'body_format: Body representation', 'version: Specific version number'), which is helpful but lacks detail such as allowed values for body_format or the meaning of null defaults. It compensates somewhat but not fully.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get an inline comment by ID' with a specific verb, resource, and scope. It distinguishes itself from sibling tools like list_page_inline_comments (which lists) and update/delete/create variants by emphasizing the ID-based single retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does 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 list_page_inline_comments for getting multiple comments, nor does it explain any exclusions or prerequisites. The intended use is implied but not 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?
Annotations already declare readOnlyHint and destructiveHint, covering the safety profile. The description adds semantic detail about the return content (read, update, delete operations) but does not disclose additional behavioral traits such as whether permissions are user-specific or how they are determined. With annotations present, this is acceptable 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/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences, front-loaded with the purpose and a minimal Args section. Every word earns its place with no unnecessary repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple single-parameter, read-only tool with strong annotations. The description communicates the core function clearly, and the lack of an output schema is partly mitigated by the description's mention of 'permitted operations'. Some return-value details are missing, but the overall context is sufficient for the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides no description for the required page_id, and schema coverage is 0%. The description's Args section compensates with 'page_id: Page ID', which is the core semantic, but it lacks detail on format, source, or examples. Adequate but not rich.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Get') and resource ('permitted operations ... for a page'), distinguishing it from sibling tools like get_space_operations by explicitly scoping to pages.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There is no mention of when not to use it, prerequisites, or differences from similar operations 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?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is known. The description adds depth semantics and hints at pagination via cursor/limit, but does not disclose pagination behavior, default limits, or potential large result sets.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded with the core purpose, followed by a compact list of parameter explanations. No fluff, though formatting is plain.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with annotations, the description covers essential invocation details, but lacks specifics on return structure, pagination mechanics, and allowed values for sort/status. With no output schema, more detail on expected response would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must carry parameter meaning. It provides brief explanations for all six parameters, including depth allowed values and the purpose of cursor/limit. However, sort and status are vague with no allowed values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource ('List all pages in a space'), clearly distinguishing it from sibling tools like list_blogposts_in_space or get_page_children. The depth parameter further clarifies scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context that this tool lists pages within a specific space, but it does not explicitly mention when to prefer it over alternatives like list_pages or get_page_children. No exclusions or alternative tools are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, covering the safety profile. The description adds no extra behavioral context such as error handling, return format, or behavior when the property is not found, but it does not contradict the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, front-loaded with the core purpose, and follows with clearly separated parameter definitions. Every sentence earns its place, and there is no wasted verbiage.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with solid annotations, the description covers the core action and the two required parameters adequately. However, the term 'content property' is somewhat ambiguous, and there is no mention of return value or potential error states, leaving a small gap in completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description merely restates the parameter names ('page_id: Page ID', 'property_id: Property ID') without adding meaningful context like where to find these IDs, expected formats, or relationships. It fails to compensate for the sparse schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('specific content property on a page'), clearly identifying the tool's action and scope. It implicitly distinguishes from sibling tools like list_page_properties by emphasizing 'specific'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'a specific content property' implies this tool is for retrieving one property by ID as opposed to listing all properties, but it never explicitly says when to use this tool over alternatives like list_page_properties, nor provides exclusions. Usage guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, covering the safety profile. The description adds no extra behavioral context (e.g., pagination behavior, return format) beyond what annotations and schema provide. No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, with only two informative sentences. It is front-loaded with the tool's purpose and avoids filler, earning its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple, but the description omits the return structure (e.g., list of assignments) and pagination semantics. With no output schema, the agent is left guessing what the response contains, though the basic purpose is clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description carries the burden of explaining parameters. It provides brief meanings ('Space ID', 'Pagination cursor', 'Max results'), adding some value over bare schema titles, but lacks detail on formats or defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get permission assignments for a space' with a specific verb and resource. It is unambiguous and distinct from all sibling tools, none of which target space permissions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (to fetch space permissions), but provides no explicit context, caveats, or alternatives. Since no sibling tool overlaps in function, this is acceptable but not exemplary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, establishing the safe read-only nature. The description adds minimal behavioral detail by listing pagination-related parameters (cursor, limit), implying pagination, but does not explain response format, permission requirements, or how prefix filtering interacts with sort. It adds some value but not extensive context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: a one-line purpose followed by a clean argument list. Every word earns its place, with no redundancy or fluff. The structure is scannable and appropriate for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is moderately complex with 5 parameters and pagination, but the description is fairly minimal. It does not explain the return structure (what a label object looks like), the default sort behavior, or how cursor-based pagination works. For a read-only list tool without an output schema, this is a noticeable gap, though the argument list covers the main input semantics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With schema description coverage at 0%, the description carries the full burden of explaining parameters. It provides brief but meaningful descriptions for all 5 parameters, including an example for prefix. However, it lacks specifics like allowed sort values or default limits, so it is helpful but not exhaustive.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('List') and resource ('labels attached to a page'), distinguishing it from sibling tools like list_space_labels or list_pages_with_label. It is concise and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide any context about when to use this tool versus alternatives, nor does it mention any exclusions or prerequisites. It only describes the basic action, leaving the agent to infer usage from the name and siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already disclose readOnlyHint=false and destructiveHint=false. The description adds only minor context (e.g., inline_marker_ref origin) but does not mention side effects, required permissions, error behavior, or return value. It fails to enrich beyond the structured annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is succinct and well-structured: a one-sentence purpose followed by a clean Args list. Every sentence adds value, with no filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers all parameters and purpose but omits the return value of the created comment, potential side effects, or error conditions. For a create operation with no output schema, return behavior is a meaningful gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description compensates thoroughly by explaining each parameter: page_id as the page, body_value as HTML/storage-format, inline_marker_ref with origin, body_representation with allowed values, and resolved meaning. This is essential for correct invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Create an inline comment anchored to a text selection on a page.' This clearly distinguishes it from sibling tools like get_inline_comment, update_inline_comment, or delete_inline_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/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for inline comments via 'anchored to a text selection' but does not explicitly mention alternatives (e.g., footer comments) or provide clear when-to-use/when-not-to-use guidance. The context is present but not 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?
The description adds the useful constraint that the key must be unique on the page, which gives some behavioral context. Annotations already indicate this is not read-only and not destructive, so the safety profile is partially covered. However, the description does not disclose what happens if the key already exists, what the return value is, or any other side effects, leaving a moderate transparency gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very compact, front-loaded with the purpose, and follows a clean 'Args' structure without any wasted words. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple three-parameter tool with no output schema, the description is nearly complete: it covers purpose, parameter meanings, and a key constraint. The only notable omission is the return value or error behavior, which would improve completeness, but the current level is adequate for the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description compensates well by providing concise, meaningful explanations for all three parameters: page_id, key (with uniqueness note), and value (any JSON-serializable value). This is valuable beyond the bare schema and clarifies the intended use of each argument.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create a content property on a page'), naming both the operation and the resource. It distinguishes itself from sibling tools like update_page_property and delete_page_property by its explicit 'create' verb and 'on a page' scoping, which also separates it from create_space_property.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus alternatives such as update_page_property or delete_page_property. The context is clear (creating a new property) but no exclusions or comparisons are provided. This falls short of helpful usage guidelines.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint=true and readOnlyHint=false, so the tool's destructive nature is known. The description adds no additional behavioral context such as irreversibility, cascading effects, or required permissions. It only restates the action, which is already implied by the annotations and tool name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise, front-loaded with the main action, and includes a clear argument list. No unnecessary words or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter delete operation, the description is largely complete. It explains the parameters, and the annotations cover the destructive and idempotent nature. However, it does not mention return values or side effects, but given the lack of an output schema and the simplicity of the tool, this is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but the description includes an 'Args' section explaining each parameter: 'space_id: The ID of the space' and 'property_id: The ID of the property to delete.' This adds meaning beyond the bare schema by clarifying the role of each parameter, especially that property_id is the one to delete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Delete a content property from a space') with specific verbs and resource. It distinguishes itself from sibling tools like delete_page_property or update_space_property by clearly naming the target resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention any prerequisites, conditions, or alternative tools such as update_space_property or create_space_property. This is a clear lack of usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true and destructiveHint=false, providing a clear safety profile. The description adds minimal behavioral context beyond this, only briefly mentioning body_format as a parameter that affects representation. It does not disclose authentication needs, error behavior, or other side effects, but the annotations cover the most critical safety aspect.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and front-loaded: the purpose appears in the first sentence, followed by a minimal parameter list. There is no redundant or extraneous content, making it efficient for quick parsing by an AI agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple get-by-ID tool, the description provides enough context: the required ID parameter, an optional format parameter, and read-only intent via annotations. While it does not specify the exact response structure, the tool's simplicity and the clear purpose make this adequate. Sibling tools provide context for alternative operations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With schema description coverage at 0%, the description carries the burden of explaining the parameters. It does clarify that task_id is the identifier and body_format controls the body representation. However, it lacks specifics such as acceptable values for body_format or behavior when null, so it only partially compensates for the schema's lack of descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Get a task by ID.' This uses a specific verb and resource, defining exactly what the tool does. It distinguishes itself from sibling tools like list_tasks (which lists tasks) and update_task (which modifies tasks) by focusing on retrieval of a single task 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 Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: when a specific task ID is known and the task details are needed. However, it does not explicitly mention alternatives (e.g., list_tasks) or any exclusion criteria. Since the purpose is clear, the usage is implicitly understood but lacks explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, covering the safety profile. The description adds some context by explaining the filtering and pagination parameters (key, cursor, limit), but it does not disclose any additional behavioral traits such as sorting, result structure, 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.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is minimal and well-structured: a one-sentence purpose followed by a clean args list. Every line is necessary and no information is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a simple read-only list operation. Despite having no output schema, the description covers the purpose and all parameters. It could mention the return format or sorting behavior, but given the low complexity and annotation coverage, it is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description is the only source of parameter meaning. It provides concise, clear explanations for all four parameters: space_id, key, cursor, and limit, compensating for the schema's lack of descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' and identifies the resource as 'content properties of a space.' This clearly distinguishes it from get_space_property (single retrieval) and list_page_properties (page-level properties), even though it doesn't name them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as get_space_property or list_page_properties. No prerequisites or exclusions are mentioned; the usage is only implied by the name and purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, covering the safety profile. The description adds behavioral specifics: filtering by space/status, sort order examples, pagination via cursor, and limit constraints (default 25, max 250), which go beyond the structured data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single purpose line followed by a concise args list. Every sentence adds useful information, with no fluff. The main purpose is front-loaded, and the parameter descriptions are compact yet complete.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no output schema, the description covers the parameter space and pagination behavior well. It does not explicitly describe the response structure or that results are returned under a key, which could be useful for a list tool. Still, the description is quite complete for the scope.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With schema description coverage at 0%, the description carries full burden. It explains every parameter meaning: space_id restricts to a space, status filters to 'current' or 'draft', sort provides examples, cursor is from a previous response, and limit specifies default/max. This fully compensates for the schema's lack of enums and details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List blog posts, optionally filtered by space' — a specific verb and resource. However, it does not differentiate from sibling tools like list_blogposts_in_space or list_blogposts_with_label, so it misses explicit sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains how to use each argument but gives no guidance on when to choose this tool over list_blogposts_in_space or list_blogposts_with_label. The optional space filter is implied as a unified interface, but no exclusions or alternative conditions 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?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the read-only nature is covered. The description adds sort order semantics and pagination parameters but does not disclose any additional behavioral traits such as response format or potential empty results. No contradiction exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured. It opens with the core purpose in one sentence, followed by a clear Args block. No unnecessary words or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation, the description adequately covers the essential details: what it lists and how to control results via pagination and sorting. It omits explicit mention of return shape, but given the low complexity and annotations, this is not a critical gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description fully compensates by explicitly defining each parameter: page_id, cursor, limit, and sort (including allowed values 'created-date' and '-created-date'). This adds meaning well beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'List the version history of a page.' This is a specific verb-resource pair that clearly distinguishes from sibling tools like get_page_version (which fetches a single version) and other page-related list tools. The scope is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as get_page_version or list_pages. The description only covers parameter semantics, so the agent is left to infer usage context from the tool name and siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, covering the safety profile. The description adds no additional behavioral context beyond parameter semantics; it does not mention return format, default limit, or ordering. With annotations present, the bar is lower, and the description adds some value but is not rich in behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: a one-line purpose followed by a clean list of arguments. Every sentence is informative, and there is no fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description thoroughly covers all 9 parameters, which is good for a tool with no output schema. However, it lacks details about the return value shape, pagination behavior (beyond cursor/limit), or default limits. Since openWorldHint already implies some pagination, the description is adequate but not fully complete for a complex tool with many filters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description carries the full burden for parameter semantics. It provides meaningful explanations for all 9 parameters, including status enum values, ISO 8601 format for dates, and inclusive bounds for due_at_from/to. While some descriptions are terse (e.g., 'Filter by space ID'), they add essential meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List tasks in Confluence' uses a specific verb and resource, clearly distinguishing this tool from siblings like get_task, list_pages, and list_blogposts. It states the core function without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lists many filter parameters, implying use cases like filtering by status, space, or page. However, it does not explicitly state when to use this tool over alternatives, mention exclusions, or provide context about pagination limits. Usage is implied but not directly guided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only and non-destructive behavior, and the description adds context about resolving unknown IDs to their types, which goes beyond the annotations. However, it doesn't disclose edge cases like invalid IDs or the exact return shape.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and well-structured: a clear first sentence, a helpful use-case note, and an explicit Args section. Every line adds value with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one parameter and no output schema, but the description omits details about the return format (e.g., mapping vs. list) and error behavior. It covers the basics but leaves room for guesswork.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter, content_ids, is described as 'List of content IDs to look up,' which just restates the schema. With schema description coverage at 0%, the description fails to add meaningful detail about the format, constraints, or behavior of the IDs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the function: converting content IDs to content types, listing examples such as page and blogpost. It distinguishes this tool from sibling tools that operate on specific content types, making the purpose unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear scenario—'when you have an ID but don't know whether it refers to a page, blog post, attachment, or other content type'—that signals when to use it. It doesn't explicitly mention alternatives or exclusions, but the use case is specific enough to guide the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already convey that this is a mutation (readOnlyHint=false) and non-destructive (destructiveHint=false). The description adds the key format constraint and marks description as optional, but does not discuss failure behavior, idempotency, or side effects. It provides some context beyond annotations but not extensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: one purpose sentence plus a compact args list. It front-loads the purpose and uses a clean format with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a straightforward creation operation with only 3 parameters. The description covers purpose and all parameters, and annotations provide the safety profile. It does not mention return value or error cases, but these can be inferred from typical create semantics and the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides no parameter descriptions (0% coverage), so the description compensates by explaining all three parameters: key format with example, name purpose, and description optionality/nullability. This significantly aids correct invocation, though it could include more details like length limits or character sets for name.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Create' and resource 'Confluence space', clearly distinguishing it from sibling tools like create_page or create_space_property. The purpose is unambiguous and directly stated in the first sentence.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The context of creating a space is clear, but the description does not explicitly mention when to use this tool versus alternatives like create_space_property. There are no exclusions or prerequisites noted, so it lacks explicit usage guidance beyond the obvious purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is known. The description adds minimal behavioral context—only mentioning the version parameter without explaining behavior like default handling or not-found cases. This falls short of richer context but is not misleading.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short, front-loaded with the core purpose, and structured with an Args list. Every sentence is informative with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 params, no output schema) and strong annotations, the description is largely sufficient. It doesn't explain return values, but for a get-by-ID tool, that may be implied. The optional version behavior could be more explicit, but overall it provides adequate context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description includes an Args section that explains attachment_id and version. These explanations are terse but add some meaning beyond the schema's bare property names and types. It partially compensates for the lack of schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets an attachment by ID, using a specific verb and resource. It distinguishes itself from sibling tools like list_page_attachments (listing) and delete_attachment (destructive).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes clear this is for retrieving a single attachment by ID, providing clear context. It doesn't explicitly mention when not to use it or alternatives, but for a simple get operation, the usage is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the description need not repeat safety traits. However, the description adds no extra behavioral context beyond the basic 'Get details' (e.g., return format, pagination, or error handling). It is consistent with annotations, so not contradictory, but adds minimal value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: a single sentence for purpose and a compact args list. No filler or redundant content. Every word earns its place, and the structure is scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with only two parameters and no output schema, the description is adequate. It covers the purpose and param semantics, though it does not detail what 'details' include or any edge cases. Given the tool's low complexity, this is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description compensates by explaining both parameters: 'page_id: Page ID' and 'version_number: Version number to retrieve.' This provides clear, concise meaning beyond the raw schema types, though it does not delve into formats or constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get details') and the specific resource ('a specific version of a page'). This distinguishes it from sibling tools like list_page_versions (which lists versions) and get_page (which gets the current page), making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when a specific version is needed, but does not explicitly contrast with alternatives such as list_page_versions or get_page. No when-not-to-use guidance is provided, so it falls short of explicit usage guidelines.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, confirming this is a safe read operation. The description adds no additional behavioral context such as return format, error handling, or authorization requirements. It does not contradict annotations, but also does not go beyond what structured fields already convey, so a mid-range score is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, with a single clear opening sentence followed by the parameter definitions. There is no redundancy or filler. Every word serves a purpose, and the essential information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (two ID parameters, no output schema, read-only annotations), the description is mostly sufficient. It clearly states what is retrieved and by what identifiers. However, it could be slightly more complete by noting that it retrieves a content property specifically (as opposed to other property types) or clarifying what a 'content property' is, but for a straightforward getter, this is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, meaning the schema provides only type and title without descriptions. The description compensates by defining both parameters: 'space_id: The ID of the space' and 'property_id: The ID of the property.' This adds semantic meaning beyond the schema, though the explanations are basic and do not include constraints or examples.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Get a single content property of a space by its ID.' This specifies the verb (get), resource (content property of a space), and method (by ID), which distinguishes it from siblings like list_space_properties, update_space_property, or delete_space_property. The purpose is explicit 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/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: when you need a single content property by its ID. However, it does not explicitly mention when to use this tool versus alternatives such as list_space_properties to retrieve multiple properties, or get_page_property for page properties. There is no exclusion or comparison provided, so guidance is minimal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description discloses pagination parameters (cursor, limit) and sort, which is some behavioral context, but does not describe the return format or any default behavior like whether archived spaces are included.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact: a one-line purpose followed by a bullet-style arg list. No redundant text, front-loaded purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a list tool with 8 optional parameters and no output schema, the description thoroughly covers parameter semantics but omits the return shape/pagination metadata. Given the tool's complexity, this is a minor but notable gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so this description is the sole source for parameter meaning. It explains all 8 parameters with concrete examples for sort, allowed values for type and status, and clarifies comma-separated formats for ids/keys/labels.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'List Confluence spaces', clearly stating the verb (List) and resource (Confluence spaces). This distinguishes it from sibling tools like get_space, list_pages, or list_blogposts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states its function but does not explicitly guide when to use it over alternatives like get_space. The context implies it is for bulk listing with filters, but no exclusions or 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.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide the safety profile (readOnly=false, idempotent=false, destructive=false). The description adds the 'exactly one' target constraint and explains body_representation formats. It doesn't disclose potential side effects or return behavior, but the bar is lower given annotations, and no contradiction exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: purpose sentence, constraint, then a compact arg list. Every element adds value. It's not overly verbose but could be slightly tighter by merging some repetitive phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a creation tool with 5 params and no output schema, the description covers required vs optional params, the one-of rule, and body format options. It doesn't explain return values, but that's acceptable without an output schema. It is sufficiently complete 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.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With schema description coverage at 0%, the description is the sole documentation for parameters. It lists all five parameters with clear meanings and adds the critical mutual-exclusivity constraint. Could be slightly more explicit about valid values for body_representation, but it provides a default and list.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb and resource: 'Create a footer comment on a page or blog post, or reply to an existing comment.' It distinctly differentiates from inline comment tools by specifying 'footer comment' and covers all primary use cases (new comment, reply, blog post/page target).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly instructs to provide exactly one of page_id, blogpost_id, or parent_comment_id, which is key usage guidance. However, it does not explicitly mention alternatives like create_inline_comment or exclude other tools, though the 'footer comment' scope implies it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds useful context about pagination (cursor, limit, default/max) and body_format options, but does not disclose behavior beyond these basics, such as return structure or default ordering. This is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence followed by a compact Args list. Every line adds value: no fluff, information is front-loaded, and parameter explanations are concise and complete.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 6 parameters, no output schema, and no enums, the description covers all parameters meaningfully. It does not explicitly describe the return value, but the 'list' semantics and pagination parameters imply a paginated list of blog posts. Slightly more detail on the response shape would make it fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description fully compensates by explaining each parameter with concrete details: label_id, space_id, body_format allowed values, sort examples, cursor pagination, and limit default/max. This adds strong meaning beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'List blog posts that carry a specific label' with a specific verb and resource, clearly distinguishing it from list_blogposts (all posts) and list_pages_with_label (pages instead of posts). It unambiguously conveys the tool's function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies usage for filtering blog posts by label, but it does not explicitly compare with alternative tools or provide 'when-not-to-use' guidance. The context is clear, but there are no explicit exclusions or alternatives named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate this is a write operation (readOnlyHint=false) and non-destructive. The description adds meaningful context by noting that version_number is 'incremented automatically', suggesting optimistic concurrency behavior. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one clear introductory sentence followed by a structured Args list. Every line serves a purpose with no fluff, making it easy to parse and front-loaded with the primary action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 5 required parameters and no output schema, the description covers the basics but omits potential side effects or behavior on version conflicts. The openWorldHint=true annotation suggests unforeseen effects that are not addressed, leaving some gaps for an update operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description's Args list compensates by explaining each parameter. It clarifies that value is the 'New property value' and version_number is the 'Current version number', adding meaning beyond the schema's bare titles. Some descriptions like 'key: Property key' are tautological but overall helpful.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Update an existing content property on a space', which specifies the verb (update) and resource (content property on a space). It distinguishes from sibling tools like create_space_property, delete_space_property, and get_space_property.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for updating existing properties but does not explicitly state when to use this tool versus alternatives like create_space_property or delete_space_property. No exclusions or alternative recommendations are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate this is a write operation (readOnlyHint=false) but non-destructive (destructiveHint=false) and idempotent. The description adds valuable context beyond these annotations by specifying that the body and version metadata are unchanged. This clarifies the exact scope of the mutation and avoids ambiguity about 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/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, with a single front-loaded sentence stating the core action and scope, followed by a compact argument list. Every word earns its place; there is no fluff or repetition of schema information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter, single-purpose tool, the description is adequately complete. It covers the essential behavioral nuance (preserving body and version metadata) and parameter meanings. Since there is no output schema, not explaining return values is acceptable. The only minor gap is the absence of explicit guidance on when not to use it, but the tool is simple enough that this isn't a critical omission.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has no descriptions for parameters (0% coverage), but the description compensates by providing clear definitions: 'page_id: The ID of the page to rename' and 'title: The new title for the page.' This fully explains both parameters, making their purpose unambiguous despite the sparse schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Rename a page without changing its body or version metadata.' This uses a specific verb (rename) and resource (page), and explicitly distinguishes it from general page updates by scoping it to title changes only. The sibling update_page tool is implicitly contrasted, as this one is specialized for renaming.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for renaming only, but it does not explicitly state when to use it versus alternatives like update_page. It provides clear context ('Rename a page...') but lacks explicit when-not-to-use guidance or named alternatives, which prevents a higher score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover mutation safety (readOnlyHint=false, destructiveHint=false) and idempotency. The description adds useful behavioral details like the allowed status values ('open' or 'complete') and ISO 8601 date format, which go beyond the schema. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single purpose sentence plus a compact argument list. Every line provides necessary information without fluff, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (4 params, no output schema, annotations present), the description covers all parameters and purpose adequately. It does not describe the return value, but for an update operation that is not critical, and the annotations provide safety context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description compensates by explaining each parameter: task_id, status with allowed values, assigned_to as account ID, and due_at as ISO 8601 date. This adds meaning beyond the bare schema titles, though it does not elaborate on null semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description starts with 'Update a task's status, assignee, or due date,' which clearly states the verb, resource, and specific fields. This distinguishes it from sibling tools like get_task or list_tasks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (when updating task fields), but does not explicitly mention alternatives or provide exclusions. There is no reference to sibling tools for other update scenarios, so usage context is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true. The description adds valuable context beyond these: the batch limit ('up to 200') and the return content ('display names and emails'). This enriches the agent's understanding of behavior without contradicting the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-organized: a one-sentence purpose, a usage hint, and an Args block. Every sentence contributes value. It is appropriately sized for a simple tool, though the Args block is minimal and could be formatted more explicitly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, read-only, no output schema), the description covers the core requirements: what it does, when to use it, the parameter format, the size limit, and the expected output fields. It is complete enough for an agent to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema only defines 'account_ids' as an array of strings with no description. Schema description coverage is 0%, so the description must compensate. It does so by explaining the parameter as 'List of Atlassian account IDs to look up (up to 200)', adding meaning about what the IDs are and the maximum count. This is helpful, though it could provide more detail about format or duplicates.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Resolve multiple Atlassian account IDs to user profiles in a single call.' This is a specific verb+resource combination, and it distinguishes itself from all sibling tools, which primarily handle pages, blogposts, spaces, and comments. The purpose is unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: 'Useful when you have a list of assignee/author IDs from tasks or comments and want to retrieve display names and emails in bulk.' This tells the agent when to use the tool, though it does not explicitly mention when not to use it or name alternatives. Since no other sibling handles user lookups, the guidance is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate this is a write operation (readOnlyHint=false, destructiveHint=false). The description adds parameter-level details but does not disclose behavior such as return values, permission requirements, or error handling. With annotations present, the description is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: a one-line summary followed by a clear parameters list. Every sentence provides necessary information, no fluff. The structure is easily scannable for an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters and no output schema, the description covers all parameter semantics and the core purpose. It lacks mention of return values or error edge cases, but for a create operation with visible sibling context, this is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description fully compensates by explaining every parameter: space_id, title, body_value, body_representation (with formats), parent_id (with root omission), and status (with defaults). This goes well beyond the minimal schema labels.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Create a new page in a space', which is a specific verb+resource. This clearly distinguishes the tool from sibling tools like create_blogpost or create_space_property. The parameter list also reinforces the purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use this tool (when creating a page in a space) but does not explicitly mention alternatives or exclusions. It does provide guidance on parameter choices (e.g., body_representation formats, parent_id for root placement), but no direct comparison to other create 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?
Annotations already declare readOnlyHint=true and destructiveHint=false, covering the safety profile. The description adds useful context about body_format and version retrieval but does not describe return structure or potential errors, so it provides moderate additional 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/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise, using a clear Args list with no filler. Every sentence or line adds meaningful information, and the format is easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The core behavior of retrieving a blog post by ID is fully specified, and parameter nuances are documented. However, with no output schema, the description would benefit from stating the return type (e.g., the blog post object), leaving a minor completeness gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but the description fully compensates by explaining the meaning of all three parameters. It defines blogpost_id as the ID, lists valid body_format values, and clarifies version as a historical version number, adding valuable semantics beyond the schema's bare types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific action 'Get' with the resource 'blog post by ID', clearly distinguishing it from sibling tools like list_blogposts or create_blogpost. The purpose is immediately obvious 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/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies usage for retrieving a single blog post by its ID, which provides clear context. However, it does not explicitly mention when to prefer it over alternatives like list_blogposts or get_page, so it does not earn the top score.
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 annotations declaring readOnlyHint=true, destructiveHint=false, and openWorldHint=true, the description's 'Get' aligns with the read-only safety profile. The description does not add significant behavioral detail beyond the one-level-deep scope, such as pagination behavior or error handling, but annotations cover the core safety traits effectively.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is succinct: a single purpose sentence followed by a well-organized Args block. No redundant information; every line adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only paginated list tool with good annotation coverage and a clear purpose, the description covers purpose, parameters, and scope. The lack of an output schema is acceptable as the description need not explain return values. It is complete for the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides no descriptions (0% coverage), but the description includes an Args block defining page_id as 'Parent page ID', cursor as 'Pagination cursor', and limit as 'Max results'. This adds essential meaning to each parameter, going beyond the schema's bare names and types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Get the immediate (one-level-deep) children of a page,' which clearly identifies the action (get), the resource (children of a page), and the scope (immediate/one-level-deep). This effectively distinguishes it from sibling tools like get_page_descendants and get_page_ancestors.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context by specifying 'one-level-deep' children, implying this tool is for direct children only, while deeper hierarchies would need a different tool. However, it does not explicitly mention alternatives or when-not-to-use, so it stops short of full guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and destructiveHint, so the safety profile is known. The description adds useful behavioral context by mentioning pagination via cursor and limit limits (default 25, max 250), which goes 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/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, with a single-sentence purpose followed by a clean parameter list. No unnecessary words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with no output schema, the description covers the purpose and all parameters. While it doesn't describe the response format or provide explicit usage alternatives, the lack of an output schema makes this acceptable and the tool can be invoked correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has zero description coverage (0%), but the description fully compensates by documenting every parameter: space_id, prefix with concrete examples, cursor for pagination, and limit with default/max values. This is exemplary.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' and a clear resource 'labels used on content within a space'. It distinguishes itself from sibling tools like 'list_space_labels' (space-level labels) and 'list_page_labels' (single page labels) by focusing on content-level labels within a space.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool versus alternatives such as list_page_labels or list_space_labels. The scope 'within a space' implies a use case, but no explicit guidance or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotent, non-readOnly, and non-destructive behavior. The description adds key behavioral context by specifying that version_number must be 'current version + 1' and enumerating allowed values for body_representation and status. This goes beyond the schema's plain types and defaults.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a short purpose sentence followed by a concise Args list. Every element is necessary and informative, with no fluff or repetition. The structure is clear and front-loaded with the primary action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity and the available annotations (idempotent, non-destructive), the description covers key usage aspects like required parameters and versioning. However, it omits what the tool returns or any potential error conditions, which the absence of an output schema might otherwise require.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must fully explain each parameter. It does so for all six parameters, clarifying version_number semantics (must be current+1) and providing value options for body_representation and status. This compensates completely 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/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Update an existing blog post' with a specific verb and resource, distinguishing it from sibling tools like create_blogpost and delete_blogpost. The resource is unambiguous and aligned with the tool name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for existing posts via 'Update an existing blog post', but does not explicitly contrast with alternatives such as create_blogpost or update_page. There are no exclusions or when-not-to-use scenarios described, leaving guidance implicit rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and destructiveHint=false. The description adds useful behavioral details: pagination via cursor, filtering by status values (current, archived, trashed, deleted), and sort options. It does not disclose potential rate limits or default ordering, but the annotations reduce the burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The opening sentence is concise and front-loaded, followed by a structured Args block. The parameter explanations are brief but informative. Slightly verbose due to the list of all seven parameters, but each earns its place given the lack of schema descriptions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description provides sufficient context for a read-only list operation: filters, pagination, and sort. However, there is no output schema and the return structure is not described (e.g., whether results include page metadata, total count). Given the tool's simplicity and the presence of pagination info, it is fairly complete but not exhaustive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description fully compensates by explaining every parameter: space_id, title (exact match), status (list of values), ancestor_id, sort (with examples), limit (range 1–250), and cursor ('from a previous response'). This goes well beyond the schema's bare field names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List pages, optionally filtered by space, title, status, or parent' clearly states the verb (list) and resource (pages) and distinguishes from sibling tools like list_pages_in_space by indicating it can filter across spaces. The parameter list further clarifies scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides clear context on what the tool does and the available filters, implying when it would be used (general page listing with optional filters). However, it does not explicitly contrast alternatives like list_pages_in_space or list_pages_with_label, nor does it state 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.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations, the description adds valuable behavioral details: version_number must be current+1, version_message is stored in history, and cross-space moves are not allowed. These go beyond the schema and annotations, though it does not mention potential error responses or the operation's return value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description opens with a concise summary, followed by two focused usage notes and a well-organized Args list. Every sentence provides necessary information without redundancy, making it appropriately sized and easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although the description thoroughly documents inputs, it lacks details about the output (the updated page object) and does not discuss error conditions beyond the version_number constraint. Given the tool's complexity and absence of an output schema, this leaves some gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema itself has no descriptions (0% coverage), but the description's Args section explains all 9 parameters, including defaults, constraints (e.g., version_number must be current+1), and allowed formats (body_representation). This fully compensates for the schema's lack of documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool updates an existing page and enumerates the modifiable attributes (content, title, parent, owner). This distinguishes it from sibling tools like create_page, delete_page, and update_page_title, making its 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 Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear usage context for reparenting (parent_id, same-space only) and ownership transfer (owner_id), including the limitation that cross-space moves are unsupported. However, it does not explicitly mention when to prefer this tool over alternatives like update_page_title.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is known. The description adds useful behavioral details: it returns a 'results list with one entry per resolved page ID' and specifies the parameter limit 'up to 250'. This goes beyond the annotations, though it does not cover all edge cases (e.g., behavior for invalid IDs).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured, with a clear opening sentence followed by an 'Args' section. Every sentence adds value: it states the purpose, describes the return format, and defines the parameters without unnecessary fluff. It earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With only 2 parameters, no output schema, and strong annotations, the description is nearly complete. It clarifies the return type ('results list') and the parameter limits, which are critical for usage. It does not explain error handling or result ordering, but for a simple read-only batch operation, the provided information is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no parameter descriptions (0% coverage), so the description fully compensates. It explains each parameter: 'page_ids: List of page IDs to retrieve (up to 250)' and 'body_format: Body representation — 'storage', 'atlas_doc_format', or 'view''. This provides meaning and allowed values that the schema lacks, making it highly useful for correct invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description states exactly what the tool does: 'Fetch multiple pages by their IDs in a single request.' It uses a specific verb ('Fetch'), names the resource ('pages'), and clearly differentiates from sibling tools like 'get_page' by emphasizing the batch aspect. This makes the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool: when you need multiple pages at once, saving multiple requests. It mentions 'a single request' and a limit of 250, providing clear context. However, it does not explicitly name alternatives or state when not to use it, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explains the effect of key parameters: get_draft returns the draft rather than the published version, and version returns a historical version. It also enumerates body_format options. These behavioral details go beyond the readOnly and openWorld hints provided by annotations, adding useful nuance about what the function returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: a one-sentence purpose followed by a compact Args list where each parameter gets a single, meaningful line. No unnecessary text or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a straightforward read operation with optional parameters that influence output. The description covers all parameter behaviors, which is sufficient for invoking the tool correctly. It doesn't describe the full return structure or error cases, but the absence of an output schema is mitigated by the clear parameter explanations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description fully compensates by explaining each parameter individually. body_format lists the three representation types, get_draft clarifies draft vs published logic, and version indicates historical retrieval. Even page_id is minimally identified as 'Page ID', matching its schema title.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Get a page by ID', which clearly states the action (get), the resource (page), and the scoping key (ID). This distinguishes it from sibling tools like get_page_children or get_page_versions by focusing on the page entity itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool is used when you have a page ID and want the page's content or metadata. It does not explicitly mention when not to use it or name alternatives, but the context is clear enough for a basic retrieval tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint and destructiveHint annotations, the description adds behavioral details such as pagination via cursor, a default limit of 25 and maximum of 250, and accepted label_prefix values. This enriches the agent's understanding of how the tool behaves without contradicting annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact, front-loaded with a one-sentence summary, and then uses a clean Args list. No redundant or filler content is present.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with four optional parameters and no output schema, the description provides sufficient context: purpose, scope, parameter semantics, and pagination behavior. Minor gaps remain around the exact return format and the meaning of 'body representation,' but these are not critical given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has zero description coverage, and the description fully compensates by explaining all four parameters in the Args block: label_prefix, body_format, cursor, and limit, including allowed values and defaults. This adds substantial semantic meaning beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists labels across the entire Confluence instance, using the specific verb 'list' and resource 'labels' with an explicit scope. This distinguishes it from sibling tools like list_page_labels and list_space_labels, which operate on narrower scopes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context that this is an instance-wide label listing, implying it should be used for global label queries rather than page or space-specific ones. However, it does not explicitly name alternative tools or provide when-not-to-use guidance, so it stops short of full differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate this is a write operation (readOnlyHint false) and idempotent. The description adds meaningful behavioral constraints: version_number must be current version + 1, and parent_id is required if the original parent was deleted. This goes 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/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: a one-sentence purpose followed by a clean parameter list. Every sentence adds value with no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers all parameters and discloses key behavioral constraints, but it does not mention return values or error conditions. Given the tool's complexity and the absence of an output schema, it is fairly complete but could go further.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description includes an Args block that explains all six parameters, including the meaning of body_representation and the critical requirement for version_number. This fully compensates for the schema's 0% description coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool restores a trashed page by setting its status back to 'current'. This specific verb+resource distinguishes it from sibling tools like create_page, update_page, and delete_page.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context that this tool is for restoring trashed pages, and adds a condition for parent_id when the original parent was also deleted. It doesn't explicitly contrast with alternatives, but the intended use case is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate mutating, non-destructive, idempotent behavior. The description adds valuable context beyond annotations, notably the version_number must be 'current version + 1' and the body_representation formats. It doesn't mention error conditions or auth, but the added versioning context is meaningful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences plus a concise parameter list. It is front-loaded with the action phrase, and every word contributes to understanding. No fluff or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has moderate complexity with 4 parameters and no output schema. The description covers the action, parameter semantics, and versioning constraints. It doesn't mention return values, but given the mutation nature and annotations, this is not a critical gap. The description is sufficient for an agent to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All four parameters are described in the Args section, providing meaning beyond the schema's raw names. The description explains that version_number must be the next number, and body_representation defaults to 'storage' with wiki and atlas_doc_format options. This fully compensates for the schema's lack of descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Update an existing footer comment' with a specific verb and resource, distinguishing it from create/delete/get via the word 'existing'. Sibling tools like create_footer_comment, delete_footer_comment, and update_inline_comment make the distinction 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/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description conveys clear usage context: use this tool when modifying an existing footer comment. It doesn't explicitly name alternatives or exclusions, but the 'existing' qualifier and sibling tool names imply when this should be used over create/delete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, destructiveHint=false, and idempotentHint=true, so the description needs only add extra behavioral context. It does that by disclosing the optimistic-locking requirement ('version_number must be current version + 1') and explaining how 'resolved' toggles the thread state. This adds meaningful operational insight beyond the annotations, though it omits potential errors or permission prerequisites.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief and efficiently structured: one purpose sentence followed by a compact parameter list. Each line provides necessary information without filler, and the layout makes scanning easy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has five parameters and no output schema, and the description successfully covers all parameter semantics plus the critical versioning rule. However, it does not mention the return value, possible error scenarios, or permission requirements, leaving some contextual gaps for an update operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero descriptions for its five properties, placing the full burden on the description. The description defines every parameter with intended semantics: comment_id, body_value, version_number (with the critical current+1 constraint), body_representation (listing accepted values), and resolved (explaining True/False behavior). This far exceeds the raw schema and clearly guides correct parameter usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Update an inline comment (content or resolved state)' — a specific verb ('update'), clear resource ('inline comment'), and scope. It inherently distinguishes itself from sibling tools like create_inline_comment, delete_inline_comment, and get_inline_comment, so the agent knows exactly when this tool is relevant.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly conveys this tool is for modifying an existing comment's content or resolution state. It does not explicitly state exclusions or alternatives, but the purpose is unambiguous from the summary and the context of sibling tools. The version_number constraint also implies usage requirements, though it does not fully elaborate on when to prefer this over create or delete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate a non-read-only, non-idempotent operation. The description adds the unique key constraint ('must be unique within the space'), which is useful behavioral context not in the annotations. It doesn't fully explain error behavior if the key exists, but the annotations cover the main safety profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, with a one-sentence purpose followed by a clean Args list. No wasted words; every part contributes to understanding the tool's function and parameters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple create operation with only three parameters and no nested structures, the description covers all necessary details: what it creates, each parameter's meaning, and the uniqueness constraint. It is complete for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides no per-parameter descriptions (0% coverage), but the description compensates by fully explaining all three parameters: space_id, key with a uniqueness constraint, and value with allowed types (string, number, dict, or list). This adds significant meaning beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Create a new content property on a space.' This specifies a distinct verb and resource, distinguishing it from sibling tools like create_page_property (which targets pages) and update_space_property (which modifies existing properties).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates this is for creating a new property, which is implied by 'Create a new'. It doesn't explicitly mention when not to use it (e.g., for updating use update_space_property), but the create action is unambiguous and context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, but the description adds valuable context by explaining that deletion moves to trash by default and can be permanently purged with purge=True. This exceeds the annotation baseline by clarifying the destructive behavior and the reversible/irreversible distinction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short, front-loaded sentences plus a compact argument list. Every word earns its place; no fluff or redundancy. The structure is easy to scan and immediately conveys the core behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with two parameters and no output schema, the description is complete. It specifies the default behavior (trash), the purge option, and the required ID. No critical information is missing for an agent to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description carries the full burden. It clearly explains both parameters: blogpost_id is the ID of the post to delete, and purge controls whether deletion is permanent. This adds meaning beyond the schema's bare names and types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Delete' with a clear resource 'blog post', and immediately clarifies the two modes (moves to trash or purges). This distinguishes it from sibling tools like delete_page or delete_comment by explicitly targeting blog posts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context about the tool's use through the resource name and the trash/purge distinction, but does not explicitly name alternatives or state when to use this tool over delete_page. The resource-specific nature implies usage, but no explicit exclusions are given.
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?
Annotations already mark destructiveHint and idempotentHint. The description adds meaningful behavioral context: default trash behavior, the two-step workflow for purging, and the 400 error on invalid purge. This goes well beyond the structured hints and helps the agent predict outcomes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact: three sentences plus a small Args list. Front-loaded with the primary action, then the nuanced purge workflow, with no filler. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive tool with two-step state dependency, the description fully covers behavior, parameters, workflow, and failure modes. With no output schema, it appropriately focuses on inputs and side effects. It is complete and self-sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must fully explain parameters. It does: page_id is 'ID of the page to delete' and purge is explained with its effect and precondition. It even notes the 400 error case, giving the agent the reasoning needed to avoid misuse.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Delete a page (moves to trash by default)', a specific verb+resource statement that clearly distinguishes it from sibling delete tools like delete_blogpost or delete_attachment. It also clarifies the default trash behavior, which adds precision beyond the title.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives explicit guidance for permanent deletion: 'first call delete_page to trash the page, then call delete_page again with purge=True'. It also states the precondition for purge (must already be in trash) and the error condition (400 on current page). It doesn't name alternatives, but for a delete tool with no close resource-overlapping siblings, this is sufficient context.
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
Copy to your README.md:
Score Badge
Copy to your README.md:
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/pascalhubacher/confluence'
If you have feedback or need assistance with the MCP directory API, please join our Discord server