home / mcp / confluence mcp server

Confluence MCP Server

Node.js/TypeScript MCP server for Atlassian Confluence. Provides tools enabling AI systems (LLMs) to list/get spaces & pages (content formatted as Markdown) and search via CQL. Connects AI seamlessly to Confluence knowledge bases using the standard MCP interface.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "aashari-mcp-server-atlassian-confluence": {
      "command": "npx",
      "args": [
        "-y",
        "@aashari/mcp-server-atlassian-confluence"
      ],
      "env": {
        "ATLASSIAN_API_TOKEN": "your_api_token",
        "ATLASSIAN_SITE_NAME": "your-company",
        "ATLASSIAN_USER_EMAIL": "[email protected]"
      }
    }
  }
}

Connect MCP lets you plug Confluence knowledge into your AI assistants, enabling natural language queries, space-wide searches, and content workflows directly from Claude, Cursor AI, and other MCP-enabled agents. You can ask questions about your documentation, find pages across spaces, and create or update content without leaving your chat or editor.

How to use

You connect your AI assistant to Confluence through a small MCP server. Once linked, you can ask questions like what are our security practices, search across multiple spaces in one go, and retrieve or update Confluence content through natural language prompts. Use the MCP server as a bridge between your Confluence instance and your AI assistant, so responses pull directly from your team’s documentation.

How to install

Prerequisites you need before starting:

  • Node.js 18.0.0 or higher
  • NPM installed with Node.js

Step-by-step setup to run the MCP server locally and connect your AI assistant:

# Install the MCP server globally
npm install -g @aashari/mcp-server-atlassian-confluence

# Start in STDIO mode for Claude Desktop integration (example from configuration)
npx -y @aashari/mcp-server-atlassian-confluence

Additional configuration and usage notes

Configure credentials to access Confluence. You can provide credentials via environment variables, a project .env file, or a system-wide config file.

# Example environment variables (shown in config usage)
export ATLASSIAN_SITE_NAME="your-company"
export ATLASSIAN_USER_EMAIL="[email protected]"
export ATLASSIAN_API_TOKEN="your_api_token"

Environment and advanced configuration

You can also create a system-wide configuration file to set credentials for the MCP server. The server will read values from environment variables, a local .env file, or a shared config file.

# System-wide JSON config example
{
  "confluence": {
    "environments": {
      "ATLASSIAN_SITE_NAME": "your-company",
      "ATLASSIAN_USER_EMAIL": "[email protected]",
      "ATLASSIAN_API_TOKEN": "your_api_token"
    }
  }
}

Using HTTP mode for testing

If you want to test with HTTP, you can run the server in HTTP mode and interact with it via curl or your browser. The server defaults to listening at http://localhost:3000/mcp. You can change the port if needed.

PORT=8080 TRANSPORT_MODE=http npx -y @aashari/mcp-server-atlassian-confluence

Troubleshooting

If you encounter authentication errors, verify your Confluence API token permissions and that your site name is correct based on your Confluence URL.

Enable debug logging to get more details about requests and responses.

Testing & development

For quick testing and inspection, you can run the MCP server with a built-in inspector and test tools directly from the command line.

# Quick inspection workflow (example)
npm install -g @aashari/mcp-server-atlassian-confluence
npx @modelcontextprotocol/inspector node $(which mcp-atlassian-confluence)

Security considerations

The MCP server runs on your machine and uses your Confluence credentials. It does not transmit your data to third parties unless you configure external endpoints, so keep tokens and access restricted to trusted environments.

Notes on usage with AI assistants

Your AI assistant can query Confluence data, search across spaces, and retrieve or update content using natural language. Use the JMESPath filtering (jq parameter) to minimize the data returned and control token usage.

Available tools

conf_get

GET to any Confluence API endpoint to read data (spaces, pages, comments, etc.)

conf_post

POST to any Confluence endpoint to create resources (pages, comments, etc.)

conf_put

PUT to a Confluence endpoint to replace resources (update page/space data) with version control requirements

conf_patch

PATCH to a Confluence endpoint for partial updates (e.g., renaming a page, changing a field)

conf_delete

DELETE from a Confluence endpoint to remove resources