Model Context Protocol (MCP) server for Atlassian products (Confluence and Jira). This integration supports both Atlassian Cloud and Jira Server/Data Center deployments.
Product | Deployment Type | Support Status |
---|---|---|
Confluence | Cloud | âś… Fully supported |
Confluence | Server/Data Center | âś… Supported (version 7.9+) |
Jira | Cloud | âś… Fully supported |
Jira | Server/Data Center | âś… Supported (version 8.14+) |
First, generate 10000 the necessary authentication tokens:
- Go to https://id.atlassian.com/manage-profile/security/api-tokens
- Click Create API token, name it
- Copy the token immediately
- Go to your profile (avatar) → Profile → Personal Access Tokens
- Click Create token, name it, set expiry
- Copy the token immediately
Choose one of these installation methods:
# Install uv on macOS
brew install uv
# Run directly with uvx
uvx mcp-atlassian
pip install mcp-atlassian
git clone https://github.com/sooperset/mcp-atlassian.git
cd mcp-atlassian
docker build -t mcp/atlassian .
The integration supports using either Confluence, Jira, or both services. You only need to configure the service(s) you want to use.
Note: For all configuration methods, include only the environment variables needed for your services:
- For Confluence Cloud: Include
CONFLUENCE_URL
,CONFLUENCE_USERNAME
, andCONFLUENCE_API_TOKEN
- For Confluence Server/Data Center: Include
CONFLUENCE_URL
andCONFLUENCE_PERSONAL_TOKEN
- For Jira Cloud: Include
JIRA_URL
,JIRA_USERNAME
, andJIRA_API_TOKEN
- For Jira Server/Data Center: Include
JIRA_URL
andJIRA_PERSONAL_TOKEN
- For SSE transport: Add
--transport sse
and--port
arguments
View all configuration options
Setting | Environment Variable | CLI Argument | Cloud | Server/DC |
---|---|---|---|---|
Confluence | ||||
URL | CONFLUENCE_URL |
--confluence-url |
O | O |
CONFLUENCE_USERNAME |
--confluence-username |
O | X | |
API Token | CONFLUENCE_API_TOKEN |
--confluence-token |
O | X |
PAT | CONFLUENCE_PERSONAL_TOKEN |
--confluence-personal-token |
X | O |
Jira | ||||
URL | JIRA_URL |
--jira-url |
O | O |
JIRA_USERNAME |
--jira-username |
O | X | |
API Token | JIRA_API_TOKEN |
--jira-token |
O | X |
PAT | JIRA_PERSONAL_TOKEN |
--jira-personal-token |
X | O |
Common | ||||
SSL Verify | *_SSL_VERIFY |
--[no-]*-ssl-verify |
X | Optional |
Transport | - | --transport stdio|sse |
Optional | Optional |
Port | - | --port INTEGER |
Required for SSE | Required for SSE |
# For Cloud (stdio transport)
uvx mcp-atlassian \
--confluence-url=https://your.atlassian.net/wiki \
--confluence-username=email \
--confluence-token=token \
--jira-url=https://your.atlassian.net \
--jira-username=email \
--jira-token=token
# For Server/DC (SSE transport)
uvx mcp-atlassian \
--confluence-url=https://confluence.company.com \
--confluence-personal-token=token \
--jira-url=https://jira.company.com \
--jira-personal-token=token \
--transport sse \
--port 8000
- Open Cursor Settings
- Navigate to
Features
>MCP Servers
- Click
Add new MCP server
- For stdio transport, enter the configuration:
name: mcp-atlassian type: command command: uvx mcp-atlassian --confluence-url=https://your-domain.atlassian.net/wiki --confluence-username=email --confluence-token=token --jira-url=https://your-domain.atlassian.net --jira-username=email --jira-token=token
-
For SSE transport:
First, start the MCP server in a terminal:
uvx mcp-atlassian ... --transport sse --port 8000
Then configure Cursor to connect to it:
name: mcp-atlassian type: sse Server URL: http://localhost:8000/sse
Note: The SSE server must be running before you can connect Cursor to it.
- Switch to Agent mode in the Composer to use MCP tools
Using uvx
{
"mcpServers": {
"mcp-atlassian": {
"command": "uvx",
"args": ["mcp-atlassian"],
"env": {
"CONFLUENCE_URL": "https://your-domain.atlassian.net/wiki",
"CONFLUENCE_USERNAME": "your.email@domain.com",
"CONFLUENCE_API_TOKEN": "your_api_token",
"JIRA_URL": "https://your-domain.atlassian.net",
"JIRA_USERNAME": "your.email@domain.com",
"JIRA_API_TOKEN": "your_api_token"
}
}
}
}
For Confluence/Jira Server/Data Center:
{
"mcpServers": {
"mcp-atlassian": {
"command": "uvx",
"args": ["mcp-atlassian"],
"env": {
"CONFLUENCE_URL": "https://confluence.your-company.com",
"CONFLUENCE_PERSONAL_TOKEN": "your_personal_access_token",
"JIRA_URL": "https://jira.your-company.com",
"JIRA_PERSONAL_TOKEN": "your_personal_access_token"
}
}
}
}
Using pip
{
"mcpServers": {
"mcp-atlassian": {
"command": "python",
"args": ["-m", "mcp-atlassian"],
"env": {
"CONFLUENCE_URL": "https://your-domain.atlassian.net/wiki",
"CONFLUENCE_USERNAME": "your.email@domain.com",
"CONFLUENCE_API_TOKEN": "your_api_token",
"JIRA_URL": "https://your-domain.atlassian.net",
"JIRA_USERNAME": "your.email@domain.com",
"JIRA_API_TOKEN": "your_api_token"
}
}
}
}
Using docker
There are two ways to configure the Docker environment:
- Using environment variables directly in the config:
{
"mcpServers": {
"mcp-atlassian": {
"command": "docker",
"args": ["run", "--rm", "-i", "mcp/atlassian"],
"env": {
"CONFLUENCE_URL": "https://your-domain.atlassian.net/wiki",
"CONFLUENCE_USERNAME": "your.email@domain.com",
"CONFLUENCE_API_TOKEN": "your_api_token",
"JIRA_URL": "https://your-domain.atlassian.net",
"JIRA_USERNAME": "your.email@domain.com",
"JIRA_API_TOKEN": "your_api_token"
}
}
}
}
- Using an environment file:
{
"mcpServers": {
"mcp-atlassian": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"--env-file",
"/path/to/your/.env",
"mcp/atlassian"
]
}
}
}
The .env file should contain:
# Confluence Cloud
CONFLUENCE_URL=https://your-domain.atlassian.net/wiki # Your Confluence cloud URL
CONFLUENCE_USERNAME=your.email@domain.com # Your Atlassian account email
CONFLUENCE_API_TOKEN=your_api_token # API token for Confluence
# Confluence Server/Data Center (alternative to CONFLUENCE_USERNAME and CONFLUENCE_API_TOKEN)
# CONFLUENCE_URL=https://confluence.your-company.com # Your Confluence Server/Data Center URL
# CONFLUENCE_PERSONAL_TOKEN=your_personal_access_token # Personal Access Token for Confluence Server/Data Center
# CONFLUENCE_SSL_VERIFY=true # Set to 'false' for self-signed certificates
# Jira Cloud
JIRA_URL=https://your-domain.atlassian.net # Your Jira cloud URL
JIRA_USERNAME=your.email@domain.com # Your Atlassian account email
JIRA_API_TOKEN=your_api_token # API token for Jira Cloud
# Jira Server/Data Center (alternative to JIRA_USERNAME and JIRA_API_TOKEN)
# JIRA_URL=https://jira.your-company.com # Your Jira Server/Data Center URL
# JIRA_PERSONAL_TOKEN=your_personal_access_token # Personal Access Token for Jira Server/Data Center
# JIRA_SSL_VERIFY=true # Set to 'false' for self-signed certificates
Note: The MCP server filters resources to only show Confluence spaces and Jira projects that the user is actively interacting with, based on their contributions and assignments.
confluence://{space_key}
: Access Confluence spacesjira://{project_key}
: Access Jira projects
Tool | Description |
---|---|
confluence_search |
Search Confluence content using CQL |
confluence_get_page |
Get content of a specific Confluence page |
confluence_get_page_children |
Get child pages of a specific Confluence page |
confluence_get_page_ancestors |
Get parent pages of a specific Confluence page |
confluence_get_comments |
Get comments for a specific Confluence page |
confluence_create_page |
Create a new Confluence page |
confluence_update_page |
Update an existing Confluence page |
confluence_delete_page |
Delete an existing Confluence page |
jira_get_issue |
Get details of a specific Jira issue |
jira_search |
Search Jira issues using JQL |
jira_get_project_issues |
Get all issues for a specific Jira project |
jira_create_issue |
Create a new issue in Jira |
jira_update_issue |
Update an existing Jira issue |
jira_delete_issue |
Delete an existing Jira issue |
jira_get_transitions |
Get available status transitions for a Jira issue |
jira_transition_issue |
Transition a Jira issue to a new status |
jira_add_worklog |
Add a worklog entry to a Jira issue |
jira_get_worklog |
Get worklog entries for a Jira issue |
jira_link_to_epic |
Link an issue to an Epic |
jira_get_epic_issues |
Get all issues linked to a specific Epic |
If you've cloned the repository and want to run a local version:
{
"mcpServers": {
"mcp-atlassian": {
"command": "uv",
"args": [
"--directory", "/path/to/your/mcp-atlassian",
"run", "mcp-atlassian",
"--confluence-url=https://your-domain.atlassian.net/wiki",
"--confluence-username=your.email@domain.com",
"--confluence-token=your_api_token",
"--jira-url=https://your-domain.atlassian.net",
"--jira-username=your.email@domain.com",
"--jira-token=your_api_token"
]
}
}
}
-
MCP Inspector:
# For standard installation npx @modelcontextprotocol/inspector uvx mcp-atlassian # For development installation cd path/to/mcp-atlassian npx @modelcontextprotocol/inspector uv run mcp-atlassian
-
View logs:
tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
- Never share API tokens
- Keep .env files secure and private
- See SECURITY.md for best practices
Licensed under MIT - see LICENSE file. This is not an official Atlassian product.