Skip to main content
Glama
anuragagrawal0430

Atlassian Confluence MCP Server

Atlassian Confluence MCP Server

CI npm version npm downloads License: MIT

An open-source Model Context Protocol (MCP) server for Atlassian Confluence that lets AI assistants like Claude and Windsurf read, create, search, and manage Confluence wiki pages. Works with Confluence Cloud, on-premise Server, and Data Center deployments — connect your AI coding agent to your team's knowledge base in seconds via npx.

Why atlassian-confluence-mcp-server?

  • ✅ Only MCP server supporting Cloud + Server + Data Center in one package

  • 47 tools — most comprehensive Confluence MCP available

  • ✅ Zero config via npx — no install needed

  • ✅ PAT, Basic Auth, and API token support

  • ✅ Actively maintained with provenance-signed releases

Related MCP server: finviet-confluence-mcp

Why use this instead of Atlassian's official MCP server?

Feature

This package

Atlassian Official

Confluence Cloud

On-premise Server

Data Center

Zero config via npx

47 tools

~15 tools

Space management (create/delete)

Page copy/move

Watchers

Permissions/restrictions

Task extraction

Export (PDF/Word)

Open source

✅ MIT

Works offline/intranet

Features

  • Space Management — Create, delete, list, and inspect spaces

  • Page CRUD — Create, read, update, delete, copy, and move pages

  • Search — Full CQL and text search, recently modified pages

  • Labels — Add, list, and remove page labels

  • Comments — Read and post page comments

  • Attachments — List and upload page and comment attachments

  • Page Hierarchy — Navigate parent/child relationships

  • Version History — Browse and inspect page versions

  • Watchers — View and manage page watchers

  • Permissions — Get and set page restrictions

  • Tasks — Extract inline tasks from pages

  • Export — Generate PDF/Word export URLs

  • Personal Space — Create pages in your personal space

  • URL Parsing — Retrieve page content from a Confluence URL

Prerequisites

  • Node.js 18+

  • A Confluence instance (Cloud or Server/Data Center 7.9+)

  • Authentication credentials (PAT or username/password)

Installation

Via npx (no install required)

npx atlassian-confluence-mcp-server

Global install

npm install -g atlassian-confluence-mcp-server

From source

git clone https://github.com/anuragagrawal0430/atlassian-confluence-mcp-server.git
cd atlassian-confluence-mcp-server
npm install
npm run build

Configuration

All configuration is passed through environment variables. Never hard-code credentials.

Variable

Required

Description

CONFLUENCE_BASE_URL

Yes

Root URL of your Confluence instance

PAT

See below

API token (Cloud) or Personal Access Token (Server/DC)

CONFLUENCE_USERNAME

Cloud only

Your Atlassian account email

CONFLUENCE_PASSWORD

Alt auth

Password or API token for Basic Auth

CONFLUENCE_READ_ONLY

No

Defaults to true; set to false to allow mutating tools

CONFLUENCE_ENABLE_DESTRUCTIVE_TOOLS

No

Defaults to false; set to true to allow delete/permission mutation tools

CONFLUENCE_ENABLED_TOOLS

No

Optional comma-separated allowlist of tool names to expose

CONFLUENCE_ALLOWED_SPACES

No

Optional comma-separated allowlist of space keys for requests with spaceKey/destinationSpaceKey

CONFLUENCE_ALLOW_INSECURE_HTTP

No

Defaults to false; only allows http:// for localhost/loopback when set to true

CONFLUENCE_MAX_ATTACHMENT_BYTES

No

Client-side max file size for confluence_upload_attachment in bytes (default: 52428800 / 50 MB). Confluence may still enforce a lower instance limit.

CONFLUENCE_UPLOAD_ALLOWED_DIRS

No

Security: Comma-separated allowlist of absolute directory paths from which file uploads are allowed. Empty by default (uploads disabled).

Confluence Cloud

Cloud API tokens are generated from your Atlassian account and require both your email and the token:

CONFLUENCE_BASE_URL=https://your-site.atlassian.net
CONFLUENCE_USERNAME=you@example.com
PAT=your-api-token
  1. Go to https://id.atlassian.com/manage-profile/security/api-tokens

  2. Click Create API token, give it a label, and copy the value

  3. Set CONFLUENCE_USERNAME to your Atlassian account email

  4. Set PAT to the copied API token

Confluence Server / Data Center (7.9+)

Server and Data Center instances use a Personal Access Token with Bearer authentication. Only the token is needed:

CONFLUENCE_BASE_URL=https://confluence.example.com
PAT=your-personal-access-token
  1. Navigate to Profile > Settings > Personal Access Tokens

  2. Create a token with the required permissions

  3. Copy the token value

Basic Authentication (fallback)

For older Server versions without PAT support, use username/password:

CONFLUENCE_BASE_URL=https://confluence.example.com
CONFLUENCE_USERNAME=your-username
CONFLUENCE_PASSWORD=your-password

Security Controls (important)

The server now uses secure defaults to reduce prompt-injection blast radius and credential leakage risk:

  • CONFLUENCE_READ_ONLY=true by default

    • Mutating tools are disabled unless you set CONFLUENCE_READ_ONLY=false.

  • CONFLUENCE_ENABLE_DESTRUCTIVE_TOOLS=false by default

    • confluence_delete_page, confluence_delete_space, and confluence_set_page_permissions remain disabled unless explicitly enabled.

  • CONFLUENCE_ENABLED_TOOLS (optional)

    • Restrict exposure to an explicit tool allowlist.

  • CONFLUENCE_ALLOWED_SPACES (optional)

    • Restrict requests that include spaceKey / destinationSpaceKey to an approved set.

  • CONFLUENCE_ALLOW_INSECURE_HTTP=false by default

    • HTTPS is required unless this is set to true.

    • Even when enabled, insecure HTTP is restricted to localhost/loopback only.

  • CONFLUENCE_MAX_ATTACHMENT_BYTES (optional, default 50 MB)

    • Caps how large a host file confluence_upload_attachment will read before calling Confluence.

    • Independent of the instance "Attachment Maximum Size" admin setting (not exposed via public REST).

  • CONFLUENCE_UPLOAD_ALLOWED_DIRS (optional, defaults to empty)

    • Explicitly restricts which host directories the MCP server is allowed to read files from when uploading attachments.

    • If not configured, file uploads from the host filesystem are entirely disabled.

Example (enable safe writes, keep destructive tools disabled):

CONFLUENCE_READ_ONLY=false
CONFLUENCE_ENABLE_DESTRUCTIVE_TOOLS=false

Example (strict allowlist):

CONFLUENCE_ENABLED_TOOLS=confluence_get_page,confluence_search_pages,confluence_get_page_body_chunk

Example (space-level allowlist):

CONFLUENCE_ALLOWED_SPACES=ENG,SECURITY

MCP Client Configuration

Cloud (npx)

{
  "mcpServers": {
    "confluence": {
      "command": "npx",
      "args": ["-y", "atlassian-confluence-mcp-server"],
      "env": {
        "CONFLUENCE_BASE_URL": "https://your-site.atlassian.net",
        "CONFLUENCE_USERNAME": "you@example.com",
        "PAT": "your-api-token"
      }
    }
  }
}

Server / Data Center (npx)

{
  "mcpServers": {
    "confluence": {
      "command": "npx",
      "args": ["-y", "atlassian-confluence-mcp-server"],
      "env": {
        "CONFLUENCE_BASE_URL": "https://confluence.example.com",
        "PAT": "your-personal-access-token"
      }
    }
  }
}

Global install

{
  "mcpServers": {
    "confluence": {
      "command": "atlassian-confluence-mcp-server",
      "env": {
        "CONFLUENCE_BASE_URL": "https://confluence.example.com",
        "PAT": "your-personal-access-token"
      }
    }
  }
}

From source

{
  "mcpServers": {
    "confluence": {
      "command": "node",
      "args": ["./dist/index.js"],
      "env": {
        "CONFLUENCE_BASE_URL": "https://confluence.example.com",
        "PAT": "your-personal-access-token"
      }
    }
  }
}

Available Tools (47)

Note: tool exposure depends on security configuration. With the default CONFLUENCE_READ_ONLY=true, mutating tools are intentionally hidden/blocked.

Connection

Tool

Description

confluence_test_connection

Test connection to Confluence API

Spaces

Tool

Description

confluence_get_spaces

List all spaces

confluence_get_space

Get space details by key

confluence_get_space_by_key

Alias for get_space

confluence_create_space

Create a new space

confluence_delete_space

Delete a space and all its content

confluence_get_space_homepage

Get the homepage of a space

Pages

Tool

Description

confluence_get_pages

List pages, optionally filtered by space

confluence_get_page

Get page by ID

confluence_get_page_by_title

Get page by title within a space

confluence_create_page

Create a new page

confluence_update_page

Update an existing page

confluence_patch_page

Server-side exact find/replace patch for large pages

confluence_replace_page_range

Replace middle range using offsets or line numbers

confluence_append_to_page

Append or prepend content server-side

confluence_get_page_body_chunk

Read large page body in offset/length chunks

confluence_delete_page

Delete a page

confluence_copy_page

Copy a page, optionally to a different space

confluence_move_page

Move a page to a different parent or space

Tool

Description

confluence_search

Search using CQL

confluence_search_pages

Search pages by text

confluence_get_recently_modified

Get recently modified pages

Labels

Tool

Description

confluence_get_page_labels

Get labels on a page

confluence_add_page_label

Add a label to a page

confluence_delete_page_label

Remove a label from a page

Comments

Tool

Description

confluence_get_page_comments

Get comments on a page

confluence_add_page_comment

Add a comment to a page

Attachments

Tool

Description

confluence_get_page_attachments

List attachments on a page

confluence_get_comment_attachments

List attachments on a comment

confluence_upload_attachment

Upload/upsert a local file as a page or comment attachment

Page Hierarchy

Tool

Description

confluence_get_child_pages

Get child pages of a parent

confluence_get_page_ancestors

Get ancestor pages

Version History

Tool

Description

confluence_get_page_versions

Get page version history

confluence_get_page_version

Get a specific page version

Properties

Tool

Description

confluence_get_page_properties

Get content properties of a page

User

Tool

Description

confluence_get_current_user

Get current authenticated user

Watchers

Tool

Description

confluence_get_page_watchers

Get users watching a page

confluence_watch_page

Add current user as a watcher

confluence_unwatch_page

Remove current user as a watcher

Permissions

Tool

Description

confluence_get_page_permissions

Get page restrictions/permissions

confluence_set_page_permissions

Set page restrictions/permissions

Tasks

Tool

Description

confluence_get_page_tasks

Extract inline tasks from a page

Export

Tool

Description

confluence_export_page

Get export URL for a page (PDF or Word)

Utilities

Tool

Description

confluence_get_page_by_url

Get page from a Confluence URL

Personal Space

Tool

Description

confluence_get_personal_space_key

Get current user's personal space key

confluence_create_page_in_personal_space

Create page in personal space

confluence_create_private_space

Create a private space

Resources

URI

Description

confluence://spaces

List of all Confluence spaces

Example CQL Queries

# Pages in a specific space
type=page AND space=TEAM

# Pages with a label
type=page AND label=documentation

# Recently modified pages
type=page AND lastModified > now("-7d")

# Title search
type=page AND title~"Meeting Notes"

# Pages created by current user
type=page AND creator=currentUser()

Page Body Format

Pages use Confluence storage format (XHTML):

<p>This is a paragraph.</p>
<h1>Heading 1</h1>
<ul>
  <li>Item 1</li>
  <li>Item 2</li>
</ul>
<ac:structured-macro ac:name="code">
  <ac:parameter ac:name="language">javascript</ac:parameter>
  <ac:plain-text-body><![CDATA[console.log("Hello");]]></ac:plain-text-body>
