An open API service indexing awesome lists of open source software.

https://github.com/varunkumar/atlassian-mcp


https://github.com/varunkumar/atlassian-mcp

Last synced: 8 months ago
JSON representation

Awesome Lists containing this project

README

          

# Atlassian MCP Server

A read-only Model Context Protocol (MCP) server for Atlassian products (Confluence and Jira).

## Installation

```bash
pip install -e .
```

## Configuration

Set your Atlassian credentials as environment variables:

```bash
export ATLASSIAN_DOMAIN=your-company.atlassian.net
export ATLASSIAN_EMAIL=your-email@company.com

# Separate tokens for each service (recommended)
export ATLASSIAN_CONFLUENCE_TOKEN=your-confluence-token
export ATLASSIAN_JIRA_TOKEN=your-jira-token

# OR for backward compatibility, single token (if it has access to both)
export ATLASSIAN_API_TOKEN=your-api-token
```

### Creating API Tokens

1. Go to: https://id.atlassian.com/manage-profile/security/api-tokens
2. Click "Create API token"

**For Confluence:**

- When creating a Confluence token, select these scopes:
- `read:content:confluence` - View pages, blog posts, comments, attachments
- `read:content-details:confluence` - View content metadata and properties

**For Jira:**

- When creating a Jira token, you'll see different scope options. Look for:
- Scopes that allow **reading issues** and **projects**
- **Search** capabilities for JQL queries
- Basic **browse** permissions

> **Note:** The exact scope names may vary in the Atlassian interface. Choose the minimal read-only scopes that allow viewing issues, projects, and searching. If you're unsure, you can start with broader read permissions and restrict them later.

## Usage

Start the MCP server:

```bash
atlassian-mcp
```

## Available Tools

### Confluence

- **confluence_get_page** - Get a page by ID
- **confluence_get_page_by_url** - Get a page by URL
- **confluence_search_pages** - Search for pages
- **confluence_list_spaces** - List all spaces

### Jira

- **jira_get_issue** - Get an issue by key (e.g., PROJ-123)
- **jira_get_issue_by_url** - Get an issue by URL
- **jira_search_issues** - Search issues using JQL
- **jira_list_projects** - List all projects

## Supported URLs

### Confluence Pages

- `https://domain.atlassian.net/wiki/spaces/SPACE/pages/123456/Page+Title`
- `https://domain.atlassian.net/wiki/display/SPACE/Page+Title?pageId=123456`
- `https://domain.atlassian.net/wiki/pages/viewpage.action?pageId=123456`

### Jira Issues

- `https://domain.atlassian.net/browse/PROJ-123`
- `https://domain.atlassian.net/jira/software/projects/PROJ/boards/1?selectedIssue=PROJ-123`

## MCP Client Configuration

```json
{
"mcpServers": {
"atlassian": {
"command": "python",
"args": ["-m", "atlassian_mcp.server"],
"cwd": "/path/to/your/atlassian_mcp",
"env": {
"ATLASSIAN_DOMAIN": "your-company.atlassian.net",
"ATLASSIAN_EMAIL": "your-email@company.com",
"ATLASSIAN_CONFLUENCE_TOKEN": "your-confluence-token",
"ATLASSIAN_JIRA_TOKEN": "your-jira-token"
}
}
}
}
```

### API Endpoints Used

This server uses the following Atlassian REST API endpoints:

**Confluence REST API:**

- `GET /wiki/rest/api/content/{id}` - Get page content
- `GET /wiki/rest/api/content/search` - Search pages using CQL
- `GET /wiki/rest/api/space` - List spaces

**Jira REST API v3:**

- `GET /rest/api/3/issue/{issueIdOrKey}` - Get issue details
- `GET /rest/api/3/search` - Search issues using JQL
- `GET /rest/api/3/project` - List projects

All endpoints are read-only and require basic authentication with your email and API token.