Confluence-MCP-Server
Confluence MCP Server allows seamless integration with Confluence's REST API, providing features like space management and content searching. It requires Python 3.8+ and a valid Confluence API token for operation.
Confluence MCP Server
A FastMCP-based server that provides seamless integration with Confluence's REST API, enabling programmatic access to Confluence spaces, pages, and content search functionality.
Key Features
- Space Management: List and filter Confluence spaces
- Page Operations: Retrieve and manage page content
- Search Functionality: Execute CQL (Confluence Query Language) searches
- Space Navigation: List all pages within specific spaces
- Authentication: Secure API token-based access
System Requirements
- Python 3.8+
- pip (Python package manager)
- Active Confluence instance with API access
- Valid Confluence API token
Installation
Installing via Smithery
To install confluence-mcp-server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @MahithChigurupati/confluence-mcp-server --client claude
Manual Installation
-
Clone the Repository
git clone https://github.com/MahithChigurupati/Confluence-MCP-Server.git cd Confluence-MCP-Server
-
Set Up Virtual Environment (Recommended)
python -m venv venv source venv/bin/activate # On macOS/Linux # or .\venv\Scripts\activate # On Windows
-
Install Dependencies
pip install -r requirements.txt
Configuration
-
Create Environment File
cp .env.example .env
-
Configure Environment Variables
CONFLUENCE_BASE_URL=https://your-instance.atlassian.net/wiki/rest/api USERNAME=your.email@company.com API_TOKEN=your-api-token-here
-
Obtain Confluence API Token
- Visit Atlassian API Tokens
- Click "Create API Token"
- Enter a meaningful label (e.g., "MCP Server Access")
- Copy the generated token immediately (it won't be shown again)
Usage Guide
Starting the Server
python confluence.py
Available API Methods
1. List Spaces
response = await list_spaces(
query="engineering", # Optional: Filter spaces by name
limit=25, # Optional: Maximum number of spaces to return
start=0 # Optional: Starting index for pagination
)
2. Get Page Content
response = await get_page_content(
page_id="123456", # Required: Confluence page ID
version=2 # Optional: Specific version number
)
3. Search Content
response = await search_content(
query="project plan", # Required: Search query
space_key="TEAM", # Optional: Limit search to specific space
limit=50, # Optional: Maximum results
start=0 # Optional: Starting index
)
4. List Pages in Space
response = await list_pages_in_space(
space_key="TEAM", # Required: Space key
limit=100, # Optional: Maximum pages to return
start=0 # Optional: Starting index
)
Integration with MCP Clients
Claude Desktop Configuration
{
"mcpServers": {
"confluence": {
"command": "python path",
"args": ["/path/to/Confluence-MCP-Server/confluence.py"]
}
}
}
Location: ~/.claude/claude_desktop_config.json
(macOS/Linux) or %USERPROFILE%\.claude\config.json
(Windows)
Cursor Configuration
{
"mcpServers": {
"confluence": {
"command": "python path",
"args": ["/path/to/Confluence-MCP-Server/confluence.py"]
}
}
}
use which python
to find python path
use pwd
inside cloned repository to get the path. Don't forget to add confluence.py
in the end.
Location: ~/.cursor/mcp.json
(macOS/Linux) or %USERPROFILE%\.cursor\config.json
(Windows)
Error Handling
Common error codes and their meanings:
401
: Invalid API token or credentials403
: Insufficient permissions404
: Resource not found429
: Rate limit exceeded
Troubleshooting
-
Connection Issues
- Verify CONFLUENCE_BASE_URL format
- Check network connectivity
- Confirm API token validity
-
Authentication Errors
- Ensure USERNAME matches Atlassian account email
- Verify API_TOKEN is correctly copied
- Check for special characters in .env file
-
Permission Errors
- Confirm user has required Confluence permissions
- Verify space and page access rights
Support
For issues and feature requests, please create an issue in the repository's issue tracker.
License
MIT License. See LICENSE
file for full terms.