Jira MCP Server
by InfinitIQ-Tech
A Model Context Protocol (MCP) server for interacting with Jira's REST API. It integrates with Claude Desktop and other MCP clients, allowing you to interact with Jira using natural language commands.
Last updated: N/A
Jira MCP Server
A Model Context Protocol (MCP) server for interacting with Jira's REST API using the jira-python
library. This server integrates with Claude Desktop and other MCP clients, allowing you to interact with Jira using natural language commands.
Features
- Get all accessible Jira projects
- Get details for a specific Jira issue
- Search issues using JQL (Jira Query Language)
- Create new Jira issues
- Add comments to issues
- Get available transitions for an issue
- Transition issues to new statuses
Installation
Prerequisites
- Python 3.9 or higher
- A Jira instance (Cloud, Server, or Data Center)
- uv (optional but recommended for dependency management)
Activate a virtual environment (recommended)
# Install a Virtual Environment (VENV) in the mcp server directory
python -m venv .
# Activate the virtual environment
source bin/activate
Using uv (recommended)
# Install uv if you don't have it
pip install uv
# Install the Jira MCP server
uv pip install mcp-server-jira
Using pip
pip install mcp-server-jira
Configuration
Environment Variables
Configure the server using environment variables:
JIRA_SERVER_URL
: URL of your Jira serverJIRA_AUTH_METHOD
: Authentication method ('basic_auth' or 'token_auth')JIRA_USERNAME
: Username for basic authJIRA_PASSWORD
: Password for basic authJIRA_TOKEN
: API token or Personal Access Token
Environment File (Local Development)
You can also create a .env
file in the root directory with your configuration:
JIRA_SERVER_URL=https://your-jira-instance.atlassian.net
JIRA_AUTH_METHOD=basic_auth
[email protected]
JIRA_TOKEN=your_api_token
Usage
Command Line
python -m mcp_server_jira
Docker
docker build -t mcp-jira .
docker run --env-file .env -p 8080:8080 mcp-jira
Claude Desktop Integration
To use this server with Claude Desktop:
- Install the server using one of the methods above
- In Claude Desktop:
- Go to Settings -> Developer
- Click Edit Config
- Open the json configuraiton in your editor of choice
- Add the following JSON:
(
NOTE
: The environment variables used are for token Auth and will not work with other authentication methods)
{
"mcpServers": {
"jira": {
"command": "<PATH TO UV> i.e. /Users/<MYUSERNAME>/.local/bin/uv",
"args": [
"--directory",
"<PATH TO JIRA MCP>",
"run",
"mcp-server-jira"
],
"env": {
"JIRA_SERVER_URL": "https://<ORG>.atlassian.net/",
"JIRA_AUTH_METHOD": "token_auth",
"JIRA_USERNAME": "<USERNAME>",
"JIRA_TOKEN": "<TOKEN>"
}
}
}
}
- Now you can interact with Jira by asking Claude questions like:
- "Show me all my projects in Jira"
- "Get details for issue PROJECT-123"
- "Create a new bug in the PROJECT with summary 'Fix login issue'"
- "Find all open bugs assigned to me"
Authentication
The server supports multiple authentication methods:
Basic Authentication
For Jira Server/Data Center with username and password:
JIRA_SERVER_URL="https://jira.example.com"
JIRA_AUTH_METHOD="basic_auth"
JIRA_USERNAME="your_username"
JIRA_PASSWORD="your_password"
API Token (Jira Cloud)
For Jira Cloud using an API token:
JIRA_SERVER_URL="https://your-domain.atlassian.net"
JIRA_AUTH_METHOD="basic_auth"
JIRA_USERNAME="[email protected]"
JIRA_TOKEN="your_api_token"
Personal Access Token (Jira Server/Data Center)
For Jira Server/Data Center (8.14+) using a PAT:
JIRA_SERVER_URL="https://jira.example.com"
JIRA_AUTH_METHOD="token_auth"
JIRA_TOKEN="your_personal_access_token"
Available Tools
get_projects
: Get all accessible Jira projectsget_issue
: Get details for a specific Jira issue by keysearch_issues
: Search for Jira issues using JQLcreate_issue
: Create a new Jira issueadd_comment
: Add a comment to a Jira issueget_transitions
: Get available workflow transitions for a Jira issuetransition_issue
: Transition a Jira issue to a new status
License
MIT