Skip to main content
Glama
iljasorokin

confluence-dc-advops-mcp

by iljasorokin

confluence-dc-advops-mcp

Local MCP helpers for Confluence Data Center used from Cursor.

Русская документация: README.ru.md.

Talks to the same proxy/auth as @atlassian-dc-mcp/confluence (local TLS proxy + token from keychain / env). Prefer these tools over ad-hoc curl to the public Confluence hostname.

Auth

Same sources as @atlassian-dc-mcp/confluence:

  • CONFLUENCE_HOST (env or ~/.atlassian-dc-mcp/confluence.env) — typically your local proxy, e.g. https://localhost:8443

  • CONFLUENCE_API_TOKEN (env), or macOS Keychain service atlassian-dc-mcp / account confluence-token

Do not commit tokens or *.env files. See SECURITY.md.

Related MCP server: confluence-mcp-server

Tools

Tool

When

confluence_movePage / confluence_movePages

Reparent only (until upstream parentId on update)

confluence_listChildPages

Direct children + tree position

confluence_reorderPage

Sibling order / append: above | below | append via DC movepage.action

confluence_setChildPageOrder

Exact full child order (permutation; sequential movepage)

confluence_listVersions

Page version metadata only (who / when / message); no bodies

confluence_getStorageToFile

Dump page body.storage to a local XML file (current or version=N historical)

confluence_resolveTinyUrl

Tiny link /x/{code} → page id / title / space. DC base64 (-=/, _=+); on 404 swap then tinyurl.action. Returns resolvedVia.

confluence_updateStorageFromFile

Publish page storage XML from file (auto version bump)

confluence_storage_listHeadings

Headings in a local storage file (no bodies)

confluence_storage_getSection

One section as text / markdown / storage fragment (optional maxChars cap). See Links in text/markdown.

confluence_storage_replaceSection

Replace one section body on disk (dryRun supported)

confluence_storage_listMacros

Macro inventory (no bodies)

confluence_storage_replaceMacroBody

Replace one macro body (e.g. mermaid CDATA)

confluence_listAttachments

List attachments on a page

confluence_downloadAttachmentToFile

Download attachment binary to a local file

confluence_uploadAttachmentFromFile

Upload / new version of attachment from local file

confluence_listComments / addComment / replyToComment

Footer (page) comments; quote page text in the body (no inline create)

confluence_listInlineComments / replyToInlineComment

Read inline comments (open vs resolved) and reply in thread

confluence_listLabels / addLabels / removeLabels / setLabels

Page labels (global / my)

confluence_listSpaceTemplates

List space page templates (spaceKey required)

confluence_getSpaceTemplateToFile

Dump space template body to a local XML file

confluence_createSpaceTemplateFromFile

Create new space template from file (POST); optional labels / copyLabelsFromContentId

confluence_updateSpaceTemplateFromFile

Publish space template body from file

confluence_setSpaceTemplateLabels

Set labels on a space template (body unchanged)

confluence_syncPageToSpaceTemplate

Fast path: copy page body and labels → space Create-from-template snapshot

confluence_deleteSpaceTemplate / …Templates

Destructive. Delete Create template(s). Requires human chat OK + confirm: "DELETE" + exact name(s). Annotated destructiveHint.

Fast path for large pages (BRD/SRS/…)

  1. confluence_getStorageToFile/path/to/page.xml

  2. confluence_storage_listHeadings / getSection (format: text) — do not @ or Read the dump file into chat

  3. confluence_storage_replaceSection or confluence_storage_replaceMacroBody (dryRun first if unsure)

  4. confluence_updateStorageFromFile (omit version to auto-bump, or pass current+1)

  5. Verify with user-confluence-dc / confluence_getContent bodyMode: text (limit chars)

  6. If the page is also a Create-from-template snapshot → sync space template (below)

  7. Delete the temp file

These storage tools do not publish and do not return the full XML. Python/StrReplace on the dump is a fallback when they do not cover the case.

