Confluence MCP Server

raw JSON →
1.3.0 verified Sat Apr 25 auth: no javascript

Confluence MCP Server (v1.3.0) is a Model Context Protocol server enabling AI agents to search, read, create, update, and upload attachments to Atlassian Confluence (Cloud, Server, Data Center). It provides 15+ tools including CQL search, page sections, anchor-based updates, and preview-confirm two-phase modification to reduce token usage and prevent conflicts. Unique features include section-level updates, Anchor macro support, and automatic version increment. Cloud uses Basic auth, Server supports Bearer or Basic. Requires Node 18+ and a Confluence instance.

error Error: CONF_MODE must be either 'cloud' or 'server'
cause Missing or invalid CONF_MODE environment variable.
fix
Set CONF_MODE to 'cloud' or 'server' in your MCP client config or environment.
error Error: Cannot read properties of undefined (reading 'start')
cause The default import is not a class; the module exports a function that returns an object with start().
fix
Use import confluenceMCP from 'confluence-mcp-server' and call confluenceMCP({...}).start()
error Error: invalid content type for attachment: must be 'multipart/form-data'
cause Using the wrong request format for attachment upload; the server expects multipart.
fix
Use confluence_upload_attachment with local file path or base64; the MCP server handles encoding.
breaking Node.js version < 18 is not supported; engine requirement is >=18
fix Upgrade Node.js to 18 or later.
deprecated confluence_update_page_section without confirmation (older versions) may cause silent overwrites
fix Use preview-confirm pattern: confluence_preview_page_section_update followed by confluence_update_page_section_confirmed.
gotcha Cloud mode requires CONF_USERNAME and CONF_TOKEN (API token), not password. Using CONF_PASSWORD will fail.
fix Set CONF_USERNAME to your email and CONF_TOKEN to your Confluence API token.
gotcha Server mode default auth is Bearer, not Basic. Set CONF_AUTH_MODE=basic to use password-based auth.
fix Configure CONF_AUTH_MODE=basic if using username/password for Confluence Server.
gotcha confluence_update_page_section and confirmed variants perform a full page read + write under the hood; each call counts as two API requests.
fix Use preview step to avoid unnecessary writes; batch updates when possible.
npm install confluence-mcp-server
yarn add confluence-mcp-server
pnpm add confluence-mcp-server

Initialize and start the Confluence MCP server with environment variables for authentication.

import confluenceMCP from 'confluence-mcp-server';

const server = confluenceMCP({
  mode: 'server',
  baseUrl: process.env.CONF_BASE_URL ?? 'https://confluence.example.com',
  username: process.env.CONF_USERNAME ?? '',
  token: process.env.CONF_TOKEN ?? ''
});

// start the MCP server
server.start().catch(console.error);