Jira CLI MCP Server

by choplin

9 stars
337 downloads
Not rated
GitHub

About

MCP server that wraps jira-cli to enable AI assistants to interact with Jira

Details

Author
choplin
GitHub stars
9
Downloads
337
Categories
Developer Tools

- Create new Jira tickets with customizable fields
- Search and list Jira tickets using JQL queries
- Get detailed ticket information including comments
- Update ticket descriptions with rich text formatting
- Add comments to tickets with Markdown support
- Assign tickets to the current user
- Move tickets between different statuses
- Open a Jira ticket in the default web browser

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Jira CLI MCP Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Install and configure jira-cli first, then install jira-cli-mcp via Homebrew, npm, or pre-compiled binary. Add the server to your AI assistant’s MCP configuration (e.g., Claude Desktop claude_desktop_config.json or Claude Code .claude/mcp.json) and restart the assistant.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "jira cli mcp server": {
            "jira-cli-mcp": {
                "command": "bun",
                "args": [
                    "run",
                    "build:prod"
                ]
            }
        }
    }
}

McpServers

{
    "jira-cli-mcp": {
        "command": "bun",
        "args": [
            "run",
            "build:prod"
        ]
    }
}
# Jira CLI MCP Server [![CI](https://github.com/choplin/jira-cli-mcp/actions/workflows/ci.yml/badge.svg)](https://github.com/choplin/jira-cli-mcp/actions/workflows/ci.yml) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![MCP](https://img.shields.io/badge/MCP-1.0-green.svg)](https://modelcontextprotocol.io) MCP (Model Context Protocol) server that wraps the `jira-cli` command-line tool to enable AI assistants to interact with Jira. ## Why jira-cli-mcp? If you're looking for a Jira MCP server, here's what makes jira-cli-mcp unique: - **🚀 Leverage Existing Tools** - Works seamlessly with your existing jira-cli setup and authentication - **🔒 Security-First** - No API tokens in config files; authentication handled by jira-cli - **🪶 Lightweight** - Just a Bun process, no Docker or containers required ### When to use mcp-atlassian instead? Choose [mcp-atlassian](https://github.com/sooperset/mcp-atlassian) if you: - Need **Confluence** support (we're Jira-only) - Prefer **Docker** deployment - Want a **self-contained** solution without CLI dependencies - Need **direct API** integration rather than CLI wrapping ## Features - **create_ticket** - Create new Jira tickets with customizable fields - **list_tickets** - Search and list Jira tickets using JQL queries - **get_ticket** - Get detailed ticket information including comments - **update_ticket_description** - Update ticket descriptions with rich text formatting - **add_comment** - Add comments to tickets with Markdown support - **assign_to_me** - Assign tickets to the current user - **move_ticket** - Move tickets between different statuses - **open_ticket_in_browser** - Open a Jira ticket in the default web browser ## Quick Start 1. Install and configure [jira-cli](https://github.com/ankitpokhrel/jira-cli) ([Installation guide](https://github.com/ankitpokhrel/jira-cli/wiki/Installation)): ```bash # Install jira-cli (macOS) brew install ankitpokhrel/jira-cli/jira-cli # Configure jira-cli with your Jira instance jira init ``` 2. Install jira-cli-mcp: ```bash brew tap choplin/jira-cli-mcp brew install jira-cli-mcp ``` 3. Add to Claude Desktop config (see [Setup](#setup-for-claude-desktop) below) ## Prerequisites - [jira-cli](https://github.com/ankitpokhrel/jira-cli) installed and authenticated - [Bun](https://bun.sh) runtime (only needed for development or if installing from source) ## Installation ### Option 1: Install via Homebrew (macOS/Linux) ```bash brew tap choplin/jira-cli-mcp brew install jira-cli-mcp ``` ### Option 2: Install via npm ```bash # Install globally with npm npm install -g @choplin/jira-cli-mcp # Or with Bun bun install -g @choplin/jira-cli-mcp ``` ### Option 3: Download Binary Download the pre-compiled binary for your platform from the [releases page](https://github.com/choplin/jira-cli-mcp/releases): - macOS (Apple Silicon): `jira-cli-mcp-darwin-arm64.tar.gz` - macOS (Intel): `jira-cli-mcp-darwin-x64.tar.gz` - Linux (x64): `jira-cli-mcp-linux-x64.tar.gz` - Linux (ARM64): `jira-cli-mcp-linux-arm64.tar.gz` ```bash # Example for macOS (Apple Silicon) tar -xzf jira-cli-mcp-darwin-arm64.tar.gz chmod +x jira-cli-mcp-darwin-arm64 sudo mv jira-cli-mcp-darwin-arm64 /usr/local/bin/jira-cli-mcp ``` ### Option 4: Build from Source ```bash git clone https://github.com/choplin/jira-cli-mcp.git cd jira-cli-mcp bun install bun run build:prod ``` ## Setup for Claude Desktop ### Option 1: Using Homebrew Installation (Recommended) If you installed via Homebrew (as shown in Quick Start), add to your `claude_desktop_config.json`: ```json { "mcpServers": { "jira-cli": { "command": "jira-cli-mcp" } } } ``` ### Option 2: Using npm Package Add to your `claude_desktop_config.json`: ```json { "mcpServers": { "jira-cli": { "command": "npx", "args": ["@choplin/jira-cli-mcp"] } } } ``` Or if installed globally: ```json { "mcpServers": { "jira-cli": { "command": "jira-cli-mcp" } } } ``` ### Option 3: Using Pre-compiled Binary (No Dependencies) 1. Download the binary for your platform from [releases](https://github.com/choplin/jira-cli-mcp/releases) 2. Extract and move to your PATH: ```bash tar -xzf jira-cli-mcp-darwin-arm64.tar.gz sudo mv jira-cli-mcp-darwin-arm64 /usr/local/bin/jira-cli-mcp ``` 1. Add to config: ```json { "mcpServers": { "jira-cli": { "command": "jira-cli-mcp" } } } ``` ### Option 4: Build from Source 1. Clone and run directly: ```bash git clone https://github.com/choplin/jira-cli-mcp.git cd jira-cli-mcp bun install ``` 1. Add to config: ```json { "mcpServers": { "jira-cli": { "command": "bun", "args": ["run", "/path/to/jira-cli-mcp/src/index.ts"] } } } ``` ### Configuration Location The config file is typically located at: - macOS: `~/Library/Application Support/Claude/claude_desktop_config.json` - Linux: `~/.config/Claude/claude_desktop_config.json` - Windows: `%APPDATA%\Claude\claude_desktop_config.json` ### Verification After setup, restart Claude Desktop and check if the MCP server is loaded by asking Claude about available Jira tools. ## Setup for Other AI Assistants ### Claude Code Claude Code has built-in support for MCP servers. To use jira-cli-mcp in your project: 1. First install jira-cli-mcp using one of the methods in the [Installation](#installation) section 2. Create a `.claude/mcp.json` file in your project root: ```json { "servers": { "jira-cli": { "command": "jira-cli-mcp" } } } ``` 1. Restart Claude Code and the MCP server will be automatically loaded You can then use Jira commands directly in your conversation, such as: - "List my open Jira tickets" - "Show me details for PROJ-123" - "Add a comment to PROJ-456" ### GitHub Copilot (VS Code) GitHub Copilot supports MCP servers in Visual Studio Code (version 1.99+): 1. First install jira-cli-mcp using one of the methods in the [Installation](#installation) section 2. Create `.vscode/mcp.json` in your repository: ```json { "servers": { "jira-cli": { "command": "jira-cli-mcp" } } } ``` 1. Open the `.vscode/mcp.json` file in VS Code and click the **[Start]** button to activate the server 2. In Copilot Chat: - Open Copilot Chat panel - Select "Agent" from the popup menu - Click the tools icon to see available MCP servers **Note**: MCP support in GitHub Copilot is currently in public preview. ## Development ### Running Tests ```bash # Run unit tests only bun test # Run all tests including integration tests bun run test:integration # Run integration tests with a specific test ticket JIRA_CLI_MCP_TEST_TICKET=PROJ-123 bun run test:integration ``` ### Environment Variables - `JIRA_CLI_PATH` - Custom path to jira-cli executable (default: "jira") #### Development Environment Variables - `JIRA_CLI_MCP_TEST_TICKET` - Ticket key for integration tests (required for non-listing integration tests) - `INTEGRATION_TEST=true` - Enable integration tests ### Type Checking ```bash bun run typecheck ``` ### Linting and Formatting ```bash bun run lint bun run format ``` ## Architecture - `src/tools/` - MCP tool implementations - `src/utils/` - Shared utilities and types - `tests/` - Unit tests with mocked jira-cli - `tests/integration/` - Integration tests with real jira-cli ## Notes - The server uses Atlassian Document Format (ADF) for rich text handling - Markdown input is automatically converted to ADF by jira-cli - All integration tests require proper jira-cli authentication ## Troubleshooting ### Common Issues 1. **"jira-cli not found" error** - Ensure jira-cli is installed: `which jira` - If using a custom path, set `JIRA_CLI_PATH` environment variable 2. **Authentication errors** - Run `jira me` to verify authentication - Re-authenticate with `jira init` if needed 3. **MCP server not showing in Claude Desktop** - Verify the config file path is correct - Ensure the path in config uses absolute paths, not relative - Restart Claude Desktop after config changes 4. **Permission errors on macOS** - Grant terminal/Claude Desktop full disk access in System Preferences - Ensure jira-cli has necessary permissions ### Debug Mode To see detailed logs, you can run the server manually: ```bash cd /path/to/jira-cli-mcp bun run src/index.ts ``` ## License This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.