</ac:structured-macro>

Editing Very Large Pages

When a page body is very large (for example hundreds of KB), avoid sending the full body through confluence_update_page.

Recommended workflow:

  1. Use confluence_get_page_body_chunk to inspect the relevant part of the page.

  2. Use one of:

    • confluence_patch_page for exact find/replace edits.

    • confluence_replace_page_range for replacing a specific middle range.

    • confluence_append_to_page for incremental append/prepend updates.

Notes:

  • Offset-based range replacement is the most reliable mode for storage XHTML.

  • Line-based replacement requires actual newline characters in the stored body.

  • These tools still perform a full Confluence update under the hood, but the full body remains server-side.

Security

  • Credentials are read exclusively from environment variables — never hard-coded.

  • Input validation — all user-supplied parameters are validated and sanitized before use.

  • CQL injection prevention — user input interpolated into CQL queries is escaped.

  • URL path encoding — all dynamic path segments are encoded with encodeURIComponent.

  • Request timeouts — all HTTP requests have a 30-second timeout to prevent hanging.

  • Error sanitization — API error responses are truncated and stripped of HTML before surfacing.

  • Pagination limits — query limits are clamped to a safe maximum (100) to prevent abuse.

Contributing

Please see CONTRIBUTING.md for guidelines on how to contribute to this project.

Security Policy

For security policies and vulnerability reporting, see SECURITY.md.

Changelog

See CHANGELOG.md for a history of changes.

License

MIT

Acknowledgments

Available Tools

28 tools
confluence_export_pageA
Read-onlyIdempotent

Get export URL for a page (PDF or Word)

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNoExport format (default: pdf)
pageIdYesThe page ID to export

TDQS

A4/5.0
Behavior4/5

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

The description clarifies that the tool returns an export URL rather than the file itself, adding transparency beyond the annotations. However, it does not mention potential side effects or limitations, though annotations already indicate read-only and idempotent behavior.

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

Conciseness5/5

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

The description is a single, concise sentence that directly conveys the core functionality without unnecessary detail. It avoids fluff and is well-structured for quick comprehension.

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

Completeness4/5

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

Given there is no output schema, the description sufficiently indicates the result (an export URL). It does not elaborate on error handling or response format, but for a straightforward export tool, this is adequate. Slightly more detail could improve completeness.

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

Parameters3/5

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

The schema already provides clear descriptions for both parameters (pageId and format) with an enum for format and a default. The description adds minimal extra meaning beyond restating the format options. Coverage is high, so a baseline score is appropriate.

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

Purpose5/5

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

The description clearly states the tool's function: obtaining an export URL for a page in PDF or Word format. This distinguishes it from sibling tools that retrieve page content, properties, or other data, 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 Guidelines3/5

Does 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 instead of others, such as when a user needs to download a page as a document. It implies this by mentioning export, but lacks direct guidance on appropriate use cases or exclusions.

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

confluence_get_child_pagesA
Read-onlyIdempotent

Get child pages of a parent page

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of results (default: 25)
parentIdYesThe parent page ID

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, informing the agent of safe behavior. The description adds no extra context about pagination, result ordering, or how 'child pages' are structured (e.g., immediate children only vs. recursive). This is adequate but not enhanced.

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

Conciseness4/5

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

The description is a single, efficient sentence. It is front-loaded with the core purpose. Could include more useful info without sacrificing conciseness.

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

Completeness4/5

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

Given the simple purpose, annotations, and full schema coverage, the description covers the essentials. There is no output schema, so return value explanation is absent, but not critical for a straightforward retrieval. Overall, it is relatively complete.

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

Parameters3/5

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

Schema coverage is 100%: both parameters have descriptions in the schema (parentId and limit). The description adds no additional meaning beyond the schema, so baseline of 3 is appropriate.

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

Purpose5/5

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

The description 'Get child pages of a parent page' clearly states the verb 'get', the resource 'child pages', and the context 'of a parent page'. It distinguishes this tool from siblings like 'confluence_get_page' (single page) and 'confluence_get_page_ancestors' (ancestors).

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives, such as searching or getting a single page. There are no exclusions or prerequisites mentioned.

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

confluence_get_comment_attachmentsB
Read-onlyIdempotent

Get attachments on a comment

ParametersJSON Schema
NameRequiredDescriptionDefault
commentIdYesThe comment ID

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint and idempotentHint; description adds no behavioral context (e.g., return format, empty list handling, existence checks).

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

Conciseness4/5

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

Single sentence, no filler. Could benefit from more detail but is appropriately concise for a simple tool.

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

Completeness3/5

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

Lacks output schema and description of return structure (e.g., list format, pagination). With only one param and no output schema, more context would help.

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

Parameters3/5

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

Schema coverage is 100% with commentId described. Description does not add extra meaning beyond the schema.

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

Purpose5/5

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

The description 'Get attachments on a comment' clearly states the verb and resource, and distinguishes from sibling tools like get_page or get_page_labels.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus siblings (e.g., get_page for page content). No when-not or alternative recommendations.

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

confluence_get_current_userA
Read-onlyIdempotent

Get the current authenticated user

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already provide readOnlyHint, idempotentHint, etc. Description adds that it returns the current authenticated user, which is valuable 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.

Conciseness5/5

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

Exceptionally concise single phrase with no wasted words, appropriate for a simple tool.

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

Completeness4/5

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

Given no parameters and annotations, the description is mostly complete. However, it does not specify what user data is returned (e.g., ID, name), which is a minor gap.

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

Parameters4/5

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

No parameters exist, so schema coverage is 100%. Description adds meaning by specifying 'current authenticated user'.

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

Purpose5/5

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

Description clearly states 'Get the current authenticated user', which is a specific verb and resource. It distinguishes from sibling tools that operate on pages, spaces, etc.

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

Usage Guidelines4/5

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

No explicit when-to-use or alternatives, but the tool's purpose is straightforward and siblings are about different resources, making usage implicit.

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