Page versions (who / when — not full blame)

  1. confluence_listVersions — metadata only (number, when, message, by). Paginate with start / limit; cap with maxResults.

  2. To inspect an old body: confluence_getStorageToFile with version: N → local XML, then storage_getSection / search on disk. Do not pull historical XML into chat.

  3. Not git-blame: a version author is who saved that snapshot; use snippet search on the dump for “who wrote this line”.

Do not round-trip the whole page through Markdown (macros/layout will not survive).

For tiny pages that are not templates, user-confluence-dc confluence_updateContent is still ok.

Confluence often stores page links as empty ac:link with the target only in ri:* attributes (UI fills the title). format: storage is unchanged. For format: text / markdown (and headings that are only a link), the converter fills a label so agents do not treat the field as empty:

  1. Prefer visible anchor text (ac:plain-text-link-body / ac:link-body); do not also append ri:content-title.

  2. Otherwise first target: ri:page / ri:blog-postri:content-title plus [spaceKey] when ri:space-key is set; ri:urlri:value; ri:attachmentri:filename; ri:space → key/name; ri:user[user] (no invented display name).

  3. Markdown: same labels; ri:url may become [label](url). Page links stay bare titles (no invented /wiki/… URLs).

  4. No REST lookup of titles/ids; no default space when ri:space-key is missing; tiny/pageId not resolved here.

Same contract as user-confluence-dc confluence_getContent with bodyMode: text (upstream mapper). Non-expand macros still appear as [macro: …] stubs in getSection text — bodies inside those macros are not walked.

Tiny URLs (/x/{code})

DC encodes pageId as little-endian uint32 → standard base64, then /- and +_ (Atlassian KB). This is not RFC4648 base64url. confluence_resolveTinyUrl:

  1. Decode with the DC alphabet → GET /content/{id}.

  2. On 404, retry decode with -_ swapped (codes produced by a base64url encoder).

  3. If still 404, follow pages/tinyurl.action?urlIdentifier={code} (undocumented; CONFSERVER-102023).

  4. Response includes resolvedVia: decode | decode-swapped | tinyurl-action.

