A Go-based Model Context Protocol (MCP) server for integrating AI assistants with Atlassian Confluence. This tool provides a seamless interface for interacting with the Confluence API through the standardized MCP, enabling AI models to search, retrieve, create, and update Confluence content.
- Search Confluence pages and spaces
- Get page details and content
- Create new pages and spaces
- Update existing pages
- Manage page permissions and metadata
- Get page comments
- List spaces
There are several ways to install the Confluence MCP:
- Visit the GitHub Releases page
- Download the binary for your platform:
confluence-mcp_linux_amd64for Linuxconfluence-mcp_darwin_amd64for macOSconfluence-mcp_windows_amd64.exefor Windows
- Make the binary executable (Linux/macOS):
chmod +x confluence-mcp_* - Move it to your PATH (Linux/macOS):
sudo mv confluence-mcp_* /usr/local/bin/confluence-mcp
go install github.com/nguyenvanduocit/confluence-mcp@latest-
Pull the pre-built image from GitHub Container Registry:
docker pull ghcr.io/nguyenvanduocit/confluence-mcp:latest
-
Or build the Docker image locally:
docker build -t confluence-mcp .
The following environment variables are required for authentication:
ATLASSIAN_HOST=your_confluence_host
ATLASSIAN_EMAIL=your_email
ATLASSIAN_TOKEN=your_token
You can set these directly in environment variables or through a .env file for local development.
The Confluence MCP supports two transport methods:
This is the default transport method used by most MCP clients like Claude Desktop and Cursor.
For HTTP-based integrations, you can run the server with HTTP transport using the --http_port flag.
Add to your MCP configuration file:
{
"mcpServers": {
"confluence": {
"command": "/path/to/confluence-mcp",
"args": ["-env", "/path/to/.env"]
}
}
}{
"mcpServers": {
"confluence": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e", "ATLASSIAN_HOST=your_confluence_instance.atlassian.net",
"-e", "ATLASSIAN_EMAIL=your_email@example.com",
"-e", "ATLASSIAN_TOKEN=your_atlassian_api_token",
"ghcr.io/nguyenvanduocit/confluence-mcp:latest"
]
}
}
}For HTTP-based integrations, run the server with:
confluence-mcp --http_port 8080 --env .envThis will start the server at http://localhost:8080/mcp
Or with Docker:
docker run -p 8080:8080 \
-e ATLASSIAN_HOST=your_confluence_instance.atlassian.net \
-e ATLASSIAN_EMAIL=your_email@example.com \
-e ATLASSIAN_TOKEN=your_atlassian_api_token \
ghcr.io/nguyenvanduocit/confluence-mcp:latest \
--http_port 8080search_page- Search pages in Confluence using CQLget_page- Get Confluence page content and metadatacreate_page- Create new Confluence pagesupdate_page- Update existing Confluence pagesget_comments- Get comments from a Confluence pagelist_spaces- List Confluence spaces
In addition to the MCP server, confluence-mcp ships a standalone CLI binary (confluence-cli) for direct terminal use — no MCP client needed.
# Build locally
just install-cli
# Or with Go
go install github.com/nguyenvanduocit/confluence-mcp/cmd/confluence-cli@latest# Set credentials
export ATLASSIAN_HOST=your-instance.atlassian.net
export ATLASSIAN_EMAIL=you@example.com
export ATLASSIAN_TOKEN=your-api-token
# Or use a .env file
confluence-cli --env .env <command> [flags]| Command | Description |
|---|---|
search-page |
Search pages using CQL |
get-page |
Get page content and metadata |
create-page |
Create a new page |
update-page |
Update an existing page |
get-comments |
Get comments on a page |
list-spaces |
List all Confluence spaces |
# Search pages
confluence-cli search-page --query "space = DEV AND type = page"
# Get a page
confluence-cli get-page --id 123456
# Create a page
confluence-cli create-page --space DEV --title "My Page" --content "Hello World"
# Update a page
confluence-cli update-page --id 123456 --title "Updated Title" --content "New content"
# List spaces
confluence-cli list-spaces
# JSON output (pipe-friendly)
confluence-cli search-page --query "space = DEV" --output json | jq '.results[].title'Every command accepts:
--env string— Path to.envfile--output string— Output format:text(default) orjson
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
brew install nguyenvanduocit/tap/confluence-mcp