@sooperset/mcp-atlassian: MCP Atlassian

sooperset/mcp-atlassian
226

MCP Atlassian is a Model Context Protocol (MCP) server that integrates with Atlassian products like Confluence and Jira, supporting both Cloud and Server/Data Center deployments. It enables seamless interaction with Confluence spaces and Jira projects, offering tools for content search, issue management, and more.

unknown

Author

sooperset

README

MCP Atlassian

Model Context Protocol (MCP) server for Atlassian products (Confluence and Jira). This integration supports both Atlassian Cloud and Jira Server/Data Center deployments.

Feature Demo

Jira Demo

Confluence Demo

Confluence Demo

Compatibility

ProductDeployment TypeSupport Status
ConfluenceCloud✅ Fully supported
ConfluenceServer/Data Center✅ Supported (version 7.9+)
JiraCloud✅ Fully supported
JiraServer/Data Center✅ Supported (version 8.14+)

Setup Guide

1. Authentication Setup

First, generate the necessary authentication tokens:

For Atlassian Cloud

  1. Go to https://id.atlassian.com/manage-profile/security/api-tokens
  2. Click Create API token, name it
  3. Copy the token immediately

For Server/Data Center

  1. Go to your profile (avatar) → ProfilePersonal Access Tokens
  2. Click Create token, name it, set expiry
  3. Copy the token immediately

2. Installation

Choose one of these installation methods:

bash
# Install uv on macOS brew install uv # Run directly with uvx uvx mcp-atlassian

Using PIP

bash
pip install mcp-atlassian

Using Docker

bash
git clone https://github.com/sooperset/mcp-atlassian.git cd mcp-atlassian docker build -t mcp/atlassian .

3. Configuration

The integration supports using either Confluence, Jira, or both services. You only need to configure the service(s) you want to use.

Configuration Variables

Note: For all configuration methods, include only the environment variables needed for your services:

  • For Confluence Cloud: Include CONFLUENCE_URL, CONFLUENCE_USERNAME, and CONFLUENCE_API_TOKEN
  • For Confluence Server/Data Center: Include CONFLUENCE_URL and CONFLUENCE_PERSONAL_TOKEN
  • For Jira Cloud: Include JIRA_URL, JIRA_USERNAME, and JIRA_API_TOKEN
  • For Jira Server/Data Center: Include JIRA_URL and JIRA_PERSONAL_TOKEN
  • For SSE transport: Add --transport sse and --port arguments
View all configuration options
SettingEnvironment VariableCLI ArgumentCloudServer/DC
Confluence
URLCONFLUENCE_URL--confluence-urlOO
EmailCONFLUENCE_USERNAME--confluence-usernameOX
API TokenCONFLUENCE_API_TOKEN--confluence-tokenOX
PATCONFLUENCE_PERSONAL_TOKEN--confluence-personal-tokenXO
Jira
URLJIRA_URL--jira-urlOO
EmailJIRA_USERNAME--jira-usernameOX
API TokenJIRA_API_TOKEN--jira-tokenOX
PATJIRA_PERSONAL_TOKEN--jira-personal-tokenXO
Common
SSL Verify*_SSL_VERIFY--[no-]*-ssl-verifyXOptional
Transport---transport stdio|sseOptionalOptional
Port---port INTEGERRequired for SSERequired for SSE

Quick Start Examples

bash
# 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

4. IDE Integration

Cursor IDE Setup

  1. Open Cursor Settings
  2. Navigate to Features > MCP Servers
  3. Click Add new MCP server
  • For stdio transport, enter the configuration:
    yaml
    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

Image

  • For SSE transport:

    First, start the MCP server in a terminal:

    bash
    uvx mcp-atlassian ... --transport sse --port 8000

    Then configure Cursor to connect to it:

    yaml
    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.

Image

  1. Switch to Agent mode in the Composer to use MCP tools

image

Claude Desktop Setup

Using uvx
json
{ "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:

json
{ "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
json
{ "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:

  1. Using environment variables directly in the config:
json
{ "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" } } } }
  1. Using an environment file:
json
{ "mcpServers": { "mcp-atlassian": { "command": "docker", "args": [ "run", "--rm", "-i", "--env-file", "/path/to/your/.env", "mcp/atlassian" ] } } }

The .env file should contain:

env
# 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

Resources

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 spaces
  • jira://{project_key}: Access Jira projects

Available Tools

ToolDescription
confluence_searchSearch Confluence content using CQL
confluence_get_pageGet content of a specific Confluence page
confluence_get_page_childrenGet child pages of a specific Confluence page
confluence_get_page_ancestorsGet parent pages of a specific Confluence page
confluence_get_commentsGet comments for a specific Confluence page
confluence_create_pageCreate a new Confluence page
confluence_update_pageUpdate an existing Confluence page
confluence_delete_pageDelete an existing Confluence page
jira_get_issueGet details of a specific Jira issue
jira_searchSearch Jira issues using JQL
jira_get_project_issuesGet all issues for a specific Jira project
jira_create_issueCreate a new issue in Jira
jira_update_issueUpdate an existing Jira issue
jira_delete_issueDelete an existing Jira issue
jira_get_transitionsGet available status transitions for a Jira issue
jira_transition_issueTransition a Jira issue to a new status
jira_add_worklogAdd a worklog entry to a Jira issue
jira_get_worklogGet worklog entries for a Jira issue
jira_link_to_epicLink an issue to an Epic
jira_get_epic_issuesGet all issues linked to a specific Epic

Development & Debugging

Local Development Setup

If you've cloned the repository and want to run a local version:

json
{ "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" ] } } }

Debugging Tools

  • MCP Inspector:

    bash
    # 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:

    bash
    tail -n 20 -f ~/Library/Logs/Claude/mcp*.log

Security

  • Never share API tokens
  • Keep .env files secure and private
  • See SECURITY.md for best practices

License

Licensed under MIT - see LICENSE file. This is not an official Atlassian product.