JIRA MCP Server

JIRA MCP Server

Enables AI assistants to search, view, create, and update JIRA issues using natural language commands and JQL queries.

Category
Visit Server

README

JIRA MCP Server

A Model Context Protocol (MCP) server that provides JIRA integration capabilities. This server allows AI assistants to search, view, create, and update JIRA issues using natural language.

Features

  • Search Issues: Search for JIRA issues using JQL (JIRA Query Language)
  • Get Issue Details: Retrieve detailed information about specific issues
  • Create Issues: Create new JIRA issues with customizable fields
  • Update Issues: Update existing issues including status transitions

Installation

npm install

Configuration

The server requires three environment variables:

  • JIRA_URL: Your JIRA instance URL (e.g., https://your-domain.atlassian.net)
  • JIRA_EMAIL: Your JIRA account email
  • JIRA_API_TOKEN: Your JIRA API token

Getting a JIRA API Token

  1. Log in to https://id.atlassian.com/manage-profile/security/api-tokens
  2. Click "Create API token"
  3. Give it a label and copy the token

Setup for Claude Desktop

Add this to your Claude Desktop configuration file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "jira": {
      "command": "npx",
      "args": ["-y", "jira-mcp-server"],
      "env": {
        "JIRA_URL": "https://your-domain.atlassian.net",
        "JIRA_EMAIL": "your-email@example.com",
        "JIRA_API_TOKEN": "your-api-token-here"
      }
    }
  }
}

Alternatively, if running locally:

{
  "mcpServers": {
    "jira": {
      "command": "node",
      "args": ["O:\\projects\\jira-mcp\\index.js"],
      "env": {
        "JIRA_URL": "https://your-domain.atlassian.net",
        "JIRA_EMAIL": "your-email@example.com",
        "JIRA_API_TOKEN": "your-api-token-here"
      }
    }
  }
}

Available Resources

The MCP server exposes JIRA data as resources that can be listed and read:

jira://search?jql={query}

Search for JIRA issues using JQL queries.

Example URIs:

  • jira://search?jql=project=ST AND status=Open
  • jira://search?jql=project=ST AND type=Task AND component in (BuildReq, ValidationReq) AND status=Open ORDER BY priority DESC
  • jira://search?jql=assignee=currentUser() AND status!=Done

jira://issue/{issueKey}

Get detailed information about a specific issue.

Example URIs:

  • jira://issue/ST-123
  • jira://issue/PROJ-456

Available Tools

jira_search

Search for JIRA issues using JQL.

Parameters:

  • jql (required): JQL query string
  • maxResults (optional): Maximum results to return (default: 50)
  • startAt (optional): Starting index for pagination (default: 0)
  • fields (optional): Array of field names to return

Example:

Search for all open bugs in the PROJ project

jira_get_issue

Get detailed information about a specific issue.

Parameters:

  • issueKey (required): Issue key (e.g., "PROJ-123")
  • fields (optional): Array of field names to return

Example:

Get details for issue PROJ-123

jira_create_issue

Create a new JIRA issue.

Parameters:

  • projectKey (required): Project key
  • summary (required): Issue title
  • issueType (required): Issue type (e.g., "Task", "Bug", "Story")
  • description (optional): Issue description
  • priority (optional): Priority level
  • assignee (optional): Assignee account ID
  • labels (optional): Array of labels

Example:

Create a new bug in project PROJ with summary "Login page not working"

jira_update_issue

Update an existing JIRA issue.

Parameters:

  • issueKey (required): Issue key to update
  • summary (optional): New summary
  • description (optional): New description
  • priority (optional): New priority
  • assignee (optional): New assignee account ID
  • labels (optional): New labels array
  • status (optional): New status (triggers transition)

Example:

Update issue PROJ-123 to set status to "In Progress"

Usage Examples

After configuring the server in Claude Desktop, you can use natural language commands like:

  • "Search for all issues in the PROJ project that are in progress"
  • "Show me details for issue PROJ-123"
  • "Create a new task in PROJ with title 'Update documentation'"
  • "Update PROJ-456 and set its status to Done"

Running as an SSE Server

The server now runs as an HTTP server using Server-Sent Events (SSE) transport. This allows it to be used by any MCP client that supports SSE connections.

Start the Server

# Set environment variables
export JIRA_URL="https://your-domain.atlassian.net"
export JIRA_EMAIL="your-email@example.com"
export JIRA_API_TOKEN="your-api-token-here"

# Start the server
npm start

Or with a custom port:

PORT=8080 npm start

SSE Endpoints

Once running, the server exposes:

  • SSE Connection: GET http://localhost:3000/sse - Main SSE endpoint for MCP communication
  • Message Endpoint: POST http://localhost:3000/message - Endpoint for sending messages to the server
  • Health Check: GET http://localhost:3000/health - Server health status

Connecting MCP Clients

To connect an MCP client to the SSE server, use the SSE endpoint URL:

http://localhost:3000/sse

Testing the Server

You can test if the server is running:

# Health check
curl http://localhost:3000/health

# Response: {"status":"ok","server":"jira-mcp-server"}

Development

The server follows the Model Context Protocol specification and supports SSE transport for HTTP-based communication.

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured