Confluence
About
Integrate with Atlassian Confluence to access spaces, search pages, and manage content from any MCP-compatible application.
Details
- Author
- dsazz
- Categories
- Productivity, Other, Knowledge Base, Search
- Tags
- #confluence
Jump to
Setup
Install Confluence in your MCP client (Claude Desktop, Cursor, Windsurf, and others).
Repository: https://github.com/dsazz/mcp-confluence
Follow the installation instructions in the repository README, then restart your MCP client.
📚Access Confluence Directly From Your Editor
- Browse your Confluence spaces without leaving your IDE
- Get detailed page information with formatted content
- Navigate page hierarchies with child page discovery
- Create, update, and manage Confluence content directly
- Search pages using text queries or advanced CQL (Confluence Query Language)
- Support for space filtering, content type filtering, and result ordering
- Rich markdown formatting with page previews and direct links
- Renamedconfluence_search_pagestoconfluence_searchfor simplicity
- Automatic conversion of Confluence's storage format to readable markdown
- Support for formatted text, tables, macros, and attachments
- Full CRUD operations for page management
- Strategic workflow tools for better user experience
The easiest way to use this MCP server is to install it directly via npm/bunx. No local setup required!
Add this configuration to your Claude Desktop MCP settings:
{ "mcpServers": { "Confluence Tools": { "command": "bunx", "args": ["-y", "@dsazz/mcp-confluence@latest"], "env": { "CONFLUENCE_HOST_URL": "https://your-domain.atlassian.net", "CONFLUENCE_USER_EMAIL": "your-email@example.com", "CONFLUENCE_API_TOKEN": "your-confluence-api-token" } } } }
Add this configuration to your Cursor IDE MCP settings:
{ "mcpServers": { "Confluence Tools": { "command": "bunx", "args": ["-y", "@dsazz/mcp-confluence@latest"], "env": { "CONFLUENCE_HOST_URL": "https://your-domain.atlassian.net", "CONFLUENCE_USER_EMAIL": "your-email@example.com", "CONFLUENCE_API_TOKEN": "your-confluence-api-token" } } } }
Use this configuration pattern for any MCP-compatible client:
{ "mcpServers": { "Confluence Tools": { "command": "bunx", "args": ["-y", "@dsazz/mcp-confluence@latest"], "env": { "CONFLUENCE_HOST_URL": "https://your-domain.atlassian.net", "CONFLUENCE_USER_EMAIL": "your-email@example.com", "CONFLUENCE_API_TOKEN": "your-confluence-api-token" } } } }
If you prefer npx over bunx, you can also use:
{ "mcpServers": { "Confluence Tools": { "command": "npx", "args": ["-y", "@dsazz/mcp-confluence@latest"], "env": { "CONFLUENCE_HOST_URL": "https://your-domain.atlassian.net", "CONFLUENCE_USER_EMAIL": "your-email@example.com", "CONFLUENCE_API_TOKEN": "your-confluence-api-token" } } } }
- Restart your MCP client (Claude Desktop, Cursor, etc.)
- Try this command to test the connection:
Show me my Confluence spaces.
That's it! You're ready to use Confluence directly from your MCP client.
# Clone the repository git clone https://github.com/Dsazz/mcp-confluence.git cd mcp-confluence # Install dependencies bun install # Build the project bun run build # Set up environment variables cp .env.example .env # Edit .env with your Confluence credentials
Create a.envfile with the following variables:
CONFLUENCE_HOST_URL=https://your-domain.atlassian.net CONFLUENCE_USER_EMAIL=your-email@example.com CONFLUENCE_API_TOKEN=your-confluence-api-token NODE_ENV=development
The project usesBiomefor code formatting and linting, replacing the previous ESLint setup. Biome provides:
- Fast, unified formatting and linting
- TypeScript-first tooling
- Zero configuration needed
- Consistent code style enforcement
# Format code bun format # Check code for issues bun check # Type check bun typecheck
The MCP Inspector is a powerful tool for testing and debugging your MCP server.
# Run the inspector (no separate build step needed) bun run inspect
- Loads environment variables from.env
- Cleans up occupied ports (5175, 3002)
- Builds the project when needed
- Starts the MCP server with your configuration
- Launches the inspector UI
Visit the inspector athttp://localhost:5175?proxyPort=3002
- View all available MCP capabilities
- Execute tools and examine responses
- Analyze the JSON communication
- Test with different parameters
For more details, see the[MCP Inspector GitHub repository.
Theconfluence_get_spacestool supports these parameters:
- type: String ("global"or"personal", optional) - Filter by space type
- limit: Number (1-100, default: 25) - Maximum number of spaces to return
- start: Number (default: 0) - Pagination offset for large result sets
# Basic usage - get all accessible spaces confluence_get_spaces # Get only global spaces confluence_get_spaces type:"global" limit:10 # Pagination example confluence_get_spaces start:25 limit:25
Theconfluence_get_pagetool supports these parameters:
- pageId: String - The ID of the page to retrieve
- includeContent: Boolean (default: true) - Include full page content
- includeComments: Boolean (default: false) - Include comment count
- expand: String (optional) - Additional fields to expand (comma-separated)
# Basic usage with content confluence_get_page 12345 # Get page without content confluence_get_page 12345 includeContent:false # Get page with comments and extra data confluence_get_page 12345 includeComments:true expand:"version,space"
Theconfluence_searchtool supports both simple and advanced search:
- query: String - Text search query (searches titles and content)
- spaceKey: String (optional) - Limit search to specific space
- type: String ("page"or"blogpost", optional) - Content type filter
- query: String - Full CQL query for advanced searches
- Examples:text~"specific phrase",type=page AND space.key="DEV"
- limit: Number (1-100, default: 25) - Maximum number of results
- start: Number (default: 0) - Pagination offset
- orderBy: String ("relevance","created","modified","title") - Sort order
# Simple text search confluence_search query:"project documentation" # Search in specific space confluence_search query:"API guide" spaceKey:"DEV" # Advanced CQL search confluence_search query:'text~"user guide" AND type=page' # Search with custom ordering confluence_search query:"meeting notes" orderBy:"modified" limit:10
Page Creation(confluence_create_page):
- spaceId: String - The ID of the space where the page will be created
- title: String - The title of the new page
- content: String - The content of the page (supports Confluence storage format)
- parentPageId: String (optional) - The ID of the parent page
- status: String ("current"or"draft", default:"current") - Page status
- pageId: String - The ID of the page to update
- title: String (optional) - New title for the page
- content: String (optional) - New content for the page
- versionNumber: Number - Current version number of the page
- versionMessage: String (optional) - Message describing the changes
# Create a new page confluence_create_page spaceId:"123456" title:"New Documentation" content:"<p>Initial content</p>" # Update an existing page confluence_update_page pageId:"789012" title:"Updated Title" content:"<p>Updated content</p>" versionNumber:2 # Get child pages for navigation confluence_get_child_pages pageId:"123456" limit:10
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





