Skip to main content
Glama

Upload Multiple Attachments

confluence_upload_attachments
Destructive

Upload multiple files to Confluence pages or blog posts in one operation, automatically creating new versions when duplicate filenames exist. Use it to bulk-add or batch-update attachments.

Instructions

Upload multiple attachments to Confluence content in a single operation.

More efficient than calling upload_attachment multiple times. If files with the same names exist, new versions are created automatically.

Useful for:

  • Bulk uploading documentation assets (diagrams, screenshots, etc.)

  • Adding multiple related files to a page at once

  • Batch updating existing attachments with new versions

Input Schema

NameRequiredDescriptionDefault
commentNo(Optional) Comment for all uploaded attachments. Visible in version history. Example: 'Q4 2024 batch upload'
content_idYesThe ID of the Confluence content (page or blog post) to attach files to. Example: '123456789'. If uploading multiple files with the same names, new versions will be created automatically.
file_pathsYesComma-separated list of file paths to upload. Can be absolute or relative paths. Examples: './file1.pdf,./file2.png' or 'C:\docs\report.docx,D:\image.jpg'. All files uploaded with same comment/minor_edit settings.
minor_editNo(Optional) Whether this is a minor edit. If true, watchers are not notified. Default is false.

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv1.4.1
    • addedInput schema / additionalProperties
      Added value: +false
    • removedOutput schema / description
      Removed value: -"Generic wrapper for non-object return types."
  2. Addedv1.0.1

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, idempotentHint=false, and openWorldHint=true; the description adds real context on top by explaining that same-name files produce new versions automatically, which is exactly the behavior an agent needs to reason about that destructive hint. It omits permission requirements, partial-failure behavior, and size limits, so it is not fully transparent.

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

Conciseness4/5

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

The key distinction and the versioning behavior are front-loaded in the first two sentences, with a short scenario list after. The bullet list is mildly redundant with the opening claim but each item maps to a genuine use case rather than filler.

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?

An output schema exists so return values need not be explained, and the description covers batching semantics and automatic versioning. For a destructive multi-file write it still leaves gaps around required Confluence permissions, file-size limits, and whether a partial failure aborts the whole batch.

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 every parameter is already documented with types, defaults, and examples. The description adds only a marginal clarification ('All files uploaded with same comment/minor_edit settings'), which is largely restated in the schema; baseline 3 applies.

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

Purpose5/5

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

States a specific verb and resource ('Upload multiple attachments to Confluence content in a single operation') and immediately distinguishes itself from the singular sibling by noting it is 'More efficient than calling upload_attachment multiple times.' An agent can pick between the two batch/single tools without opening either schema.

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 alternative (upload_attachment) is named with the condition that selects this tool (multiple files in one operation), and the 'Useful for' list gives concrete scenarios like bulk uploading diagrams or batch updating versions. It stops short of explicit exclusions — no guidance on file-count or size limits where the singular tool or a different path would be required.

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

Deploy Server

Other Tools