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
Jump to
- 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:
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.
# Jira CLI MCP Server
[](https://github.com/choplin/jira-cli-mcp/actions/workflows/ci.yml)
[](https://opensource.org/licenses/MIT)
[](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.
Social sign-in isn’t configured yet. You can still create an account with email below, or ask an admin to add Google/GitHub/Discord OAuth credentials.
A collection of reference implementations for the Model Context Protocol (MCP), demonstrating secure and controlled access to tools and data sources for Large…