Use before getContent / getStorageToFile when the user pasted a short link — not CQL by title. Anchors after the code (/x/ZIAB#fragment) are ignored.

Fast path: page → space template (Create from template)

Catalog / BSA page = source of truth. Space template = snapshot for «Create from template».

confluence_syncPageToSpaceTemplate
  contentId: "<pageId>"
  spaceKey: "<spaceKey>"
  templateId: "<templateId>"
  descriptionSuffix: "(sync note)"   # optional
  # copyPageLabels: true by default — template labels come from the page

DC notes:

  • List: /rest/experimental/template/page?spaceKey=…

  • GET by template id alone often 404 — always pass spaceKey

  • Update: PUT /rest/experimental/template with templateType: "page" and body.storage

  • Delete: DELETE /rest/experimental/template/{id} — only via MCP delete tools after human confirmation (confirm: "DELETE" + exact confirmName / confirmNames). No trash restore.

Labels (pages + Create from template)

Confluence copies space-template labels onto pages created from that template. Put labels on the catalog page, then sync (or set them on the template). New pages from «Create from template» inherit them.

Tool

When

confluence_listLabels

Read labels on a page

confluence_addLabels

Add without removing others

confluence_removeLabels

Remove by name

confluence_setLabels

Replace global labels (my: left alone)

confluence_setSpaceTemplateLabels

Labels on the template only (keeps body)

confluence_syncPageToSpaceTemplate copies the page’s global labels onto the template (copyPageLabels default true). If the page has none, current template labels are kept. Pass labels: [...] to set them explicitly. Create/update-from-file accept labels and copyLabelsFromContentId.

Page API: GET/POST /rest/api/content/{id}/label, DELETE …/label?name=. Template labels go in the experimental template PUT payload (omitting them can wipe labels on DC — tools always send a list unless you set keepLabels: false with no replacement).

No inline comments. Put a quote from the page in the comment body so the subject is clear.

Tool

When

confluence_listComments

List footer comments (location=footer; depth root|all)

confluence_addComment

New footer comment under a page

confluence_replyToComment

Reply in a footer thread

bodyFormat: plain (default — wrap in <p>, blank lines = paragraphs) or storage (raw Confluence storage XML).

Inline comments (read + reply only)

Does not create new text anchors. Use footer comments with a quote if you need a new note.

Tool

When

confluence_listInlineComments

List inline comments; status: open (on page) | resolved | all

confluence_replyToInlineComment

Reply in an existing inline thread

Each item includes status (open|resolved), visibleOnPage (true when open on the page), and originalSelection (anchored text when present).

Cursor config

"confluence-dc-advops": {
  "command": "node",
  "args": ["/path/to/confluence-dc-advops-mcp/index.js"],
  "env": {
    "CONFLUENCE_HOST": "https://localhost:8443",
    "NODE_TLS_REJECT_UNAUTHORIZED": "0"
  }
}

After changing index.js, reload MCP servers in Cursor so new tools appear.

Available Tools

11 tools
confluence_createSpaceTemplateFromFileA

Create a new space page template from a local storage XML file via POST /rest/experimental/template. Use after a new BSA заготовка exists and needs a TempStream Create-from-template entry. Fails if a template with the same name already exists.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesNew template name, e.g. SRS-XXX-DB-01 Модель данных
labelsNoOptional label names (global prefix)
filePathYesAbsolute path to storage XML (usually dumped from BSA page)
spaceKeyYesSpace key, e.g. TempStream
descriptionNoTemplate description shown in Create from template

TDQS

A3.5/5.0
Behavior3/5

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

Discloses that the tool fails if a template with the same name exists, which is a useful behavioral trait. However, it does not mention authorization requirements, rate limits, or the fact it uses an experimental API endpoint. No annotations are provided to supplement these gaps.

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

Conciseness5/5

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

Two sentences: first defines the core action, second provides usage context and a failure condition. Front-loaded and efficient with no wasted words.

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

Completeness3/5

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

Lacks information about the success response format (e.g., return of template ID). For a creation tool with no output schema, the description should at least indicate what the agent can expect on success. The failure case is covered, but success context is missing.

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 each parameter described. The description adds limited value beyond the schema, such as an example for 'name' and the source for 'filePath'. Baseline is 3 since schema already documents all 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?

Description clearly states the action (create a new space page template from a local XML file) and the API endpoint. The phrase 'BSA заготовка' introduces jargon that may reduce clarity for general agents, but the overall purpose is distinct from 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?

Provides a specific use case ('Use after a new BSA заготовка exists...') but does not explicitly state when to avoid this tool or mention alternatives. Sibling tools like update/delete/list are present but not referenced.

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

confluence_deleteSpaceTemplateA
DestructiveIdempotent

DESTRUCTIVE. Delete one TempStream/space Create template (DELETE /rest/experimental/template/{id}). ALWAYS stop and get explicit human approval in chat first — never invent confirm. Requires confirm="DELETE" and confirmName=exact template name. No trash restore; archive dump first.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoTemplate name or substring if id unknown
confirmYesPass only after human approved in this chat. Exact string DELETE (not true/yes).
spaceKeyYesSpace key, e.g. TempStream
templateIdNoSpace template ID to delete
confirmNameYesExact template name from listSpaceTemplates; must match the resolved template or delete is refused

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already set destructiveHint=true, but description adds critical context: the need for human approval, the confirm parameter constraint, and the lack of trash restore. 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?

Description is concise (3 sentences) and front-loads the key point (DESTRUCTIVE, human approval). Some redundancy in repeating the confirm requirement across sentences, but overall 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 5 params, no output schema, and annotations, the description covers essential behavioral traits and usage constraints. Lacks detail on return value or error cases, but sufficient for agent decision-making.

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 coverage is 100%, but description adds meaning to 'confirm' (must be literal 'DELETE', not just boolean) and 'confirmName' (exact template name from listSpaceTemplates). Enhances understanding beyond schema descriptions.

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

Purpose5/5

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

The description clearly states the tool deletes one space template, using a specific API endpoint, and distinguishes itself from sibling tools like 'confluence_deleteSpaceTemplates' (plural). The verb 'delete' and resource 'space template' are explicit.

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?

Provides explicit guidance: always stop and get human approval, never invent confirm, requires confirm='DELETE' and confirmName=exact template name. Also warns about no trash restore and advises archiving first. Clearly states when and how to use.

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

confluence_deleteSpaceTemplatesA
DestructiveIdempotent

DESTRUCTIVE. Delete several space Create templates by id. ALWAYS get explicit human approval in chat first. Requires confirm="DELETE" and confirmNames[] exact names (same order as templateIds). Continues on per-item errors. Archive dump first.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmYesPass only after human approved in this chat. Exact string DELETE (not true/yes).
spaceKeyYesSpace key, e.g. TempStream
templateIdsYesTemplate IDs to delete, e.g. ["104005670","110428188"]
confirmNamesYesExact template names, same length/order as templateIds

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already include destructiveHint:true, idempotentHint:true. The description adds crucial behavioral details not in annotations: it starts with 'DESTRUCTIVE', requires human approval, details the confirmation mechanism, notes continuation on errors, and recommends an archive dump. 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 very concise (five sentences) with no wasted words. It is front-loaded with 'DESTRUCTIVE' to immediately signal danger. Each sentence conveys essential information: action, approval requirement, confirmation mechanics, error behavior, and precaution.

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 covers the key aspects: destructive nature, human approval, parameter specifics, error handling, and a precaution (archive dump). It lacks return value description but that is not expected without output schema. Adequate for safe invocation.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3. The description adds value beyond schema by explaining that confirm must be the exact string 'DELETE' (not true/yes), and confirmNames must match templateIds in order and be exact names. This clarifies parameter semantics.

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

Purpose5/5

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

The description clearly states the action (delete), the resource (space Create templates), and the scope (several by id). It effectively distinguishes from siblings like 'deleteSpaceTemplate' (singular) and other space template operations.

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

Usage Guidelines4/5

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

The description provides explicit guidance: it requires human approval, specifies confirmation parameters (confirm='DELETE', confirmNames), and mentions error handling (continues on per-item errors). However, it does not explicitly compare to alternatives like the singular delete tool.

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

confluence_getSpaceTemplateToFileA

Download a space page template body.storage to a local XML file. Requires spaceKey (GET by id alone 404s on DC). Identify by templateId and/or exact/partial name.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoTemplate name or substring, e.g. CR-XXX-BRD
filePathYesAbsolute path to write storage XML
spaceKeyYesSpace key, e.g. TempStream
templateIdNoSpace template ID, e.g. 227016711 for CR-XXX-BRD

TDQS

A4.2/5.0
Behavior3/5

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

With no annotations, the description must fully disclose behavior. It mentions the 404 issue and identification methods but does not discuss file overwrite behavior, authentication needs, or rate limits. 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?

Two sentences: first defines the action, second adds usage constraints. No redundant words. Front-loaded with essential information.

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

Completeness4/5

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

Covers main action, required parameters, identification, and a known issue. No output schema but output is a file. Missing details like whether file overwrites or appends. Nearly complete for a straightforward download tool.

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 100% coverage with descriptions. The description adds context that templateId and name can be used together and that name supports substring matching. Also clarifies filePath as absolute path. Adds value beyond schema.

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

Purpose5/5

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

Clearly states verb 'download', resource 'space page template body.storage', and output 'local XML file'. Distinguishes from siblings by being the only template download to file tool. Also provides identification methods and a specific constraint (GET by id alone 404s on DC).

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?

Description explains required spaceKey and identification via templateId/exact/partial name, and warns about a 404 issue. However, it does not explicitly compare with alternative tools like confluence_getStorageToFile or specify when to use this over others.

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

confluence_getStorageToFileB

Download Confluence page body.storage XML to a local file for surgical edits (large templates). Returns version/title/path. Prefer this over stuffing huge storage into chat.

ParametersJSON Schema
NameRequiredDescriptionDefault
filePathYesAbsolute path to write storage XML (e.g. /Users/.../Betcity/_tmp_brd.xml)
contentIdYesConfluence page ID

TDQS

B3.3/5.0
Behavior2/5

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

No annotations exist, so the description must fully disclose behavior. It states the tool downloads XML to a local file and returns version/title/path, but it does not mention whether the file will be overwritten, what permissions are needed, or any side effects. For a download tool, these are basic behavioral details that are missing.

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

Conciseness5/5

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

The description is extremely concise with three short sentences: first states the action, second lists return values, third provides usage guidance. No redundant words; every sentence 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 no annotations and no output schema, the description provides core information (purpose, return values, one use case) but lacks details on error handling, file overwrite behavior, and prerequisites. For a simple download tool, it is minimally complete but could be more thorough.

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 clear descriptions for both parameters (contentId and filePath). The description adds no additional meaning beyond the schema, so the baseline of 3 is appropriate.

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

Purpose4/5

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

Clearly states the tool downloads Confluence page body.storage XML to a local file for surgical edits. The verb 'Download' and resource 'page body.storage XML' are specific, and the mention of 'surgical edits (large templates)' adds context. However, it does not explicitly differentiate from related read tools like confluence_getSpaceTemplateToFile, though the sibling list includes that tool.

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?

Provides implicit guidance: 'Prefer this over stuffing huge storage into chat' suggests when to use this tool (for large templates) but does not explicitly state when not to use or list alternatives. The sibling tools are named but not mentioned in the description, so an agent must infer context based on tool names.

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

confluence_listSpaceTemplatesA

List space page templates via /rest/experimental/template/page (DC). Use spaceKey=TempStream for ДРП Create from template. Optional nameContains filter. Does not expand body by default (fast).

ParametersJSON Schema
NameRequiredDescriptionDefault
spaceKeyYesSpace key, e.g. TempStream
expandBodyNoIf true, expand body (slow). Default false.
nameContainsNoCase-insensitive substring filter on template name

TDQS

A4.3/5.0
Behavior4/5

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

Discloses that body is not expanded by default for speed, and that expandBody option makes it slow. No annotations exist, so description carries full burden; this is adequate but could mention 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?

Three sentences, efficiently conveying purpose, usage hint, and key behavioral note. No unnecessary 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?

Lacks description of return format, pagination, or error conditions. For a list tool with no output schema, more detail on what is returned would improve completeness.

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 coverage is 100% and description adds context: example for spaceKey, nature of nameContains filter, and behavioral effect of expandBody. Adds value beyond schema.

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

Purpose5/5

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

Clearly states 'List space page templates' with specific verb and resource, and includes API endpoint for precision. Distinct from sibling tools which focus on update, move, delete, 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?

Provides specific use case (spaceKey=TempStream for ДРП Create from template) and mentions optional nameContains filter. Does not explicitly exclude alternative tools, but sibling list provides context.

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

confluence_movePageA

Move (reparent) a Confluence Data Center page under a new parent. Uses PUT /rest/api/content/{id} with ancestors. Does not change page body.

ParametersJSON Schema
NameRequiredDescriptionDefault
parentIdYesID of the new parent page
contentIdYesID of the page to move
versionCommentNoOptional Confluence version comment for the move

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 full disclosure burden. It mentions the API endpoint and that body is unchanged, but omits authorization needs, versioning behavior, or side effects on children pages.

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?

Two sentences with no filler, but could add a bit more detail without becoming verbose.

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 3 parameters (2 required), no output schema, and no annotations, the description is minimal. It would benefit from mentioning response structure or prerequisites.

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 new parameter-level details beyond naming the API. The baseline of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the action ('Move (reparent)'), the resource ('a Confluence Data Center page'), and the target ('under a new parent'). It distinctly separates from siblings like 'confluence_movePages' (plural) and other storage-related tools.

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

Usage Guidelines4/5

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

The description explicitly mentions the API method and that the page body is unchanged, implying a structural move. However, it does not contrast with 'confluence_movePages' or provide explicit when-to-use/when-not-to-use guidance.

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

confluence_movePagesA

Move several Confluence pages under new parents, sequentially. Each item reports success/error.

ParametersJSON Schema
NameRequiredDescriptionDefault
movesYesList of move operations
versionCommentNoOptional version comment applied to each successful move

TDQS

A3.5/5.0
Behavior2/5

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

No annotations provided. Description mentions sequential execution and per-item success/error, but lacks details on rollback behavior, error handling, authentication needs, or destructive consequences.

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 efficient sentences with no redundant information. Front-loaded with purpose and key behavioral trait.

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 batch move with full schema coverage, but lacks details on error handling, atomicity, and prerequisites. Without output schema, more behavioral context would be helpful.

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% description coverage for both parameters. Description adds no param-specific meaning beyond what schema already provides; baseline 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?

Clearly states the verb 'move', resource 'Confluence pages', and scope 'several' and 'sequentially'. Distinguishes from sibling tool 'confluence_movePage' which moves a single page.

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?

Implied usage for batch moves, but no explicit when-to-use vs alternatives like 'confluence_movePage', nor any prerequisites or exclusions.

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

confluence_syncPageToSpaceTemplateB

Fast path: copy body.storage from a BSA/page contentId into a TempStream space template (Create from template snapshot). Example: contentId=259706536 (Заготовка BRD) → templateId=227016711 (CR-XXX-BRD) spaceKey=TempStream.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoTarget template name if id unknown
spaceKeyYesTarget space key, usually TempStream
contentIdYesSource page ID (BSA заготовка)
templateIdNoTarget space template ID
descriptionNoReplace template description entirely
descriptionSuffixNoAppend/replace trailing sync note, e.g. "(синхрон с BSA 2.25: хаб + дети US)"

TDQS

B3.3/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 mentions copying body.storage but does not clarify whether it creates or updates a template, what happens to other fields, or if the operation is destructive. The term 'Create from template snapshot' is ambiguous.

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

Conciseness4/5

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

The description is one sentence plus an example, front-loading the key action. It is efficient, though it uses domain-specific acronyms (BSA, TempStream) that may reduce clarity for some users.

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

Completeness2/5

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

No output schema exists, so the description should hint at return values or error conditions. It does not. The tool has 6 parameters but only 2 are required; the purpose of optional parameters like name, description, descriptionSuffix is not explained.

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 documented. The description adds a helpful example but does not elaborate on parameter meaning beyond the schema. 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 verb 'copy' and the resource 'body.storage from a BSA/page contentId into a TempStream space template'. It provides a concrete example with specific IDs, making the purpose unambiguous and distinct from sibling tools like create/update from file or list templates.

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 'fast path' use case but does not explicitly state when to use this tool versus alternatives like createSpaceTemplateFromFile or updateSpaceTemplateFromFile. No when-not-to-use guidance is provided.

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

confluence_updateSpaceTemplateFromFileA

Update a space page template body from a local storage XML file via PUT /rest/experimental/template. Preserves labels by default. BSA page remains source of truth — this publishes a snapshot for Create from template. To rename: pass templateId + new name (id alone is used for lookup).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoTemplate name (used to find and/or rename)
filePathYesAbsolute path to storage XML
spaceKeyYesSpace key, e.g. TempStream
keepLabelsNoKeep existing labels (default true)
templateIdNoSpace template ID
descriptionNoNew description; default keep current

TDQS

A4.3/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: preserves labels by default, BSA page remains source of truth, and renaming works via templateId and name. It does not mention error states or prerequisites, but covers the most relevant behavioral aspects.

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

Conciseness5/5

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

The description is three sentences, each serving a purpose: action/endpoint, default behavior and source-of-truth note, and renaming tip. No filler or redundancy.

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

Completeness3/5

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

Given 6 parameters and no output schema, the description covers the essential behavioral and usage points but omits details about the description parameter and potential error conditions. It is adequate for most use cases but not exhaustive.

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?

Input schema has 100% description coverage, so the schema already documents each parameter. The description adds value by clarifying the renaming pattern (templateId + name) and confirming default for keepLabels. This extra guidance goes 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 'Update', the resource 'space page template body', and the source 'local storage XML file'. It also distinguishes itself by noting that the BSA page remains the source of truth, which differentiates it from other template operations.

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

Usage Guidelines4/5

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

The description gives context on when to use this tool (publishing a snapshot for Create from template) and mentions a specific usage for renaming. However, it does not explicitly compare to sibling tools or 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_updateStorageFromFileA

Publish page body from a local storage XML file via the Confluence proxy (same auth as confluence-dc). Auto-increments version unless you pass version (= current+1). Pass content as-is — do not re-escape entities. Optional parentId to reparent in the same PUT.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleNoNew title (default: keep current)
versionNoNew version number; must be current+1. Omit to auto-bump.
filePathYesAbsolute path to storage XML file
parentIdNoOptional new parent page ID (reparent + body update)
contentIdYesConfluence page ID
versionCommentNoConfluence version 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 carries full burden. It discloses auto-incrementing version behavior, the constraint that version must be current+1, the requirement to not re-escape entities, and optional reparenting. However, it omits failure modes or response details.

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

Conciseness5/5

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

Three sentences, each with value: purpose and auth, version behavior, content handling and optional parentId. No redundant words, front-loaded with key information.

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

Completeness2/5

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

Missing output schema and no mention of return values or success/error behavior. For a tool with 6 parameters and no annotations, the description should at least hint at what the response contains (e.g., updated page, version number). This gap reduces completeness.

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 coverage is 100%, but the description adds meaningful behavioral context for version (auto-bump rule) and parentId (reparenting). It also warns about not re-escaping file content. This adds value beyond the schema descriptions.

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

Purpose5/5

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

The description clearly states the tool publishes page body from a local storage XML file via the Confluence proxy, using specific verbs and resources. It distinguishes from sibling tools like movePage and getStorageToFile, which have different purposes.

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 updating page body from storage XML but does not explicitly guide when to use this tool versus alternatives like getStorageToFile or template tools. No exclusion criteria or when-not advice is provided.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 11 tool updatesv1.3.0
    • First observedconfluence_createSpaceTemplateFromFile
    • First observedconfluence_deleteSpaceTemplate
    • First observedconfluence_deleteSpaceTemplates
    • First observedconfluence_getSpaceTemplateToFile
    • First observedconfluence_getStorageToFile
    • First observedconfluence_listSpaceTemplates
    • First observedconfluence_movePage
    • First observedconfluence_movePages
    • First observedconfluence_syncPageToSpaceTemplate
    • First observedconfluence_updateSpaceTemplateFromFile
    • First observedconfluence_updateStorageFromFile

TDQS

A4/5.0
Disambiguation5/5

Every tool targets a distinct action and resource: storage file operations, page moving (single/multiple), and space template lifecycle (list, get, create, update, sync, delete). The destructive delete tools further differentiate with explicit approval requirements. No two tools cause confusion.

Naming Consistency5/5

All tool names follow a consistent 'confluence_verbNoun' pattern with camelCase after the underscore (e.g., confluence_updateStorageFromFile, confluence_movePages). The pattern is uniform and predictable, aiding agent selection.

Tool Count5/5

With 11 tools, the set is well-scoped for the domain of Confluence Data Center advanced operations, particularly around storage XML and space templates. Each tool serves a clear purpose without unnecessary overlap, making the count appropriate.

Completeness4/5

The tool surface covers the core workflows for managing storage XML files and space templates (CRUD, sync, move, delete). Minor gap: no tool to create a page from a template, but that aligns with the server's focus on template management rather than page creation. Overall, it's nearly complete for its stated purpose.

Maintenance

ActivityActive
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/iljasorokin/confluence-dc-advops-mcp'

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