MCP ExplorerExplorer

Jira Mcp Server

@NoxFron a year ago
1 MIT
FreeCommunity
AI Systems
#kotlin#ktor#mcp#mcp-server
A server bridging Jira and MCP for data synchronization and interaction.

Overview

What is Jira Mcp Server

jira-mcp-server is a server that acts as a bridge between Jira and the Model Context Protocol (MCP). It allows synchronization and interaction with Jira data through an MCP interface.

Use cases

Use cases for jira-mcp-server include automating workflows by integrating Jira with other applications, real-time monitoring of Jira issues, and enabling custom applications to interact with Jira data through the MCP interface.

How to use

To use jira-mcp-server, you need to set up the required environment variables such as JIRA_URL, JIRA_EMAIL, and JIRA_API_TOKEN. You can then build and run the server using Docker Compose, making it accessible on port 3001.

Key features

Key features of jira-mcp-server include: integration with Jira for data synchronization, support for both SSE and stdio modes of MCP, built using Kotlin and Ktor for efficient API handling, and containerization with Docker for easy deployment.

Where to use

jira-mcp-server is suitable for software development environments where Jira is used for project management and tracking. It can be utilized in teams that require real-time data synchronization and interaction with Jira issues.

Content

Jira MCP Server

This project is a server that acts as a bridge between Jira and the MCP (Model Context Protocol). It allows synchronization and interaction with Jira data through an MCP interface.

Technologies Used

  • Kotlin: Main programming language
  • Ktor: Web framework for creating REST API
  • Gradle: Build system
  • Docker: Application containerization
  • MCP (Model Context Protocol): Communication protocol used for interoperability

Docker Packages

This project provides two Docker images that are built and pushed to the GitHub Container Registry:

  • jira-mcp-stdio: An image configured for stdio mode communication.
  • jira-mcp-sse: An image configured for SSE (Server-Sent Events) mode communication.

Note: These images are automatically built and pushed on updates to the main branch.

You can pull these images from the GitHub Container Registry using the following commands:

docker pull ghcr.io/noxfr/jira-mcp-stdio:latest
docker pull ghcr.io/noxfr/jira-mcp-sse:latest

Development prerequisites

  • Java 21 or higher
  • Docker and Docker Compose
  • A Jira account with appropriate permissions

Configuration

The project requires the following environment variables:

  • JIRA_URL: The URL of your Jira instance
  • JIRA_EMAIL: The email associated with your Jira account
  • JIRA_API_TOKEN: The Jira API token

2 MCP modes: SSE or stdio

Running Locally via Docker Compose

Here is an example configuration for docker-compose.yml:

services:
  jira-mcp-server:
    image: ghcr.io/noxfr/jira-mcp-sse:latest
    ports:
      - "3001:3001"
    environment:
      - JIRA_URL=https://your-instance.atlassian.net
      - [email protected]
      - JIRA_PAT=your_jira_api_token

Building and Running

To pull and run the pre-built Docker image:

# Pull the Docker image
docker pull ghcr.io/noxfr/jira-mcp-sse:latest

# Run the service with Docker Compose
docker-compose up

Alternatively, if you prefer to build the image locally:

# Build the Docker image
docker-compose build

# Start the service
docker-compose up

The server will be accessible on port 3001.

Adding MCP

Configuration within the IDE

HTTP (using jira-mcp-sse image)

{
  "mcpServers": {
    "mcp-kotlin-jira-server": {
      "url": "http://127.0.0.1:3001/sse"
    }
  }
}

Stdio (using jira-mcp-stdio image)

{
  "mcpServers": {
    "mcp-kotlin-jira-stdio": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e",
        "JIRA_URL",
        "-e",
        "JIRA_EMAIL",
        "-e",
        "JIRA_PAT",
        "ghcr.io/noxfr/jira-mcp-stdio:latest"
      ],
      "env": {
        "JIRA_URL": "TBD",
        "JIRA_EMAIL": "TBD",
        "JIRA_PAT": "TBD"
      }
    }
  }
}

Usage Examples with an AI Assistant

Here are examples of interactions with MCP via an AI assistant (like Claude Desktop or Cursor):

  • Fix all tickets in project XXX concerning label errors and set them to review
  • Suggest an implementation for ticket XXX
    etc.

Available Tools

The server exposes the following tools via MCP:

  • search_issues: Search JIRA issues using JQL.
  • get_issue: Get detailed information about a specific JIRA issue including comments.
  • update_issue: Update an existing JIRA issue.
  • get_transitions: Get available status transitions for a JIRA issue.
  • transition_issue: Change the status of a JIRA issue by performing a transition.
  • get_users: Search for JIRA users.
  • assign_issue: Assign a JIRA issue to a user.

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers