Sign inSign up

guang1/confluence-mcp

By guang1

Updated about 1 year ago

Model Context Protocol Server Streamable HTTP/SSE/STDIO for Confluence

Image
Machine learning & AI
Developer tools
0

2.2K

guang1/confluence-mcp repository overview

confluence-mcp: Model Context Protocol Server Streamable HTTP/SSE for Confluence

Docker Pulls Docker Stars

What is confluence-mcp

This Model Context Protocol (MCP) server enables Large Language Models (LLMs) to interact with Confluence through a standardized API. It allows AI assistants to perform common Confluence operations without requiring direct API integration, making it easier to build AI-powered tools that work with your Confluence instance.

Supported MCP tools

The MCP server supports the following Confluence operations:

Page Operations
  • create_page: Create a new Confluence page
  • delete_page: Delete an existing page
  • get_page_by_id: Retrieve details of a specific page
  • update_page: Update an existing page
  • move_page_to_new_location: Move a page to a new location in the hierarchy
Search Operations
  • search_contents_by_cql: Search content using Confluence Query Language (CQL)
  • search_users_by_cql: Search for users using CQL

How to use this image

MCP Streamable HTTP/SSE
Simple usage
docker run -d --name confluence-mcp \
  -p 8080:8080 \
  -e atlassian.url=https://your-company.atlassian.net \
  -e atlassian.username=your-confluence-email \
  -e atlassian.pat=your-confluence-pat \
  guang1/confluence-mcp:latest
Using an Environment File

Create a configuration file (e.g., atlassian.config):

atlassian.url=https://your-company.atlassian.net
atlassian.username=your-confluence-email
atlassian.pat=your-confluence-pat

Then run:

docker run -d --name confluence-mcp \
  -p 8080:8080 \
  --env-file atlassian.config \
  guang1/confluence-mcp:latest
Docker Compose for Streamable HTTP/SSE
Basic Example
services:
  confluence:
    container_name: confluence-mcp
    image: guang1/confluence-mcp
    environment:
      - atlassian.url=https://your-company.atlassian.net
      - atlassian.username=your-confluence-email
      - atlassian.pat=your-confluence-pat
    ports:
      - "8080:8080"
    restart: always
With Environment File
services:
  confluence:
    container_name: confluence-mcp
    image: guang1/confluence-mcp
    env_file:
      - confluence.config
    ports:
      - "8080:8080"
    restart: always
MCP SSE URL

http://localhost:8080/mcp/sse

MCP Streamable HTTP URL

http://localhost:8080/mcp

MCP STDIO

Must pass quarkus.mcp.server.stdio.enabled=true, quarkus.log.console.enable=false and quarkus.log.console.stderr=false environment variables with -i interactive option.

Simple usage
docker run --rm \
  -e atlassian.url=https://your-company.atlassian.net \
  -e atlassian.username=your-confluence-email \
  -e atlassian.pat=your-confluence-pat \
  -e quarkus.mcp.server.stdio.enabled=true \
  -e quarkus.log.console.enable=false \
  -e quarkus.log.console.stderr=false \
  -i guang1/confluence-mcp:latest
Using an Environment File
docker run --rm --env-file=atlassian.config \
   -e quarkus.mcp.server.stdio.enabled=true \
   -e quarkus.log.console.enable=false \
   -e quarkus.log.console.stderr=false \
   -i guang1/confluence-mcp:latest
Claude Desktop Configuration (STDIO)

To use the Docker version with Claude Desktop, add this to your claude_desktop_config.json or server_config.json file:

Simple usage
{
  "mcpServers": {
    "confluence": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-e",
        "atlassian.url=https://your-company.atlassian.net",
        "-e",
        "atlassian.username=your-confluence-email",
        "-e",
        "atlassian.pat=your-confluence-pat",       
        "-e",
        "quarkus.log.console.enable=false",
        "-e",
        "quarkus.log.console.stderr=false",
        "-i",
        "guang1/confluence-mcp:latest"
      ]
    }
  }
}
Using an Environment File
{
  "mcpServers": {
    "confluence": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "--env-file=atlassian.conf",
        "-e",
        "quarkus.mcp.server.stdio.enabled=true",
        "-e",
        "quarkus.log.console.enable=false",
        "-e",
        "quarkus.log.console.stderr=false",
        "-i",
        "guang1/confluence-mcp:latest"
      ]
    }
  }
}

Configuration

Environment Variables
VariableDescriptionRequired
atlassian.urlatlassian instance URL (e.g., https://your-company.atlassian.net)Yes
atlassian.usernameatlassian account email addressYes
atlassian.patatlassian Personal Access Token (API Token)Yes
Creating a Confluence API Token

To generate a Personal Access Token for Confluence:

  1. Go to https://id.atlassian.com/manage-profile/security/api-tokens
  2. Click "Create API token"
  3. Give your token a name (e.g., "MCP Server")
  4. Copy the generated token for use with this MCP server

Security Considerations

⚠️ Warning: This MCP server requires authentication credentials with access to your Confluence instance. Consider the following security practices:

  • Create a dedicated Confluence service account with appropriate permissions
  • Regularly rotate your API token
  • Run the container in a secure, isolated environment
  • Use network security rules to restrict access to the MCP server
  • Be cautious about which operations you allow LLMs to perform

Example Use Cases

  • Create and update documentation based on natural language requests
  • Generate Confluence reports and summaries
  • Organize and restructure Confluence spaces and pages
  • Allow team members to interact with Confluence using conversational language

Troubleshooting

If you encounter issues:

  • Verify your API token has the required permissions
  • Check that your atlassian URL is correct and accessible
  • Ensure your atlassian username (email) is correct
  • Check container logs for detailed error information

Tag summary

Content type

Image

Digest

sha256:22e829a5e

Size

161.2 MB

Last updated

about 1 year ago

docker pull guang1/confluence-mcp