confluence_get_pageA
Read-onlyIdempotent

Get a specific page by ID (for very large pages, prefer confluence_get_page_body_chunk)

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesThe page ID
includeBodyNoInclude page body content (default: true)

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already cover readOnly, idempotent, openWorld. Description adds large page caveat but no further behavioral details like return type or limitations beyond that.

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

Conciseness5/5

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

Single sentence, front-loaded with purpose, efficient and no fluff.

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

Completeness3/5

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

No output schema and description omits return info. Adequate for simple tool but could mention what is returned. Sibling differentiation is partially covered.

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

Parameters3/5

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

Schema coverage 100% with clear parameter descriptions. Description adds no extra meaning beyond what schema provides.

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

Purpose5/5

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

Clear verb+resource: 'Get a specific page by ID'. Distinguishes from sibling by mentioning alternative for large pages.

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

Usage Guidelines5/5

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

Explicit guidance on when to use alternative: 'for very large pages, prefer confluence_get_page_body_chunk'.

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

confluence_get_page_ancestorsB
Read-onlyIdempotent

Get ancestor pages of a page

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesThe page ID

TDQS

B3/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint. The description adds no extra behavioral context, such as whether ancestors are returned in a specific order or if the page itself is included.

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

Conciseness3/5

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

The description is a single sentence with no waste, but it is too minimal; it could be improved by adding structure or slightly more detail without becoming verbose.

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

Completeness2/5

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

Given the presence of many sibling getter tools, the description is incomplete. It does not explain what ancestor pages are in the Confluence context or clarify the return format, leaving gaps for the agent.

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

Parameters3/5

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

Schema coverage is 100%, with pageId already described as 'The page ID'. The description does not add any additional meaning or context for the parameter, so it earns the baseline score of 3.

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

Purpose5/5

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

The description clearly states the action ('Get') and resource ('ancestor pages of a page'), distinguishing it from sibling tools like confluence_get_child_pages and confluence_get_page.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives such as confluence_get_child_pages or confluence_get_page, nor does it mention any prerequisites or typical use cases.

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

confluence_get_page_attachmentsB
Read-onlyIdempotent

Get attachments on a page

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesThe page ID

TDQS

B3.4/5.0
Behavior2/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 provide (read-only, idempotent, open-world). It does not disclose return format, pagination behavior, or any side effects, though annotations cover the basic safety profile. No additional behavioral traits are revealed.

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

Conciseness5/5

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

The description is a single, concise sentence of six words. It is front-loaded with the verb and resource, immediately conveying the core functionality without any unnecessary words.

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

Completeness4/5

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

For a simple read-only getter with one parameter and strong annotations, the description is adequately complete. It does not mention return types or limitations, but given the tool's simplicity and the safety annotations, it provides a solid baseline. A brief note about the response format could push it to a 5.

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

Parameters3/5

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

Schema coverage is 100% with the 'pageId' parameter documented as 'The page ID'. The description's phrase 'on a page' reinforces that the parameter refers to the parent page, but this is already evident from the parameter name and schema. No additional nuance is added.

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

Purpose5/5

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

The description 'Get attachments on a page' uses a specific verb and resource, clearly indicating it retrieves attachments belonging to a page. This differentiates it from sibling tools like 'get_comment_attachments' and 'get_page_comments' by explicitly scoping to page-level attachments.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives, nor does it mention any exclusions or prerequisites. There is no mention of when this tool would be preferred over similar tools like 'get_page' or 'get_page_properties'. No contextual guidance is offered.

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

confluence_get_page_body_chunkA
Read-onlyIdempotent

Read a page body in chunks by character offset/length (useful for very large pages)

ParametersJSON Schema
NameRequiredDescriptionDefault
lengthNoRequested chunk length (default: 50000, max: 100000)
offsetNoStart character offset (default: 0)
pageIdYesThe page ID

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already provide read-only, idempotent, and non-destructive hints. The description adds no additional behavioral context (e.g., rate limits, auth), but since the operation is read-only and simple, the annotations suffice. 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/5

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

The description is a single, concise sentence that efficiently conveys the tool's function and typical use case without unnecessary detail.

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

Completeness4/5

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

For a simple read operation, the description is adequate. It does not specify output format or error behavior, but these are not critical given the tool's straightforward nature and lack of an output schema.

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

Parameters3/5

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

The schema descriptions are minimal (e.g., 'The page ID', 'Start character offset'), but the tool description clarifies that offsets and lengths are in characters. It does not elaborate on defaults, maximums, or units beyond that, leaving some room for ambiguity.

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

Purpose5/5

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

The description clearly states the tool reads a page body in chunks by character offset/length, and adds a use case ('useful for very large pages'). It distinguishes from siblings like confluence_get_page which likely returns the full 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/5

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

The description indicates when to use this tool ('useful for very large pages'), implying it is an alternative to reading the entire page at once. It does not explicitly contrast with other tools, but the use-case guidance is clear enough.

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

confluence_get_page_by_titleA
Read-onlyIdempotent

Get a page by its title within a space

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesThe page title
spaceKeyYesThe space key (e.g., "DEV", "TEAM")

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already cover safety (readOnlyHint, idempotentHint, destructiveHint false). The description adds no additional behavioral context, such as what happens if the title doesn't exist or if multiple pages have the same title. It is adequate but does not 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/5

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

The description is a single, 10-word sentence that is front-loaded and contains zero extraneous words. Every word earns its place.

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

Completeness4/5

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

Given simple parameters, no output schema, and comprehensive annotations, the description is mostly complete. However, it does not address potential duplicate titles or specify that it returns a single page. Minor gap.

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

Parameters3/5

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

Schema description coverage is 100% with clear parameter descriptions. The description does not add meaning beyond what the schema provides. Baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly states the action (get), resource (page), and criteria (by title within a space). It differentiates from sibling tools like confluence_get_page and confluence_get_page_by_url by specifying title-based lookup.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It does not mention when to prefer this over confluence_get_page or confluence_get_page_by_url, nor does it note any prerequisites or restrictions.

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

