Skip to main content
Glama
abdoosalomov

Jira MCP Server

by abdoosalomov

Jira MCP Server 🚀

Custom MCP server for Agrobank's self-hosted Jira (itjira.agrobank.uz)

Setup

Option A — Run with Node

1. Install dependencies

npm install

2. Configure credentials

Edit the .env file:

JIRA_BASE_URL=https://itjira.agrobank.uz
JIRA_EMAIL=your.email@agrobank.uz
JIRA_PASSWORD=your_password

3a. Hook up Claude Desktop

Open Claude Desktop config:

  • Mac: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "jira": {
      "command": "node",
      "args": ["/absolute/path/to/mcp-servers/index.js"],
      "env": {
        "JIRA_BASE_URL": "https://itjira.agrobank.uz",
        "JIRA_EMAIL": "your.email@agrobank.uz",
        "JIRA_PASSWORD": "your_password"
      }
    }
  }
}

Restart Claude Desktop and you're good.

3b. Hook up Claude Code

One-liner via the CLI (user scope, available across all projects):

claude mcp add jira \
  -s user \
  -e JIRA_BASE_URL=https://itjira.agrobank.uz \
  -e JIRA_EMAIL=your.email@agrobank.uz \
  -e JIRA_PASSWORD=your_password \
  -- node /absolute/path/to/mcp-servers/index.js

Or drop it in ~/.claude.json manually:

{
  "mcpServers": {
    "jira": {
      "command": "node",
      "args": ["/absolute/path/to/mcp-servers/index.js"],
      "env": {
        "JIRA_BASE_URL": "https://itjira.agrobank.uz",
        "JIRA_EMAIL": "your.email@agrobank.uz",
        "JIRA_PASSWORD": "your_password"
      }
    }
  }
}

Check it loaded:

claude mcp list

Option B — Run with Docker

1. Build the image

docker build -t jira-mcp:latest .

Or with compose:

docker compose build

2a. Wire up Claude Desktop

MCP talks over stdio, so Claude Desktop spawns the container per session. Use -i --rm and pass env vars through:

{
  "mcpServers": {
    "jira": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "-e", "JIRA_BASE_URL",
        "-e", "JIRA_EMAIL",
        "-e", "JIRA_PASSWORD",
        "jira-mcp:latest"
      ],
      "env": {
        "JIRA_BASE_URL": "https://itjira.agrobank.uz",
        "JIRA_EMAIL": "your.email@agrobank.uz",
        "JIRA_PASSWORD": "your_password"
      }
    }
  }
}

Why this shape:

  • -i keeps stdin open (MCP needs JSON-RPC over stdio)

  • --rm cleans up when Claude Desktop closes the pipe

  • -e VAR (no =value) inherits from the env block — secrets never get baked into the image

  • No -t (no TTY) and no port mapping — pure stdio, no listener

Restart Claude Desktop.

2b. Wire up Claude Code

claude mcp add jira \
  -s user \
  -e JIRA_BASE_URL=https://itjira.agrobank.uz \
  -e JIRA_EMAIL=your.email@agrobank.uz \
  -e JIRA_PASSWORD=your_password \
  -- docker run -i --rm \
       -e JIRA_BASE_URL -e JIRA_EMAIL -e JIRA_PASSWORD \
       jira-mcp:latest

Verify:

claude mcp list

Related MCP server: jira-cli-mcp

Available Tools

Tool

Description

get_my_issues

Get all issues assigned to you (filter by status)

search_issues

Search by keyword or JQL

get_issue

Get full details of an issue (e.g. PROJ-123)

create_issue

Create a new issue or subtask (pass parentIssueKey for subtasks)

add_comment

Add a comment to an issue

get_transitions

See available status transitions

transition_issue

Change issue status (To Do → In Progress → Done)

get_projects

List all projects you have access to

update_issue

Update priority, summary, or description

get_current_user

Get the currently authenticated Jira user

Example prompts in Claude

  • "Show me my current Jira tasks"

  • "What issues do I have In Progress?"

  • "Get details of BANK-456"

  • "Create a subtask under MOBCORE-565 titled 'Fix login bug'"

  • "Add a comment to BANK-123: done with testing"

  • "Move BANK-789 to Done"

  • "Bump priority of BANK-100 to High"

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    An MCP server for interacting with self-hosted Jira instances using Personal Access Token (PAT) authentication. It enables users to perform CRUD operations on issues, search with JQL, manage comments, and list projects through the Jira REST API.
    12
    627 npm
    13
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    MCP server for interacting with Jira Cloud instances. Enables issue management, JQL queries, project and sprint management, and batch operations via natural language interfaces.
    206 npm
    4
    MIT
  • F
    license
    A
    quality
    C
    maintenance
    An async MCP server for JIRA integration, enabling AI assistants to search, create, and manage JIRA issues via JQL and other operations.
    6
    2
    -