Jira MCP Server logo

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.

View on GitHub

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 server
  • JIRA_AUTH_METHOD: Authentication method ('basic_auth' or 'token_auth')
  • JIRA_USERNAME: Username for basic auth
  • JIRA_PASSWORD: Password for basic auth
  • JIRA_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:

  1. Install the server using one of the methods above
  2. 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>"
      }
    }
  }
}
  1. 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

  1. get_projects: Get all accessible Jira projects
  2. get_issue: Get details for a specific Jira issue by key
  3. search_issues: Search for Jira issues using JQL
  4. create_issue: Create a new Jira issue
  5. add_comment: Add a comment to a Jira issue
  6. get_transitions: Get available workflow transitions for a Jira issue
  7. transition_issue: Transition a Jira issue to a new status

License

MIT