Skip to main content
Glama
qihaze123
by qihaze123

confluence-mcp-server

一个面向 Confluence Cloud / Server / Data Center 的 MCP 服务,提供页面搜索、CQL 查询、读取、创建、更新、附件上传和用户身份查询能力。

功能

  • confluence_search_pages: 按关键词搜索页面

  • confluence_execute_cql_search: 执行原生 CQL 查询

  • confluence_get_page: 按页面 ID 获取内容(storage 格式)

  • confluence_get_page_outline: 获取页面标题目录,适合低 token 导航

  • confluence_get_page_section: 按标题读取单个 section,避免把整页正文返回给模型

  • confluence_get_page_anchor_block: 按 Anchor 起止边界读取块内容

  • confluence_create_page: 创建页面(支持可选 parentId

  • confluence_update_page: 更新页面内容并自动递增版本

  • confluence_update_page_section: 按标题更新单个 section,由 MCP 服务端完成整页替换与提交

  • confluence_preview_page_section_update: 预览按标题更新的命中范围,返回旧内容和确认 hash

  • confluence_update_page_section_confirmed: 带 hash 确认提交按标题更新,避免 preview 后内容已变化

  • confluence_add_anchor_block_to_section: 给一个标题 section 自动加上起止 Anchor,便于后续稳定更新

  • confluence_preview_page_anchor_block_update: 预览按 Anchor 范围更新的命中块,返回旧内容和确认 hash

  • confluence_update_page_anchor_block_confirmed: 带 hash 确认提交 Anchor 范围更新

  • confluence_stage_page_update: 暂存整页改动到 MCP 服务端内存,不提交到 Confluence

  • confluence_stage_page_section_update: 暂存标题 section 改动到 MCP 服务端内存,不提交到 Confluence

  • confluence_stage_page_anchor_block_update: 暂存 Anchor 块改动到 MCP 服务端内存,不提交到 Confluence

  • confluence_list_pending_page_updates: 列出当前 MCP 进程里的未提交 wiki 改动

  • confluence_get_pending_page_update: 查看某个未提交改动的 old/new/diff 内容

  • confluence_commit_pending_page_update: 校验 hash 后把某个未提交改动真正提交到 Confluence

  • confluence_discard_pending_page_update: 丢弃某个未提交改动

  • confluence_upload_attachment: 上传页面附件(支持本地文件路径或 base64,同名附件默认更新为新版本)

  • confluence_get_current_user: 获取当前认证用户(whoami)

Related MCP server: confluence-mcp

环境要求

  • Node.js 18+

  • 可访问的 Confluence Cloud / Server / Data Center

快速开始

npm install
npm run build
npm start

通过 npx 使用(推荐)

发布到 npm 后,可在 MCP 客户端中直接使用 npx 启动,无需手动克隆仓库:

{
  "mcpServers": {
    "confluence": {
      "command": "npx",
      "args": ["-y", "confluence-mcp-server"],
      "env": {
        "CONF_MODE": "server",
        "CONF_BASE_URL": "https://confluence.example.com",
        "CONF_USERNAME": "your-username",
        "CONF_TOKEN": "your-token",
        "CONF_DEFAULT_SPACE": "DOC"
      }
    }
  }
}

也可以不在客户端配置里写连接信息,先只启动 MCP 服务:

{
  "mcpServers": {
    "confluence": {
      "command": "npx",
      "args": ["-y", "confluence-mcp-server"]
    }
  }
}

然后在对话里提供连接参数,让模型先调用 confluence_configure_connection

{
  "baseUrl": "https://confluence.example.com",
  "mode": "server",
  "authMode": "auto",
  "username": "your-username",
  "token": "your-token",
  "defaultSpace": "DOC"
}

该配置只保存在当前 MCP 服务进程内存中,重启后会丢失。长期使用仍建议放在 MCP 客户端的环境变量配置里,避免在对话上下文中暴露密钥。

如果当前进程已经有连接(例如通过环境变量连到了旧地址),也可以只切换部分字段。比如只把地址从一台 Confluence 切到另一台、账号密码不变:

{
  "baseUrl": "http://192.168.40.82:8090"
}

未传的 mode、认证信息和 defaultSpace 会继承当前连接;如果显式传入 token / password / username / authMode,则会重新计算认证。

环境变量

  • CONF_BASE_URL: Confluence 基础地址,例如 https://confluence.example.com

  • CONF_MODE: 部署模式,cloudserver(默认 server

  • CONF_AUTH_MODE: 认证模式,auto / basic / bearer(默认 auto

  • CONF_USERNAME: 登录用户名(Cloud 必填;Server 在 basic 模式或使用密码时必填)

  • CONF_PASSWORD: 用户密码(与 CONF_TOKEN 组合按模式使用)

  • CONF_TOKEN: 访问令牌(Cloud 下作为 API Token;Server 下默认走 Bearer)

  • CONF_DEFAULT_SPACE: 默认空间 Key(可选)

如果未设置这些环境变量,服务会以“未配置连接”的状态启动;此时先调用 confluence_configure_connection 即可。可用 confluence_get_connection_status 查看当前连接状态,该工具不会返回 token/password。

MCP 客户端配置示例

{
  "mcpServers": {
    "confluence": {
      "command": "node",
      "args": ["dist/index.js"],
      "env": {
        "CONF_MODE": "server",
        "CONF_BASE_URL": "https://confluence.example.com",
        "CONF_USERNAME": "your-username",
        "CONF_TOKEN": "your-token",
        "CONF_DEFAULT_SPACE": "DOC"
      }
    }
  }
}

说明

  • 该项目当前聚焦 Confluence 能力,不包含 Jira 工具。

  • Cloud 模式固定使用 Basic(CONF_USERNAME + CONF_TOKEN/CONF_PASSWORD)。

  • Server 模式可用 Bearer 或 Basic(CONF_AUTH_MODE=auto 时优先 Bearer)。

  • Cloud 模式 API 基础路径为 /wiki/rest/api,Server 模式为 /rest/api

  • 上传图片后,confluence_upload_attachment 会返回 storageImageMarkup,可把它拼到 confluence_update_pagebodyStorageValue 中展示图片。

  • Confluence 原生更新仍是整页版本化 PUTconfluence_update_page_section 只是把“整页读取 + 局部替换 + 整页提交”放在 MCP 服务端完成,从而显著减少模型侧 tokens。

  • 两阶段更新不会减少 Confluence 侧请求次数,但会显著降低误改风险:preview 返回旧内容和 expectedCurrentHash,confirmed update 会重新拉取页面并校验 hash 一致后才提交。

  • 暂存更新工具会把改动保存在当前 MCP 服务端进程内存中,不会调用 Confluence PUT;重启 MCP 服务后这些未提交草稿会丢失。

  • Anchor 模式使用 Confluence Anchor 宏作为隐形边界,适合长期自动维护固定区域;普通阅读模式下通常不会显示这些锚点。

低 Token 推荐流程

  1. 先用 confluence_search_pagesconfluence_execute_cql_search 定位页面。

  2. 再用 confluence_get_page_outline 获取标题目录,不直接读整页正文。

  3. confluence_get_page_sectionheading 拉取需要处理的 section。

  4. 修改完成后,用 confluence_update_page_section 只提交该 section 的 storage 内容。

如果页面里存在重复标题,可以配合 occurrence 指定第几个同名标题;matchMode=contains 可用于模糊匹配标题。

更安全的两阶段更新

  1. 先调用 confluence_preview_page_section_update

  2. 检查返回的 oldStorageValuenewStorageValue 是否符合预期。

  3. 把返回的 expectedCurrentHash 原样传给 confluence_update_page_section_confirmed

  4. 服务端会重新拉取页面并校验 hash,一致才真正提交更新。

未提交改动流程

如果希望 AI 先改 wiki、你检查后再决定是否真正保存,可以使用暂存工具:

  1. confluence_stage_page_section_updateconfluence_stage_page_anchor_block_updateconfluence_stage_page_update 创建未提交草稿。

  2. 检查返回的 oldStorageValuenewStorageValuediffStorageValuedraftId

  3. 需要稍后查看时,用 confluence_list_pending_page_updatesconfluence_get_pending_page_update

  4. 确认保存时,用 confluence_commit_pending_page_update 提交;服务端会重新拉取页面并校验 expectedCurrentHash,一致才写入 Confluence。

  5. 不想保存时,用 confluence_discard_pending_page_update 丢弃。

这些草稿只存在于当前 MCP 服务端内存,不会出现在 Confluence 页面历史里,也不会跨服务重启持久化。

更稳定的 Anchor 更新

  1. 先用 confluence_add_anchor_block_to_section 给目标 section 加上 startAnchor / endAnchor

  2. 后续读取时用 confluence_get_page_anchor_block

  3. 更新时先用 confluence_preview_page_anchor_block_update,确认后再调用 confluence_update_page_anchor_block_confirmed

Anchor 名称建议使用业务语义化命名,例如 risk-summary-startrisk-summary-end,避免依赖标题文本本身。

Available Tools

23 tools
confluence_add_anchor_block_to_sectionA

Insert invisible start/end anchor macros around a heading-based section so later updates can target a stable block instead of relying on heading matching.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesConfluence page ID
headingYesHeading text used to locate the section
startAnchorYesStart anchor name to insert before the section
endAnchorYesEnd anchor name to insert after the section
occurrenceNoWhen the same heading appears multiple times, choose which occurrence (default 1)
matchModeNoHeading match mode: exact or contains (default exact)
titleNoNew page title (keeps current title if omitted)
minorEditNoWhether this is a minor edit (default true)
messageNoVersion update message / change comment

TDQS

A3.7/5.0
Behavior3/5

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

No annotations are provided, so the description must fully convey behavioral traits. It mentions the anchors are 'invisible', which is useful, but it lacks information about side effects (e.g., modifications to the page), required permissions, failure states (e.g., heading not found), and return value. The description adds some behavioral context but is incomplete for a mutation tool.

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

Conciseness5/5

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

The description is a single, front-loaded sentence that efficiently conveys the action, purpose, and advantage. Every word earns its place, with no redundant or 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 complexity (9 parameters, no output schema, no annotations), the description is brief. It explains the core purpose but lacks guidance on usage context, error handling, and what the tool returns. For a page-modifying operation, more context would be beneficial, but the description is minimally adequate for an AI agent to infer basic usage.

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

Parameters3/5

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

The input schema covers 100% of parameter descriptions, so the baseline is 3. The description does not add additional meaning beyond what the schema provides; it only explains the overall purpose. No per-parameter details or clarifications are given in the description.

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 ('Insert invisible start/end anchor macros') and the resource ('around a heading-based section'). It explicitly differentiates from siblings by noting the benefit: 'so later updates can target a stable block instead of relying on heading matching', distinguishing it from other update tools.

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 this tool (when stable targeting is needed), but it does not explicitly state when not to use it or provide direct alternatives among the sibling tools. No 'when not to use' or 'prefer X instead' guidance is given.

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

confluence_commit_pending_page_updateA

Commit one staged page update to Confluence by draftId after re-reading and hash-checking the current content.

ParametersJSON Schema
NameRequiredDescriptionDefault
draftIdYesDraft ID returned by a stage tool
minorEditNoWhether this is a minor edit (default true)
messageNoVersion update message / change comment

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description adds important behavioral context: the tool re-reads and hash-checks current content before committing, which implies a safety mechanism. However, it does not detail error handling or permission requirements.

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

Conciseness5/5

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

The description is a single sentence under 20 words, with no waste. It front-loads the core action and unique behavior.

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 commit tool with 3 parameters and no output schema, the description covers the action and safety check. It could mention expected outcomes (e.g., success or failure indication) but is largely adequate.

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 all parameters have descriptions. The description adds no additional parameter information beyond what the schema already 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?

The description clearly states the action ('Commit'), the resource ('staged page update'), and the method ('by draftId after re-reading and hash-checking'). It distinguishes from sibling tools like 'discard' or direct 'update'.

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 after staging, but does not explicitly state when to use this tool vs alternatives (e.g., 'update_page' vs 'commit_pending'), nor does it mention when not to use it.

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

confluence_create_pageC

Create a Confluence page. Supports optional parentId. Returns unified fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesPage title
bodyStorageValueYesPage body in Confluence storage format (XHTML)
spaceKeyNoConfluence space key (uses CONF_DEFAULT_SPACE if omitted)
parentIdNoOptional parent page ID (ancestor)

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral disclosure burden. It states 'Create a Confluence page' and 'Returns unified fields' but does not disclose side effects (e.g., whether the page is immediately visible), required permissions, or potential errors (e.g., title conflicts). The output 'unified fields' is vague and lacks explanation.

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

Conciseness4/5

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

The description is very concise with three short sentences. It is front-loaded with the core purpose. However, it omits useful behavioral details that could be included without excessive length, such as the effect of a missing spaceKey or the return value structure.

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 complexity of the Confluence ecosystem with many sibling tools for staging and updating, the description lacks completeness. It does not clarify how this create tool interacts with the staging workflow, nor does it explain what 'unified fields' means. The absence of an output schema is not compensated by the description.

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

Parameters3/5

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

The input schema covers 100% of parameter descriptions, providing clear definitions for title, bodyStorageValue, spaceKey, and parentId. The description adds minimal additional meaning beyond the schema, only mentioning that parentId is optional. This meets the baseline but does not compensate for gaps since there are none.

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 creates a Confluence page and mentions the optional parentId. The verb 'create' and resource 'page' are specific. However, it does not elaborate on what type of page (e.g., wiki page, blog post) or distinguish from similar sibling tools like `confluence_update_page`, but this is partially captured by the tool name.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives (e.g., `confluence_stage_page_update` or `confluence_update_page`). It does not specify prerequisites, such as needing the Confluence space key or handling duplicates. No when-not-to-use information is given.

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

confluence_discard_pending_page_updateA

Discard one staged page update by draftId without writing it to Confluence.

ParametersJSON Schema
NameRequiredDescriptionDefault
draftIdYesDraft ID returned by a stage tool

TDQS

A4/5.0
Behavior3/5

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

With no annotations, the description carries full burden. It correctly states the tool discards without writing, but omits details about reversibility, authorization needs, or error conditions. Adequate but not thorough.

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?

One sentence of 11 words, front-loads the action, no redundant information. Every word is necessary and 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?

For a simple tool with one parameter and no output schema, the description is fairly complete. It covers the core behavior and fits well within the sibling workflow. Missing details like return value or errors, but acceptable given simplicity.

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 'draftId' as returned by a stage tool. The description adds no extra meaning beyond rephrasing the parameter. 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 'discard' on a specific resource 'staged page update' and distinguishes it from siblings like commit by noting it does not write. The verb and resource are precise.

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 implicitly indicates when to use (to undo a staged update) and its relation to the stage-commit-discard workflow. However, it does not explicitly state when not to use or list alternatives like 'commit_pending_page_update'.

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

Get current authenticated Confluence user (whoami).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior2/5

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

No annotations are provided, so the description alone must convey behavioral traits. It only states the action without disclosing output format, required permissions, or side effects, leaving notable gaps.

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

Conciseness5/5

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

The description is a single, short sentence that immediately conveys the tool's purpose without filler. It is front-loaded and efficient.

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

Completeness4/5

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

Given no parameters and no output schema, the description is mostly adequate. However, it omits any information about the returned user object structure, which would be helpful for an agent.

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

Parameters4/5

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

There are no parameters, so schema coverage is trivial (100%). The description adds no parameter information, but baseline for zero parameters is 4.

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

Purpose5/5

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

The description uses a specific verb 'Get' and a clear resource 'current authenticated Confluence user', with an alias 'whoami'. It is distinct from sibling tools which deal with pages, sections, and updates.

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 retrieving the current user, and no sibling tool serves a similar purpose, so context is clear. However, no explicit when-not or alternative guidance is provided.

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

confluence_get_pageB

Get a Confluence page by ID. Returns unified fields and bodyStorageValue.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesConfluence page ID
expandNoComma-separated expand fields (default: body.storage,version,space)

TDQS

B3.3/5.0
Behavior2/5

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

The description only states that it 'Get's a page, implying a read-only operation, but does not disclose any behavioral traits such as authentication requirements, rate limits, or side effects. With no annotations present, the description should provide more context.

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

Conciseness5/5

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

The description is extremely concise, consisting of two short sentences with no redundant information. Every word contributes to the purpose.

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

Completeness3/5

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

Without an output schema, the description should explain the return format more thoroughly. It mentions 'unified fields and bodyStorageValue' but does not clarify the structure or list other possible fields. This is moderately complete for a simple get tool but leaves ambiguity.

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

Parameters3/5

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

The input schema already provides 100% coverage with descriptions for both parameters. The description does not add new meaning beyond what the schema offers, so it meets the baseline but does not exceed it.

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 ('a Confluence page by ID'), and the return value ('unified fields and bodyStorageValue'). This distinguishes it from sibling tools like 'confluence_search_pages' or 'confluence_create_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?

No guidance is provided on when to use this tool versus alternatives. For example, it does not mention that this tool is best when you have a known page ID, whereas search_pages is for querying by criteria.

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

confluence_get_page_anchor_blockA

Get a page block between two invisible anchor macros. Returns only the matched block to save tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesConfluence page ID
startAnchorYesStart anchor name
endAnchorYesEnd anchor name

TDQS

A3.5/5.0
Behavior2/5

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

With no annotations, the description must fully disclose behavior. It states the tool returns only the matched block but does not clarify behavior when anchors are missing or if there are multiple matches. No side effects, limitations, or return format details are given.

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 that efficiently conveys purpose and benefit without excess. Every word contributes value, making it highly concise and well-structured.

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 three required parameters and no output schema, the description covers the basic function but lacks details on error handling, anchor existence, or the format of the returned block. It is adequate but not complete for a tool with no additional structured metadata.

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 descriptions for all three parameters. The description adds context about 'invisible anchor macros' but does not significantly enrich parameter meaning beyond the schema. 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 tool retrieves a specific page block between two invisible anchor macros, with the explicit benefit of token saving. It distinguishes itself from sibling tools like 'confluence_get_page' and 'confluence_get_page_section' by targeting a narrower segment.

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

Usage Guidelines3/5

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

The description implies usage for retrieving a block between anchors but does not explicitly state when to use this tool over alternatives or when not to use it. No guidance on prerequisites or context is provided.

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

confluence_get_page_outlineA

Get a page outline by parsing headings from body.storage. Returns unified fields plus headings[] for low-token navigation.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesConfluence page ID

TDQS

A3.7/5.0
Behavior3/5

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

No annotations are provided, so the description carries full burden. It states 'Get a page outline' implying a read operation, but does not explicitly confirm non-destructiveness, authorization needs, or behavior on invalid pageId. Adequate for a simple read tool but lacks explicit behavioral traits.

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

Conciseness5/5

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

The description is a single sentence of 18 words, front-loaded with the purpose. Every word earns its place, no wasted content.

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 low complexity (1 parameter, no output schema), the description explains what it does and returns. However, it lacks details on heading depth, structure of headings[], or pagination, leaving gaps for an agent.

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

Parameters3/5

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

Only one parameter (pageId) with schema description 'Confluence page ID' covering 100%. The description does not add extra meaning beyond the schema, so baseline score of 3 applies.

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

Purpose5/5

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

The description clearly states it gets a page outline by parsing headings from body.storage, and mentions returning unified fields plus headings[] for low-token navigation. This distinguishes it from sibling tools like confluence_get_page (full content) or confluence_get_page_section (specific section).

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

Usage Guidelines3/5

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

The description implies use for low-token navigation, providing context for when to use it (token efficiency). However, it does not explicitly state when not to use it or name alternatives among siblings, leaving some ambiguity.

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

confluence_get_page_sectionA

Get a single page section by heading. The server fetches full storage internally but only returns the matched section to save tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesConfluence page ID
headingYesHeading text used to locate the target section
occurrenceNoWhen the same heading appears multiple times, choose which occurrence (default 1)
includeHeadingNoInclude the heading tag in the returned section (default true)
matchModeNoHeading match mode: exact or contains (default exact)

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations, the description adds one behavioral trait: internal full fetch but truncated return. Lacks disclosure on auth needs, errors, or other behaviors, but acceptable for a read tool.

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

Conciseness5/5

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

Two sentences: purpose and behavioral note. No wasted words, front-loaded with the core action.

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

Completeness3/5

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

Given 5 parameters and no output schema/annotations, the description is adequate but lacks details on return format, prerequisites, or error scenarios. Could be more 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%, so description adds no extra meaning beyond the field names and descriptions. Baseline score 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 'Get a single page section by heading.' with a specific verb and resource, distinguishing it from siblings like 'confluence_get_page' and 'confluence_get_page_outline'.

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 context by noting that the server fetches full storage internally but returns only the matched section to save tokens, hinting at token-saving benefits. However, it does not explicitly state when not to use it or list alternatives.

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

confluence_get_pending_page_updateA

Get one staged page update by draftId. The draft has not been written to Confluence.

ParametersJSON Schema
NameRequiredDescriptionDefault
draftIdYesDraft ID returned by a stage tool

TDQS

A3.5/5.0
Behavior2/5

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

The description discloses that the tool retrieves a staged update (read operation) but lacks details on permissions, side effects, or whether it can be called multiple times. With no annotations, the description carries the full burden and is insufficient.

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

Conciseness5/5

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

Two sentences, minimal and front-loaded. The first sentence states the action, the second adds important context. No waste.

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 operation with one parameter and no output schema, the description is somewhat complete but does not specify what the tool returns (e.g., the staged update object). Additional context about return value would improve completeness.

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

Parameters3/5

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

Schema description coverage is 100% for the single parameter, which already explains 'Draft ID returned by a stage tool'. The description redundantly mentions 'by draftId' but adds no 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 clearly states the verb (Get), resource (staged page update), and identifier (draftId). It distinguishes from siblings like commit_pending_page_update and discard_pending_page_update by emphasizing that the draft has not been written yet.

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 in the staging workflow but does not explicitly state when to use this tool versus alternatives such as commit_pending_page_update or list_pending_page_updates. No when-not or alternative guidance is provided.

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

confluence_list_pending_page_updatesA

List staged page updates kept in MCP server memory. These drafts have not been written to Confluence.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdNoOnly list pending updates for this Confluence page ID

TDQS

A3.9/5.0
Behavior4/5

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

No annotations are provided, so the description carries full responsibility. It successfully discloses that the tool reads from MCP server memory and that the updates are not written to Confluence, indicating a read-only operation. However, it could further mention that no data is modified or destroyed.

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

Conciseness5/5

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

The description consists of two concise sentences with no unnecessary words. It is front-loaded with the core action and follows with key context about the data location.

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 no output schema and one optional parameter, the description adequately explains the tool's purpose and data origin. However, it is incomplete regarding the return format (e.g., what fields are in the list). Additional details would improve completeness.

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

Parameters3/5

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

Schema coverage is 100% with one optional parameter 'pageId', whose description clearly says 'Only list pending updates for this Confluence page ID'. The tool description does not add new meaning beyond the schema, so a baseline of 3 is appropriate.

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

Purpose5/5

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

The description clearly states 'List staged page updates kept in MCP server memory. These drafts have not been written to Confluence.' It specifies the verb 'List' and the resource 'staged page updates', and distinguishes from sibling tools like commit, discard, and get by emphasizing the listing of all pending updates in memory.

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

Usage Guidelines3/5

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

The description provides basic context (listing drafts before committing), but lacks explicit guidance on when to use this tool versus alternatives like 'confluence_get_pending_page_update'. There is no mention of when-not to use it or which scenarios it is best suited for.

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

confluence_preview_page_anchor_block_updateA

Preview an anchor-based block update. Returns the current block, the proposed replacement, and a hash that must be echoed to the confirmed update call.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesConfluence page ID
startAnchorYesStart anchor name
endAnchorYesEnd anchor name
blockStorageValueYesProposed replacement storage XHTML between the two anchors

TDQS

A3.8/5.0
Behavior3/5

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

No annotations exist, so the description carries the full burden. It discloses return values and the need to echo a hash, but does not confirm whether the operation is read-only or has any side effects. The name 'preview' suggests safety, but it's not explicit.

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

Conciseness5/5

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

The description is two sentences with no redundant information. The first sentence states the purpose, and the second provides critical output details. It is front-loaded and efficient.

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

Completeness4/5

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

Given no output schema, the description adequately explains the return values and their role in confirmation. It could mention the workflow (stage then preview then confirm) but still provides enough context for an agent to understand the tool's purpose and next steps.

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 description adds no additional meaning beyond what the schema provides. The description's mention of 'anchor-based block update' gives context but does not elaborate on parameter usage or specifics.

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

Purpose5/5

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

The description clearly states it previews an anchor-based block update, which is distinct from sibling tools like stage or confirm. It specifies the verb 'preview' and resource 'anchor-based block update', making the purpose unambiguous.

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

Usage Guidelines3/5

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

The description implies this tool is used after staging and before confirming by mentioning a hash for the confirmed update call, but it does not explicitly state when to use it or when not to use alternatives. This leaves room for ambiguity.

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

confluence_preview_page_section_updateA

Preview a heading-based section update. Returns the currently matched section, the proposed replacement, and a hash that must be echoed to the confirmed update call.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesConfluence page ID
headingYesHeading text used to locate the target section
sectionStorageValueYesProposed replacement storage XHTML for the target section
occurrenceNoWhen the same heading appears multiple times, choose which occurrence (default 1)
includeHeadingNoInclude the heading tag in the previewed replace range (default true)
matchModeNoHeading match mode: exact or contains (default exact)

TDQS

A3.8/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It discloses the return of a hash for confirmation, but does not explicitly state that the tool is read-only (preview implies no mutation, but not stated). No mention of authorization or rate limits.

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

Conciseness5/5

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

The description is a single sentence that front-loads the purpose and return values. Every part is informative with no waste.

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

Completeness4/5

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

Given the complexity (6 parameters) and no output schema, the description explains the return values (section, replacement, hash) which is helpful. However, it lacks guidance on how parameters like occurrence, includeHeading, and matchMode affect the preview, and no hint about the format of the returned section.

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 baseline is 3. The description adds no additional context beyond the schema descriptions for parameters like pageId, heading, sectionStorageValue, occurrence, includeHeading, matchMode. It repeats 'heading-based' but does not elaborate on parameter interactions.

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 'preview' and the resource 'heading-based section update'. It specifies the return values (matched section, proposed replacement, hash) and the requirement to echo the hash to the confirmed update call, distinguishing it from sibling preview tools like confluence_preview_page_anchor_block_update.

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

Usage Guidelines3/5

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

The description implies the tool is a prerequisite for a confirmed update by mentioning the hash, but it does not explicitly compare with sibling tools such as stage or direct update. No direct guidance on when to use this preview versus other update approaches.

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

confluence_search_pagesB

Search Confluence pages by keyword. Returns unified fields: id, type, title, spaceKey, url, version.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoSearch keywords (optional, empty string means only space/type filter)
spaceKeyNoConfluence space key (uses CONF_DEFAULT_SPACE if omitted)
limitNoMax results to return (default 10, max 25)

TDQS

B3.3/5.0
Behavior3/5

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

Without annotations, the description must carry behavioral disclosure. It mentions returned fields but omits details like default space behavior, pagination handling, and whether the operation is read-only. The description is adequate but not comprehensive.

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

Conciseness5/5

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

The description is concise, consisting of two sentences that front-load the primary purpose and key return fields. Every word is valuable with no redundancy.

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

Completeness3/5

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

Given the well-documented schema and the presence of sibling tools like confluence_execute_cql_search, the description minimally covers essential details. It lacks guidance on differences from similar tools and does not explain the absence of pagination offsets or output format beyond listed fields.

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?

All three parameters are well-documented in the input schema with descriptions covering 100% of parameters. The tool description does not add any additional meaning beyond what the schema already provides, 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 clearly states 'Search Confluence pages by keyword' and lists return fields, making the purpose evident. However, it does not differentiate from sibling tools like confluence_execute_cql_search, which offers more advanced search capabilities.

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 specify prerequisites, context for use, or scenarios where other search tools would be more appropriate.

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

confluence_stage_page_anchor_block_updateA

Stage an anchor-based block update in MCP server memory without writing to Confluence. Returns a draftId plus old/new/diff content for review.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesConfluence page ID
startAnchorYesStart anchor name
endAnchorYesEnd anchor name
blockStorageValueYesProposed replacement storage XHTML between the two anchors
titleNoProposed new page title (keeps current title if omitted)

TDQS

A3.7/5.0
Behavior3/5

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

No annotations are provided, so the description carries full burden. It discloses the key nondestructive behavior and the return format. However, it lacks information on prerequisites (e.g., existing anchors), side effects (e.g., overwriting previous staged updates), and permissions.

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

Conciseness5/5

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

The description is two sentences long, front-loaded with the core action and key trait. Every word serves a purpose; no redundancy or filler.

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 complexity (5 params, no output schema, no annotations), the description provides essential information but lacks details on workflow integration, error conditions, and conceptual context like 'MCP server memory'. The return values are mentioned but not how the draftId is used subsequently.

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 parameters are already documented. The description adds no additional semantic context beyond what is in the schema, such as constraints on anchor names or the format of blockStorageValue.

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 'stage', the resource 'anchor-based block update', and the key behavior 'without writing to Confluence'. It also specifies the return values (draftId, old/new/diff content), distinguishing it from sibling tools that actually write or preview.

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 indicates that this tool stages an update without writing, implying it is a non-destructive step before committing. However, it does not explicitly contrast with sibling tools like 'preview_page_anchor_block_update', nor does it provide when-not-to-use 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_stage_page_section_updateA

Stage a heading-based section update in MCP server memory without writing to Confluence. Returns a draftId plus old/new/diff content for review.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesConfluence page ID
headingYesHeading text used to locate the target section
sectionStorageValueYesProposed replacement storage XHTML for the target section
occurrenceNoWhen the same heading appears multiple times, choose which occurrence (default 1)
includeHeadingNoWhen true replace from the heading tag itself; when false only replace the body below it (default true)
matchModeNoHeading match mode: exact or contains (default exact)
titleNoProposed new page title (keeps current title if omitted)

TDQS

A4/5.0
Behavior4/5

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

No annotations are provided, so the description carries the full disclosure burden. It clearly states the tool does not write to Confluence and returns draftId plus old/new/diff. However, it does not mention nuances like draft lifetime or potential conflicts with other staged updates.

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 is clear, front-loaded, and concise. Every word adds value.

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 output schema, the description adequately describes return values (draftId, old/new/diff). It could mention prerequisites (e.g., page existence) or error conditions, but overall is fairly 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 description coverage is 100%, so the schema already documents all parameters. The description does not add extra 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 it stages a heading-based section update without writing to Confluence, and specifies it returns a draftId plus diff. This distinguishes it from sibling tools like 'confluence_update_page_section' which writes directly.

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 a workflow (stage then commit), but does not explicitly state when to use this tool vs alternatives such as 'confluence_update_page_section' or 'confluence_stage_page_update'. It could mention that it's a precursor to 'confluence_commit_pending_page_update'.

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

confluence_stage_page_updateA

Stage a full-page update in MCP server memory without writing to Confluence. Use list/get to review, commit to save, or discard to drop it.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesConfluence page ID
bodyStorageValueYesProposed new page body in Confluence storage format (XHTML)
titleNoProposed new page title (keeps current title if omitted)

TDQS

A4/5.0
Behavior3/5

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

With no annotations, the description carries full burden. It clarifies that the update is staged in memory and not written to Confluence, but omits details like whether staging overwrites previous staged updates for the same page or any permission requirements.

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

Conciseness5/5

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

The description is extremely concise: two sentences that front-load the core purpose and provide immediate next-step guidance. No extraneous 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 staging tool without an output schema, the description sufficiently explains the tool's role in the workflow (stage, then review/commit/discard). It does not describe return values, but the context of sibling tools fills gaps.

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

Parameters3/5

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

Schema coverage is 100%, so parameters are fully described in the input schema. The description adds no extra meaning beyond the schema, meeting the baseline expectation of 3.

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

Purpose5/5

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

The description clearly states the tool's purpose: staging a full-page update in memory without writing to Confluence. It uses specific verbs ('Stage') and resource ('full-page update'), and context from sibling tools like commit, discard, list confirms differentiation.

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

Usage Guidelines4/5

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

The description advises using list/get to review and commit/discard to finalize, providing clear post-usage steps. It implicitly distinguishes from sibling tools by noting that this tool does not write to Confluence, but does not explicitly state when not to use it.

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

confluence_update_pageA

Update a Confluence page content. Auto increments version. Returns unified fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesConfluence page ID
titleNoNew page title (keeps current title if omitted)
bodyStorageValueYesNew page body in Confluence storage format (XHTML)
minorEditNoWhether this is a minor edit (default true)
messageNoVersion update message / change comment

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations, the description carries the burden. It discloses auto-version increment (mutation behavior) and return format, but lacks details on authorization, concurrency, or error conditions.

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

Conciseness5/5

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

Two concise sentences covering core purpose, auto-version, and return format. No extraneous words; every sentence adds value.

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

Completeness3/5

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

Given 5 parameters, no output schema, and no annotations, the description is adequate but not complete. It misses guidance on when to use this versus staging workflow, and does not describe expected behavior fully.

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 adequate parameter descriptions. The description does not add extra meaning beyond the schema, but schema is sufficient, so 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 'update', the resource 'Confluence page content', and highlights auto version increment and return format. It distinguishes from sibling tools like create or stage+commit.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., staging tools like confluence_stage_page_update or confluence_commit_pending_page_update). Does not mention prerequisites or conditions where this tool should not be used.

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

confluence_update_page_anchor_block_confirmedA

Confirm an anchor-based block update after preview. The server re-reads the page and only updates when the preview hash still matches current content.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesConfluence page ID
startAnchorYesStart anchor name
endAnchorYesEnd anchor name
blockStorageValueYesReplacement storage XHTML between the two anchors
expectedCurrentHashYesHash returned by confluence_preview_page_anchor_block_update
titleNoNew page title (keeps current title if omitted)
minorEditNoWhether this is a minor edit (default true)
messageNoVersion update message / change comment

TDQS

A3.6/5.0
Behavior3/5

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

No annotations are provided, so the description must disclose behavioral traits. It reveals that the tool re-reads the page and only updates if the hash matches current content, which is key. However, it does not mention other important aspects like permissions required, potential failures, or side effects like destructive updates.

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

Conciseness5/5

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

Two concise sentences deliver the essential information without fluff. Every word earns its place, and the structure is front-loaded with the core action.

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

Completeness2/5

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

Given 8 parameters and no output schema, the description is inadequate. It lacks information on return values, success/failure behavior, and workflow integration. The tool is part of a multi-step process, and the description does not fully contextualize it.

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

Parameters3/5

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

The input schema covers all 8 parameters with descriptions. The description adds minimal value beyond the schema, mainly tying 'expectedCurrentHash' to the preview step. With 100% schema coverage, baseline score is 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 it confirms an anchor-based block update after preview, specifying the server re-reads and checks hash match. This distinguishes it from preview and other sibling tools.

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 indicates it should be used 'after preview' and mentions the hash check, but does not explicitly state when not to use it or provide alternatives. The context of sibling tools implies the workflow, but the description lacks explicit guidance.

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

confluence_update_page_sectionA

Update one page section by heading. The server fetches full storage internally, replaces the matched range, and writes back the whole page so the model only sends the section content.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesConfluence page ID
headingYesHeading text used to locate the target section
sectionStorageValueYesReplacement storage XHTML for the target section
occurrenceNoWhen the same heading appears multiple times, choose which occurrence (default 1)
includeHeadingNoWhen true replace from the heading tag itself; when false only replace the body below it (default true)
matchModeNoHeading match mode: exact or contains (default exact)
titleNoNew page title (keeps current title if omitted)
minorEditNoWhether this is a minor edit (default true)
messageNoVersion update message / change comment

TDQS

A3.5/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It reveals the read-modify-write behavior (server fetches full storage internally, writes back whole page), which is a key behavioral trait. However, it does not mention side effects (e.g., overwriting other sections), failure modes, or permission requirements, so transparency is adequate but not comprehensive.

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

Conciseness5/5

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

The description is exceptionally concise at two sentences, with the purpose front-loaded. Every word adds value, explaining both what the tool does and how it works. No excess verbiage.

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

Completeness3/5

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

The tool has 9 parameters (some with complex logic like occurrence and includeHeading) and no output schema. The description does not mention return values, error states, or pagination. While the schema covers parameter details, the description lacks completeness about the tool's output and overall behavior in edge cases.

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, providing meaning for each parameter. The description reinforces the purpose (update section by heading) but does not add detailed parameter-level context beyond what the schema already provides. Baseline 3 is appropriate.

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

Purpose4/5

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

The description clearly states the action (update) and resource (page section by heading). It explains the internal mechanism (server fetches full storage, replaces matched range, writes back whole page), which distinguishes it from sibling tools like confluence_update_page that update the entire page. However, it does not explicitly differentiate from the 'confirmed' variants, slightly reducing clarity.

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 efficient partial updates ('the model only sends the section content'), but does not explicitly state when to use this tool versus alternatives (e.g., staging tools or full page update). No when-not-to-use or alternative tool names are provided, leaving usage context somewhat vague.

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

confluence_update_page_section_confirmedA

Confirm a heading-based section update after preview. The server re-reads the page and only updates when the preview hash still matches current content.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesConfluence page ID
headingYesHeading text used to locate the target section
sectionStorageValueYesReplacement storage XHTML for the target section
expectedCurrentHashYesHash returned by confluence_preview_page_section_update
occurrenceNoWhen the same heading appears multiple times, choose which occurrence (default 1)
includeHeadingNoWhen true replace from the heading tag itself; when false only replace the body below it (default true)
matchModeNoHeading match mode: exact or contains (default exact)
titleNoNew page title (keeps current title if omitted)
minorEditNoWhether this is a minor edit (default true)
messageNoVersion update message / change comment

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well by disclosing that the server re-reads the page and conditionally updates based on hash match. This goes beyond the schema. It could mention error behavior on hash mismatch, but still effective.

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

Conciseness5/5

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

The description is two sentences with no wasted words. The essential information is front-loaded: purpose and condition for success.

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 10 parameters and no output schema, the description covers the core behavior and condition. It could be more complete by noting what happens if the hash doesn't match, but overall it adequately informs an agent.

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

Parameters3/5

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

Schema coverage is 100%, so baseline is 3. The description adds no extra meaning to the parameters beyond what the schema already provides (e.g., it doesn't explain how 'expectedCurrentHash' relates to the preview step behavior).

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

Purpose5/5

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

The description clearly states the tool is for confirming a heading-based section update after preview, using a hash check. It specifies the verb 'confirm' and the resource 'section update', distinguishing it from sibling tools like 'confluence_update_page_section' which likely skips the preview step.

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 the tool should be used after a preview step and only succeeds if the hash matches, providing clear context. However, it does not explicitly mention when not to use it or list alternatives like 'confluence_commit_pending_page_update'.

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

confluence_upload_attachmentA

Upload an attachment to a Confluence page. Supports local filePath or base64Data; same-name files are updated by default. Returns attachment fields and image storage markup when applicable.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageIdYesConfluence page ID
filePathNoLocal file path to upload from the MCP server machine
base64DataNoBase64 file content, optionally as a data URL
fileNameNoAttachment file name. Required for base64Data; defaults to basename(filePath)
contentTypeNoMIME type such as image/png. Inferred from fileName when omitted
commentNoAttachment version comment
minorEditNoWhether this attachment version is a minor edit (default true)
overwriteNoUpdate same-name attachment as a new version when true (default true); fail on duplicates when false

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses key behaviors: supports two data sources, updates same-name files by default (overwrite), and returns attachment fields and image storage markup. It could mention potential side effects like file size limits, but overall covers main 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 very concise: three sentences covering purpose, data source options, overwrite behavior, and return value. Every sentence adds information, and the main action is front-loaded.

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 complexity (8 parameters, 1 required, no output schema), the description covers the key aspects: how to provide file data, overwrite behavior, and return format. It relies on the schema for individual parameter details, which is appropriate since schema coverage is 100%. Minor omission: no mention of error cases.

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

Parameters4/5

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

Schema description coverage is 100%, so baseline is 3. The description adds value by summarizing the two input methods and the return behavior (image storage markup), which is not in the schema due to lack of output schema. This goes beyond what the 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?

The description clearly states it uploads an attachment to a Confluence page, and specifies two methods (filePath or base64Data) and default overwrite behavior. This distinguishes it from sibling tools, which focus on pages, sections, and anchors, not attachment upload.

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

Usage Guidelines4/5

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

The description provides clear context for usage by explaining the two data source options and default overwrite behavior. It doesn't explicitly state when not to use it or name alternatives, but sibling tools are sufficiently different that confusion is unlikely.

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

TDQS

A3.7/5.0
Disambiguation5/5

Each tool has a unique purpose clearly indicated by its name and description. There is no overlap between tools like create_page, update_page, stage_page_update, etc., as they target different actions (create, read, update, stage, commit) and granularities (page, section, anchor block).

Naming Consistency5/5

All tools follow the consistent pattern 'confluence_verb_noun' (e.g., confluence_create_page, confluence_get_page_section). The verbs are specific and the nouns clearly indicate the target, forming a predictable and uniform naming scheme.

Tool Count4/5

With 23 tools, the server is on the higher side but justifiable for the domain. The staging/preview/commit workflow for sections and anchor blocks adds necessary tools for safe editing, but the count is slightly above the ideal range for a focused server.

Completeness3/5

The tool surface covers page creation, reading (with sections/blocks), updating, and attachment upload, plus search and user info. However, a delete page tool is missing, and updating page titles is not explicitly supported, leaving notable gaps in lifecycle coverage.

Maintenance

ActivityInactive
ResponsivenessNo issues

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/qihaze123/confluence-mcp-server'

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