Skip to main content
Glama

Confluence MCP Server

A Model Context Protocol (MCP) server that enables AI assistants to interact with Confluence, converting Markdown documents to professionally styled Confluence pages with Mermaid diagram support.

Features

  • πŸ”„ SSE Server: Real-time Server-Sent Events for live progress updates

  • πŸ“ Markdown to Confluence: Convert Markdown content to Confluence storage format

  • πŸ“Š Mermaid Diagrams: Render Mermaid diagrams as images in Confluence pages

  • 🎨 Professional Styling: Modern, clean page layouts

  • πŸ’Ύ Smart Caching: Local cache to link markdown files to Confluence pages

  • πŸ”’ Secure Authentication: Confluence API token authentication

  • ☁️ Fly.io Ready: Optimized for deployment on Fly.io

Related MCP server: Doc Scraper MCP Server

Tools Available

  • confluence_list_spaces - List all available Confluence spaces

  • confluence_list_pages - List pages in a specific space

  • confluence_create_page - Create new pages from Markdown content

  • confluence_update_page - Update existing pages with new content

  • confluence_delete_page - Delete pages and clean up cache

Quick Start

1. Installation

git clone <repository-url> cd confluence-mcp npm install

2. Configuration

Copy the example environment file and configure your Confluence credentials:

cp .env.example .env

Edit .env with your Confluence details:

CONFLUENCE_BASE_URL=https://your-domain.atlassian.net CONFLUENCE_USERNAME=your-email@domain.com CONFLUENCE_API_TOKEN=your-api-token MCP_API_KEY=your-mcp-api-key PORT=3001

3. Get Confluence API Token

  1. Go to Atlassian Account Settings

  2. Click "Create API token"

  3. Give it a label and copy the token

  4. Use your email as username and the token as password

4. Run the Server

# Development npm run dev # Production npm run build npm start

The server will be available at http://localhost:3001

Usage Examples

Create a Page from Markdown

# My Documentation This is a sample page with a Mermaid diagram: ```mermaid graph TD A[Start] --> B[Process] B --> C[End]

Some bold text and italic text.

The MCP server will: 1. Convert the Markdown to Confluence storage format 2. Render the Mermaid diagram as a PNG image 3. Create a professionally styled page 4. Cache the mapping for future updates ### Update an Existing Page When you update a markdown file, the server can automatically update the corresponding Confluence page using the cached mapping. ## API Endpoints ### SSE Endpoints - `GET /mcp` - Establish SSE connection for MCP protocol - `POST /messages` - Send MCP messages (requires sessionId) ### Health Check - `GET /health` - Server health status ## Deployment on Fly.io ### 1. Install Fly CLI ```bash # macOS brew install flyctl # Other platforms: https://fly.io/docs/getting-started/installing-flyctl/

2. Login and Initialize

fly auth login fly launch

3. Set Secrets

fly secrets set CONFLUENCE_BASE_URL=https://your-domain.atlassian.net fly secrets set CONFLUENCE_USERNAME=your-email@domain.com fly secrets set CONFLUENCE_API_TOKEN=your-api-token fly secrets set MCP_API_KEY=your-mcp-api-key

4. Deploy

fly deploy

Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ AI Assistant │◄──►│ MCP Server │◄──►│ Confluence β”‚ β”‚ β”‚ β”‚ (SSE/HTTP) β”‚ β”‚ API β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β–Ό β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ Local Cache β”‚ β”‚ (JSON file) β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Development

Project Structure

confluence-mcp/ β”œβ”€β”€ src/ β”‚ β”œβ”€β”€ index.ts # Entry point β”‚ β”œβ”€β”€ server.ts # MCP server with SSE support β”‚ β”œβ”€β”€ services/ β”‚ β”‚ β”œβ”€β”€ confluence-client.ts # Confluence API client β”‚ β”‚ β”œβ”€β”€ markdown-converter.ts # Markdown to Confluence converter β”‚ β”‚ └── mermaid-renderer.ts # Mermaid diagram renderer β”‚ β”œβ”€β”€ utils/ β”‚ β”‚ β”œβ”€β”€ cache.ts # Local cache management β”‚ β”‚ └── config.ts # Configuration management β”‚ └── types/ β”‚ └── index.ts # TypeScript type definitions β”œβ”€β”€ fly.toml # Fly.io configuration β”œβ”€β”€ package.json └── tsconfig.json

Building

npm run build

Testing

# Test health endpoint curl http://localhost:3001/health # Test SSE connection curl -N http://localhost:3001/mcp

Contributing

  1. Fork the repository

  2. Create a feature branch

  3. Make your changes

  4. Add tests if applicable

  5. Submit a pull request

License

MIT License - see LICENSE file for details

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

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/manateeit/confluence-mcp'

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