Skip to main content
Glama

Confluence MCP

by cosmix
README.md4.26 kB
# Confluence MCP A Model Context Protocol (MCP) server for Confluence, enabling AI assistants to interact with Confluence content through a standardized interface. ℹ️ There is a separate MCP server [for Jira](https://github.com/cosmix/jira-mcp) ## Features - Authenticate to Confluence using a personal API token - Retrieve and search Confluence pages and spaces - Create and update Confluence content - Retrieve and add comments to pages - Retrieve and add attachments to pages - Clean and transform Confluence content for AI consumption - Handle API communication, error handling, and data transformation - Basic rate limiting to prevent API abuse ## Prerequisites - [Bun](https://bun.sh) (v1.0.0 or higher) - Confluence account with API access ## Installation ```bash # Clone the repository git clone https://github.com/cosmix/confluence-mcp.git cd confluence-mcp # Install dependencies bun install # Build the project bun run build ``` ## Configuration To use this MCP server, you need to set the following environment variables: ``` CONFLUENCE_API_TOKEN=your_api_token CONFLUENCE_BASE_URL=your_confluence_instance_url # e.g., https://your-domain.atlassian.net/wiki CONFLUENCE_USER_EMAIL=your_email ``` ### Claude Desktop / Cline Configuration Add this configuration to your settings file: ```json { "mcpServers": { "confluence": { "command": "bun", "args": ["/absolute/path/to/confluence-mcp/dist/index.js"], "env": { "CONFLUENCE_API_TOKEN": "your_api_token", "CONFLUENCE_BASE_URL": "your_confluence_instance_url/wiki", "CONFLUENCE_USER_EMAIL": "your_email" } } } } ``` ## Development ```bash # Run in development mode bun run dev # Run tests bun test ``` ## Available Tools The Confluence MCP server exposes the following tools: ### get_page Retrieve a Confluence page by ID. Format refers to the return format of the content and can be `text` or `markdown`. The `includeMarkup` parameter allows retrieving the original Confluence Storage Format (XHTML) markup, which is useful for updating pages while preserving formatting. ```json { "pageId": "123456", "format": "text", "includeMarkup": true } ``` ### search_pages Search for Confluence pages using CQL (Confluence Query Language). Format refers to the return format of the content and can be `text` or `markdown`. The `includeMarkup` parameter allows retrieving the original Confluence Storage Format (XHTML) markup for each page. ```json { "query": "space = DEV and label = documentation", "limit": 10, "format": "text", "includeMarkup": true } ``` ### get_spaces List all available Confluence spaces. ```json { "limit": 50 } ``` ### create_page Create a new Confluence page. The `parentId` is optional and can be used to create a child page under an existing page. ```json { "spaceKey": "DEV", "title": "New Page Title", "content": "<p>Page content in Confluence Storage Format (XHTML)</p>", "parentId": "123456" } ``` ### update_page Update an existing Confluence page. ```json { "pageId": "123456", "title": "Updated Page Title", "content": "<p>Updated content in Confluence Storage Format (XHTML)</p>", "version": 1 } ``` ### get_comments Retrieve comments for a specific Confluence page. Format refers to the return format of the content and can be `text` or `markdown`. ```json { "pageId": "123456", "limit": 25, "format": "text" } ``` ### add_comment Add a comment to a Confluence page. The `parentId` is optional for creating threaded replies. ```json { "pageId": "123456", "content": "<p>This is a new comment.</p>", "parentId": "789012" } ``` ### get_attachments Retrieve attachments for a specific Confluence page. ```json { "pageId": "123456", "limit": 25 } ``` ### add_attachment Add an attachment to a Confluence page. The `fileContentBase64` should be the base64 encoded string of the file content. ```json { "pageId": "123456", "filename": "document.pdf", "fileContentBase64": "JVBERi0xLjQKJeLjz9MKMSAwIG9iago8PC9UeXBlL0NhdGFsb2cvUGFnZXMgMiAwIFI+P...", "comment": "Uploaded new version of the document" } ``` ## LICENCE This project is licensed under the MIT License - see the [LICENCE](LICENCE) file for details.

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/cosmix/confluence-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server