Provides tools for searching, viewing, creating, and updating JIRA issues using JQL queries, including status transitions, field updates, and detailed issue management.
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
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 emailJIRA_API_TOKEN: Your JIRA API token
Getting a JIRA API Token
Log in to https://id.atlassian.com/manage-profile/security/api-tokens
Click "Create API token"
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
Alternatively, if running locally:
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=Openjira://search?jql=project=ST AND type=Task AND component in (BuildReq, ValidationReq) AND status=Open ORDER BY priority DESCjira://search?jql=assignee=currentUser() AND status!=Done
jira://issue/{issueKey}
Get detailed information about a specific issue.
Example URIs:
jira://issue/ST-123jira://issue/PROJ-456
Available Tools
jira_search
Search for JIRA issues using JQL.
Parameters:
jql(required): JQL query stringmaxResults(optional): Maximum results to return (default: 50)startAt(optional): Starting index for pagination (default: 0)fields(optional): Array of field names to return
Example:
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:
jira_create_issue
Create a new JIRA issue.
Parameters:
projectKey(required): Project keysummary(required): Issue titleissueType(required): Issue type (e.g., "Task", "Bug", "Story")description(optional): Issue descriptionpriority(optional): Priority levelassignee(optional): Assignee account IDlabels(optional): Array of labels
Example:
jira_update_issue
Update an existing JIRA issue.
Parameters:
issueKey(required): Issue key to updatesummary(optional): New summarydescription(optional): New descriptionpriority(optional): New priorityassignee(optional): New assignee account IDlabels(optional): New labels arraystatus(optional): New status (triggers transition)
Example:
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
Or with a custom port:
SSE Endpoints
Once running, the server exposes:
SSE Connection:
GET http://localhost:3000/sse- Main SSE endpoint for MCP communicationMessage Endpoint:
POST http://localhost:3000/message- Endpoint for sending messages to the serverHealth 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:
Testing the Server
You can test if the server is running:
Development
The server follows the Model Context Protocol specification and supports SSE transport for HTTP-based communication.
License
MIT
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Enables AI assistants to search, view, create, and update JIRA issues using natural language commands and JQL queries.