confluence_get_page_by_urlA
Read-onlyIdempotent

Get a page by its Confluence URL (e.g., https://confluence.example.com/display/SPACE/Page+Title or ?pageId=12345)

ParametersJSON Schema
NameRequiredDescriptionDefault
pageUrlYesThe full Confluence page URL

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description does not add behavioral context beyond that (e.g., any rate limits, authorization needs). It is adequate but does not exceed what annotations provide.

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

Conciseness5/5

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

The description is a single sentence with two examples. Every word serves a purpose; there is no redundancy or filler.

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

Completeness5/5

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

For a simple, read-only tool with one parameter and no output schema, the description fully explains the tool's purpose and input format. No missing information.

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

Parameters4/5

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

The schema describes 'pageUrl' as 'The full Confluence page URL'. The description adds value by illustrating two example URL formats (display path and ?pageId=12345), which helps the agent understand acceptable inputs beyond the generic schema description. Schema coverage is 100%.

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

Purpose5/5

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

The description clearly states the action (Get) and resource (a page) with the method (by its Confluence URL), and provides concrete URL examples. This distinguishes it from sibling tools like 'confluence_get_page' (by ID) and 'confluence_get_page_by_title'.

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

Usage Guidelines3/5

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

The description implies usage when you have a Confluence URL, but it does not explicitly discuss when to prefer this over alternative tools (e.g., using page ID or title) or any prerequisites. The sibling list exists but is not referenced.

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

confluence_get_page_commentsB
Read-onlyIdempotent

Get comments on a page

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesThe page ID

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, which cover safety. However, the description adds no extra behavioral context (e.g., pagination, ordering, performance, or authentication needs) beyond what annotations provide.

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

Conciseness5/5

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

The description is a single, front-loaded phrase with no wasted words. It fully conveys the tool's purpose in five words.

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

Completeness4/5

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

For a simple read-only tool with one parameter and no output schema, the description is adequate. While it does not mention potential details like pagination or return format, the simplicity of the tool and strong annotations make it complete enough for an agent to use correctly.

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

Parameters3/5

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

Schema coverage is 100% with 'pageId' described as 'The page ID'. The description does not add any additional meaning beyond the schema, so a baseline score of 3 is appropriate.

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

Purpose4/5

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

The description 'Get comments on a page' uses a specific verb and resource, clearly indicating retrieval of comments for a given page. It is distinct from sibling tools like 'confluence_get_comment_attachments' or 'confluence_get_page' though it does not explicitly name alternatives.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives, nor does it mention any prerequisites, constraints, or exclusion criteria. It is a bare statement of function.

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

confluence_get_page_labelsA
Read-onlyIdempotent

Get labels attached to a page

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesThe page ID

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint false, so the safety profile is clear. The description adds no further behavioral context (e.g., pagination, authentication). With rich annotations, the baseline is 3.

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

Conciseness5/5

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

The description is a single, concise sentence that efficiently conveys the tool's purpose with no unnecessary words.

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

Completeness4/5

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

For a simple tool with one parameter and no output schema, the description is adequate. It doesn't explain the return format, but given the tool's straightforward nature, this is acceptable. Slightly more detail about the output could improve completeness.

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

Parameters3/5

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

Schema coverage is 100%, and the schema already describes 'pageId' as 'The page ID'. The description adds no additional meaning or constraints beyond what the schema provides, so baseline 3 applies.

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

Purpose5/5

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

The description clearly states the verb 'Get' and the resource 'labels attached to a page'. This is specific and distinguishes it from sibling tools that focus on different resources (e.g., children, comments, properties).

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool over alternatives. No mention of prerequisites, limitations, or when not to use it. The sibling tools list is not leveraged for differentiation.

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

confluence_get_page_permissionsB
Read-onlyIdempotent

Get page restrictions/permissions

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesThe page ID

TDQS

B3.3/5.0
Behavior2/5

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

Annotations already declare this as read-only, idempotent, open-world, and non-destructive, so the description need not restate those traits. However, it adds no behavioral context beyond the tool's basic purpose—such as what specifically gets returned, how restrictions are represented, or any auth considerations.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no filler or redundant information. Every word contributes to conveying the operation and target resource.

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

Completeness3/5

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

The tool is simple (one parameter) and benefits from strong annotations and full schema coverage. However, with no output schema, the vague phrase 'restrictions/permissions' leaves uncertainty about what the response contains and whether both concepts are returned together.

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

Parameters3/5

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

The input schema fully documents the single `pageId` parameter, so the description does not need to repeat it. With 100% schema description coverage, the baseline of 3 is appropriate; the description adds no extra meaning about parameter formatting or expected values.

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

Purpose5/5

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

The description uses a specific verb ('Get') with a clear resource ('page restrictions/permissions'), immediately distinguishing it from sibling tools that retrieve page content, labels, comments, or metadata. It is unambiguous even without listing alternatives.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus other page-related getters such as confluence_get_page, confluence_get_page_properties, or confluence_get_page_labels. The intended use case is implied only by the tool name, not explicitly stated.

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

confluence_get_page_propertiesA
Read-onlyIdempotent

Get content properties of a page

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesThe page ID

TDQS

A3.5/5.0
Behavior3/5

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

The description adds no behavioral information beyond what annotations already provide (readOnlyHint, idempotentHint, etc.). It does not contradict annotations, so a baseline score is appropriate, but the description could mention response formatting or limitations.

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

Conciseness5/5

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

The description is a single, concise sentence that directly conveys the tool's purpose. Every word is useful, and there is no unnecessary information.

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

Completeness3/5

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

Given the tool's simplicity (one parameter, no output schema) and strong annotations, the description is minimally complete. However, it fails to describe what 'content properties' entails or the return format, which would help an agent anticipate the output.

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

Parameters3/5

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

With 100% schema coverage, the schema already documents the single parameter (pageId) sufficiently. The description does not add any extra meaning or format details beyond 'the page ID', so the baseline score of 3 is correct.

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

Purpose5/5

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

The description clearly states the action ('Get') and the resource ('content properties of a page'). It effectively distinguishes the tool from siblings like 'confluence_get_page' or 'confluence_get_page_labels' by specifying the exact type of data retrieved.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives, nor are prerequisites or context described. The description merely states the function without any when-to-use or when-not-to-use hints.

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

confluence_get_pagesA
Read-onlyIdempotent

List pages, optionally filtered by space

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of pages to return (default: 25)
startNoStarting index for pagination (default: 0)
spaceKeyNoFilter pages by space key (e.g., "DEV", "HR")

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, covering the safety profile. The description adds the behavioral detail of an optional space filter, but does not mention return format or pagination behavior; nevertheless, with annotations present, this is adequate.

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

Conciseness5/5

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

At seven words, the description is extremely concise and front-loaded with the primary action ('List pages'). Every word adds meaning; there is no wasted text.

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

Completeness4/5

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

The tool is simple with three documented optional parameters and strong safety annotations. The description is largely sufficient but lacks an explicit alternative reference to search_pages or a note about the scope when no spaceKey is provided, leaving a small gap in differentiation.

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

Parameters3/5

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

Schema has 100% parameter coverage with descriptions for limit, start, and spaceKey. The description's mention of 'filtered by space' merely restates the spaceKey property without adding new semantics, so the baseline of 3 applies.

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

Purpose5/5

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

The description uses the specific verb 'List' with the resource 'pages' and notes an optional space filter, clearly distinguishing it from sibling tools like search_pages, get_page_by_title, or get_page. It states exactly what the tool does in one concise phrase.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It does not mention search_pages for text-based search or get_page for retrieving a single page, so an agent receives no explicit when-to-use or when-not-to-use context.

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

confluence_get_page_tasksB
Read-onlyIdempotent

Get inline tasks from a page

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesThe page ID

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare read-only and non-destructive behavior. The description adds no additional behavioral context, such as permissions, side effects, or output format, so it contributes nothing 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.

Conciseness5/5

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

The description is a single, straightforward sentence with no redundancies or extraneous details. It is optimally concise for a simple read operation.

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

Completeness3/5

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

The description adequately conveys the basic purpose but omits details about the return format or any potential limitations (e.g., pagination, scope of 'inline tasks'). Given the absence of an output schema, some additional context about expected results would be helpful, though the simplicity of the operation keeps this from being a major gap.

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

Parameters2/5

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

The sole parameter pageId is described only as 'The page ID' in the schema, which is minimal. The tool description adds no further clarification about what constitutes a valid ID or any additional constraints, so it fails to enrich parameter meaning beyond the schema's bare definition.

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

Purpose5/5

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

The description clearly states the action (get) and the resource (inline tasks from a page), which distinguishes it from other get_* tools that retrieve different resources like comments or attachments.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool instead of alternatives. It simply states what it does without any contextual hints or exclusions relative to sibling tools.

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

confluence_get_page_versionA
Read-onlyIdempotent

Get a specific version of a page

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesThe page ID
versionNumberYesThe version number

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds no behavioral context beyond the annotations, which is adequate but does not disclose what the tool returns (e.g., page content, metadata).

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

Conciseness5/5

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

A single sentence of 6 words, front-loaded and free of extraneous content. Every word earns its place.

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

Completeness3/5

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

Given the simple input (2 params) and full annotations, the description is minimally adequate. However, lack of output schema and absence of any hint about what the tool returns (e.g., content, author, date) reduces completeness.

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

Parameters3/5

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

Schema coverage is 100% with descriptions for both parameters ('The page ID' and 'The version number'), so baseline is 3. The description adds no further parameter details.

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

Purpose5/5

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

The description 'Get a specific version of a page' clearly states the verb (Get) and the resource (specific version of a page), distinguishing it from sibling tools like 'confluence_get_page' (latest page) and 'confluence_get_page_versions' (list all versions).

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

Usage Guidelines3/5

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

The description implies when to use (retrieve a particular version by version number) but does not explicitly mention when not to use it or suggest alternatives like 'confluence_get_page_versions' for listing versions.

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

confluence_get_page_versionsC
Read-onlyIdempotent

Get version history of a page

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of versions to return (default: 25)
pageIdYesThe page ID

TDQS

C2.9/5.0
Behavior2/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 provide. While annotations correctly mark the tool as read-only, the description omits details about pagination, version ordering, or what constitutes a 'version', leaving the agent to guess the exact behavior.

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

Conciseness4/5

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

The description is extremely concise with a single clear sentence. It is front-loaded with the key action and resource. However, it is so minimal that it sacrifices detail, which might hinder an agent's understanding, but it does not contain any wasted words.

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

Completeness2/5

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

Although the tool is simple and has no output schema, the description fails to explain what 'version history' includes (e.g., version numbers, dates, authors). The agent has no information about the return format, which is essential for correct invocation and interpretation.

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

Parameters3/5

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

Schema coverage is 100%, so the baseline is 3. The description does not provide any additional meaning for the parameters beyond the schema, which already adequately describes 'pageId' and 'limit'.

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

Purpose4/5

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

The description clearly states the verb 'Get' and the resource 'version history of a page', making the tool's purpose unambiguous. However, it does not explicitly differentiate from the sibling tool 'confluence_get_page_version', which could cause confusion for an AI agent selecting between them.

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

Usage Guidelines2/5

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

No usage guidelines are provided. The description does not indicate when to use this tool vs. alternatives, nor does it mention any prerequisites or context for invocation.

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

confluence_get_page_watchersB
Read-onlyIdempotent

Get users watching a page

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesThe page ID

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, covering safety and idempotency. The description adds no behavioral details beyond the basic read operation, but with annotations covering the main concerns, a 3 is appropriate since it does not contradict 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/5

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

The description is short, single-sentence, and front-loaded with the action. It is concise and to the point, though it could be slightly more descriptive without adding unnecessary length.

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

Completeness3/5

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

The tool is simple with one parameter and high schema coverage. The description is adequate for a read-only operation, but it could be more complete by mentioning what the output might look like (e.g., list of user objects) or any limitations. Given no output schema, a bit more detail would help.

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

Parameters3/5

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

Schema description coverage is 100% (the only parameter 'pageId' is described as 'The page ID'), so the baseline is 3. The description adds no additional parameter details, but given the schema fully documents the parameter, this is sufficient.

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

Purpose4/5

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

The description states the action ('Get users') and the resource ('watching a page') clearly. It is distinct from sibling tools like get_page_labels or get_page_comments, so it scores a 4, though it could be more specific about whether it returns watchers for a given page 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/5

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

The context is clear: it is for retrieving watchers for a specific page, and the pageId parameter is required. However, there is no explicit guidance on when to use this tool versus alternatives or any prerequisites (e.g., need page ID obtained from another tool).

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

confluence_get_personal_space_keyA
Read-onlyIdempotent

Get the personal space key for the current authenticated user

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the tool's behavior is safe. The description adds that it retrieves the key for the current user, which provides context beyond annotations. No contradictions.

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

Conciseness5/5

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

Single sentence that conveys all necessary information without any extraneous words. Highly efficient.

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

Completeness5/5

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

Given the simple nature (zero parameters, clear return value stated), the description is fully complete. Annotations cover safety, and the description explains what is returned, compensating for the lack of output schema.

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

Parameters4/5

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

The tool has zero parameters, so schema covers all. The description does not need to add parameter details; a baseline of 4 is appropriate for no-parameter tools.

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

Purpose5/5

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

The description clearly states the action (get), the resource (personal space key), and the context (for the current authenticated user). It distinguishes from sibling tools like confluence_get_space_key which target different spaces.

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

Usage Guidelines3/5

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

No explicit guidance on when to use this tool vs alternatives such as confluence_get_space_by_key or confluence_get_space. Usage is implied by the tool's name and description, but no direct comparisons or exclusions are provided.

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

confluence_get_recently_modifiedB
Read-onlyIdempotent

Get recently modified pages

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of results (default: 25)
spaceKeyNoOptional space key to filter by

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare this as read-only, open-world, and idempotent, so the safety profile is covered. The description adds the 'recently modified' temporal scoping but does not disclose ordering, date-window behavior, or whether results are metadata-only or include content. This is acceptable but limited beyond what annotations provide.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no filler or redundant content. It efficiently communicates the core function in five words.

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

Completeness3/5

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

For a simple read-only list tool with well-documented parameters and strong annotations, the description is minimally sufficient. However, it lacks guidance on result ordering, default limits beyond schema, and how 'recently modified' is defined, and there is no output schema to compensate. This leaves noticeable gaps for an agent deciding between similar list/search tools.

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

Parameters3/5

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

The input schema has 100% description coverage for both parameters, with clear descriptions for 'limit' and 'spaceKey'. The tool description does not add additional parameter context, but it does not need to because the schema already fully documents the parameters.

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

Purpose4/5

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

The description clearly identifies the action ('get') and the resource ('recently modified pages'), which distinguishes it from generic page retrieval tools like 'confluence_get_pages'. It is more specific than a bare title, but it does not explicitly explain how this differs from sibling search or list tools.

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

Usage Guidelines2/5

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

The description provides no guidance on when to choose this tool over alternatives such as 'confluence_get_pages', 'confluence_search_pages', or 'confluence_get_page'. There is no mention of prerequisites, preferred cases, or exclusions, so the agent must rely on the tool name and schema alone.

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

confluence_get_spaceB
Read-onlyIdempotent

Get details of a specific space by key

ParametersJSON Schema
NameRequiredDescriptionDefault
spaceKeyYesThe space key (e.g., "DEV", "TEAM")

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description is consistent but adds no new behavioral context (e.g., permissions, rate limits, or what 'details' includes). Adequate given 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/5

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

Single sentence that is concise and front-loaded. No wasted words, though could be slightly more informative about returned data.

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

Completeness3/5

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

For a simple read tool with one parameter and annotations, the description is minimally complete. However, it does not describe the return value or any constraints, which would be helpful given no output schema.

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

Parameters3/5

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

The schema provides 100% coverage for the single parameter spaceKey with an example. The description does not add any extra semantics beyond the schema.

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

Purpose4/5

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

Description clearly states the tool gets details of a specific space by key, but there is a sibling tool with very similar name (confluence_get_space_by_key) that likely performs the same function, and the description does not differentiate them.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus siblings like confluence_get_space_by_key, confluence_get_spaces, or confluence_get_space_homepage. The agent is left without context for selection.

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

confluence_get_space_by_keyB
Read-onlyIdempotent

Get details of a specific space by key

ParametersJSON Schema
NameRequiredDescriptionDefault
spaceKeyYesThe space key (e.g., "DEV", "HR")

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, destructiveHint; description adds no new behavioral context beyond stating it's a get operation.

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

Conciseness5/5

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

Single sentence, front-loaded with the key action and resource, no wasted words.

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

Completeness3/5

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

Adequate for a simple get-by-key operation with comprehensive annotations, but lacks any detail about what 'details' are returned, especially without an output schema.

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

Parameters3/5

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

Schema coverage is 100% with a single parameter that has a description of the expected format; the tool description does not add any additional parameter semantics beyond the schema.

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

Purpose4/5

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

Description clearly states it gets space details by key, but does not differentiate from sibling tools like 'confluence_get_space' or 'confluence_get_spaces' which may have overlapping functionality.

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

Usage Guidelines2/5

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

No usage context provided: does not specify when to use this tool versus alternatives, nor any prerequisites or limitations.

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

confluence_get_space_homepageA
Read-onlyIdempotent

Get the homepage of a space

ParametersJSON Schema
NameRequiredDescriptionDefault
spaceKeyYesThe space key

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, covering key behavioral traits. The description adds no new behavioral insights (e.g., return format, error conditions), but it does not contradict 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/5

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

The description is a single, concise sentence with no unnecessary words. It is front-loaded and efficient, meeting the tool's purpose without elaboration.

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

Completeness4/5

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

For a simple one-parameter, read-only tool with comprehensive annotations, the description is adequate. It could optionally specify that the homepage is the space's root page, but the current completeness is sufficient given the annotations and schema.

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

Parameters3/5

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

The input schema has 100% description coverage for the single parameter 'spaceKey' (described as 'The space key'). The tool description adds no additional meaning beyond the schema, so a baseline score of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the tool retrieves the homepage of a Confluence space, using a specific verb and resource. Among sibling tools like 'confluence_get_space' (gets space metadata) and 'confluence_get_page' (gets a specific page), this tool uniquely targets the space's homepage, providing clear differentiation.

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

Usage Guidelines2/5

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

The description offers no guidance on when to use this tool versus alternatives (e.g., when you need the space's root page). It does not mention prerequisites, context, or exclusions, leaving the agent to infer usage solely from the name.

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

confluence_get_spacesC
Read-onlyIdempotent

List all spaces in Confluence

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of spaces to return (default: 25)
startNoStarting index for pagination (default: 0)

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, so the description need not reiterate. The description adds no additional behavioral context, such as pagination behavior or authentication needs. A 3 is appropriate as annotations cover the base 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.

Conciseness2/5

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

The description is a single sentence of 4 words, which is under-specified. It omits critical context like pagination and return format, making it too concise to be fully useful.

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

Completeness2/5

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

Given no output schema and pagination parameters, the description should explain what the tool returns and how pagination works. It fails to do so. The sibling context is rich, but the description does not help the agent differentiate.

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

Parameters3/5

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

Schema coverage is 100%; both 'limit' and 'start' have descriptions in the schema. The tool description adds no further parameter information. Baseline 3 is correct.

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

Purpose4/5

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

The description clearly states the tool lists spaces, using a specific verb and resource. It distinguishes from sibling tools like 'confluence_get_space' and 'confluence_get_space_by_key' which target individual spaces. However, the phrasing 'List all spaces' is slightly misleading due to pagination limits.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. It does not mention that for a single space, 'confluence_get_space' or 'confluence_get_space_by_key' should be used. No prerequisites or context are provided.

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

confluence_search_pagesB
Read-onlyIdempotent

Search for pages by text content

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of results (default: 25)
queryYesText to search for
spaceKeyNoOptional space key to limit search

TDQS

B3.2/5.0
Behavior3/5

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

The annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is well-established. The description adds no additional behavioral context beyond the annotations and the schema, but it doesn't contradict the annotations either. Since the annotations carry the burden and the description is consistent (if uninformative), a 3 is fair.

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

Conciseness4/5

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

The description is a single sentence with zero fluff—every word serves a purpose. It front-loads the core action clearly. While it could be more informative, as a concise statement it is well-structured. The format is efficient, though slightly under-specified.

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

Completeness3/5

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

Given the tool has no output schema, some clarity on return values would be beneficial (e.g., what fields are returned by default, whether results include content snippets or just titles). For a 3-parameter search tool with solid annotations and schema coverage, the description is almost sufficient, but the lack of any mention of result behavior (pagination, default ordering) keeps it at a 3.

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

Parameters3/5

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

With 100% schema description coverage, the schema already documents all three parameters (query, limit, spaceKey). The description's phrase "by text content" marginally implies the query parameter's role, but it doesn't add meaning beyond the schema. The baseline of 3 for high schema coverage is appropriate.

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

Purpose4/5

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

The description clearly states the tool searches pages by text content, providing a specific verb and resource. However, it doesn't distinguish itself from the sibling tool `confluence_search`, which likely performs a similar or identical function. A 4 is appropriate since the purpose is transparent but lacks 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/5

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

No guidance is given on when to use this tool versus alternatives like `confluence_search`. The description does not explain when to prefer this over sibling tools, nor does it discuss exclusions or preconditions. This is a missed opportunity for such a generically-named operation.

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

confluence_test_connectionA
Read-onlyIdempotent

Test connection to Confluence API

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, covering safety. The description adds no new behavioral context beyond 'Test connection', which aligns with annotations. No contradictions.

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

Conciseness5/5

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

The description is a single, clear sentence with no extraneous information. Every word is necessary and front-loaded, making it easy to parse.

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

Completeness5/5

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

Given zero parameters, no output schema, and a simple purpose, the description provides sufficient information. An AI agent can correctly infer the tool's function without additional details.

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

Parameters4/5

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

Schema has 0 parameters with 100% coverage, so baseline is 4. The description does not need to add parameter details; it remains clear for a no-parameter tool.

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

Purpose5/5

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

The description clearly states 'Test connection to Confluence API', which is a specific verb and resource. It distinguishes the tool from siblings that retrieve data (e.g., get_page, get_space), as this is for connectivity testing, not data retrieval.

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

Usage Guidelines4/5

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

The description implies usage for verifying API connectivity before other operations. Although it does not explicitly state when-not-to-use or name alternatives, the sibling tool names make the differentiation clear, and the purpose is self-explanatory.

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

TDQS

B3.4/5.0
Disambiguation3/5

Most tools have distinct purposes, but 'confluence_get_space' and 'confluence_get_space_by_key' have identical descriptions and appear to do the same thing, causing ambiguity.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern with 'confluence_' prefix and snake_case, except 'test_connection' which is still acceptable.

Tool Count4/5

17 tools is slightly above the typical 3-15 range but still reasonable for a read-only surface covering many entity types.

Completeness2/5

All tools are read-only; missing create, update, delete, and search operations, which are essential for full Confluence interaction.

Maintenance

ActivityActive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

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

curl -X GET 'https://glama.ai/api/mcp/v1/servers/anuragagrawal0430/atlassian-confluence-mcp-server'

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