Skip to content

[Feature]: Add support for reading and setting Confluence page layout width #1086

Description

@Troubladore

Is your feature request related to a problem? Please describe.

Confluence pages can be displayed in different layout widths: full-width, default, or max. These are controlled via the content-appearance-published and content-appearance-draft content properties. When agents create technical documentation with wide tables, code blocks, or diagrams, the default narrow layout often clips or wraps content awkwardly. There's currently no way to read or set page width through MCP tools, so agents produce pages that don't look right until a human manually adjusts the layout.

Describe the solution you'd like

Add a page_width field to the ConfluencePage model and integrate width into existing page operations:

  1. Read: get_page_content() extracts the current width from content properties and includes it in the response as page_width.
  2. Create: create_page() accepts an optional page_width parameter to set layout on creation.
  3. Update: update_page() accepts an optional page_width parameter to change layout.

Supported values: "full-width", "default", "max", or null (not set / use Confluence default)

The implementation uses Confluence's existing content properties API (content-appearance-published and content-appearance-draft), setting both to keep published and draft views consistent.

Describe alternatives you've considered

  • Expose raw content properties API :: too low-level. Agents would need to know the exact property key names and update semantics. The point of MCP tools is to abstract that away.
  • Read-only support only :: useful but incomplete. If an agent can see the width is wrong but can't fix it, that's frustrating.
  • Document a manual workaround :: doesn't scale. Every agent interaction that creates pages would need the user to follow up and adjust layout.

Use Case

  • Technical documentation: Pages with wide tables, architecture diagrams, or code blocks benefit from full-width layout.
  • Template consistency: Organizations with page templates can ensure agents create pages with the correct layout.
  • Page migrations: When moving or recreating content between spaces, preserving layout preferences avoids manual cleanup.

Additional Context

I have an implementation ready and will submit a PR. It adds private _get_page_width() and _set_page_width() methods to the pages mixin, with version-aware property updates (increments the property version number for existing properties). Includes 10 unit tests covering get, set, validation and edge cases. No new dependencies required.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions