Jira
Interact with Jira to manage issues, projects, and workflows using the Jira Cloud Platform REST API.
Jira MCP (Model Context Protocol)
Overview
This Model Context Protocol (MCP) server enables Large Language Models (LLMs) to interact with Jira through a standardized API. It allows AI assistants to perform common Jira operations without requiring direct API integration, making it easier to build AI-powered tools that work with your Jira instance.
Features
- Jira Platform API Integration: Comprehensive access to Jira Cloud Platform REST API
- Jira Software API Integration: Work with Jira Software features like boards, sprints, and epics
- MCP Protocol Support: Standardized interface for AI assistants and automation tools
- Authentication: Basic auth support using Atlassian PAT (Personal Access Token)
Supported MCP tools
The MCP server supports the following Jira operations:
Agile & Board Tools
get_all_agile_boards: Retrieve all available agile boardsget_epics_from_board: Get all epics associated with a specific boardget_issues_from_board: Get all issues from a specified boardget_issues_from_epic: Retrieve all issues associated with a specific epicget_issues_from_sprint: Get all issues from a specified sprintget_sprints_from_board: Retrieve all sprints associated with a boardmove_issues_to_epic: Move specified issues under an epic
Issue Operations
add_jira_comment: Add a comment to a Jira issuecreate_issue: Create a new Jira issuedelete_issue: Delete an existing Jira issueget_issue: Retrieve details of a specific issueget_issue_fields: Get all available fields for issuesget_issue_transitions: Get possible status transitions for an issueget_project_versions: Get all versions in a project with pagination supportsearch_issue_by_jql: Search for issues using JQL (Jira Query Language)transition_jira_issue: Change the status of an issueupdate_issue: Update the details of an existing issueadd_jira_attachments: add attachments to an existing issue
User Operations
search_user: Find Jira users based on search criteriaget_myself_info: Get information about the authenticated user
How to use this image
MCP SSE
Simple usage
docker run -d --name jira-mcp \
-p 8080:8080 \
-e atlassian.url=https://your-company.atlassian.net \
-e atlassian.username=your-jira-email \
-e atlassian.pat=your-jira-pat \
guang1/jira-mcp:latest
Using an Environment File
Create a configuration file (e.g., atlassian.config):
atlassian.url=https://your-company.atlassian.net
atlassian.username=your-jira-email
atlassian.pat=your-jira-pat
Then run:
docker run -d --name jira-mcp \
-p 8080:8080 \
--env-file atlassian.config \
guang1/jira-mcp:latest
Docker Compose for SSE
Basic Example
services:
jira:
container_name: jira-mcp
image: guang1/jira-mcp
environment:
- atlassian.url=https://your-company.atlassian.net
- atlassian.username=your-jira-email
- atlassian.pat=your-jira-pat
ports:
- "8080:8080"
restart: always
With Environment File
services:
jira:
container_name: jira-mcp
image: guang1/jira-mcp
env_file:
- jira.config
ports:
- "8080:8080"
restart: always
MCP SSE URL
http://localhost:8080/mcp/sse
MCP STDIO
Must pass quarkus.mcp.server.stdio.enabled=true, quarkus.log.console.enable=false and quarkus.log.console.stderr=false environment variables with -i interactive option.
Simple usage
docker run --rm \
-e atlassian.url=https://your-company.atlassian.net \
-e atlassian.username=your-jira-email \
-e atlassian.pat=your-jira-pat \
-e quarkus.mcp.server.stdio.enabled=true \
-e quarkus.log.console.enable=false \
-e quarkus.log.console.stderr=false \
-i guang1/jira-mcp:latest
Using an Environment File
docker run --rm --env-file=atlassian.config \
-e quarkus.mcp.server.stdio.enabled=true \
-e quarkus.log.console.enable=false \
-e quarkus.log.console.stderr=false \
-i guang1/jira-mcp:latest
Claude Desktop Configuration (STDIO)
To use the Docker version with Claude Desktop, add this to your claude_desktop_config.json or server_config.json file:
Simple usage
{
"mcpServers": {
"jira": {
"command": "docker",
"args": [
"run",
"--rm",
"-e",
"atlassian.url=https://your-company.atlassian.net",
"-e",
"atlassian.username=your-jira-email",
"-e",
"atlassian.pat=your-jira-pat",
"-e",
"quarkus.log.console.enable=false",
"-e",
"quarkus.log.console.stderr=false",
"-i",
"guang1/jira-mcp:latest"
]
}
}
}
Using an Environment File
{
"mcpServers": {
"jira": {
"command": "docker",
"args": [
"run",
"--rm",
"--env-file=atlassian.conf",
"-e",
"quarkus.mcp.server.stdio.enabled=true",
"-e",
"quarkus.log.console.enable=false",
"-e",
"quarkus.log.console.stderr=false",
"-i",
"guang1/jira-mcp:latest"
]
}
}
}
Configuration
Environment Variables
| Variable | Description | Required |
|---|---|---|
atlassian.url | atlassian instance URL (e.g., https://your-company.atlassian.net) | Yes |
atlassian.username | atlassian account email address | Yes |
atlassian.pat | atlassian Personal Access Token (API Token) | Yes |
Creating a Jira API Token
To generate a Personal Access Token for Jira:
- Go to https://id.atlassian.com/manage-profile/security/api-tokens
- Click "Create API token"
- Give your token a name (e.g., "MCP Server")
- Copy the generated token for use with this MCP server
Security Considerations
⚠️ Warning: This MCP server requires authentication credentials with access to your Jira instance. Consider the following security practices:
- Create a dedicated Jira service account with appropriate permissions
- Regularly rotate your API token
- Run the container in a secure, isolated environment
- Use network security rules to restrict access to the MCP server
- Be cautious about which operations you allow LLMs to perform
Example Use Cases
Example Use Cases
-
Set a Default Ticket Prefix
Define a default ticket prefix in your rules (e.g.,MyProj-). This allows you to reference tickets in chat by number only (e.g.,1234instead ofMyProj-1234). -
Configure Personal Jira Account ID
Specify your Jira account ID in the rules to avoid repeated API calls (such asget_myself_info) for every operation. -
Customize Jira Fields
Set custom fields (e.g., story points, developer, etc.) in your rules to prevent the AI from callingget_issue_fieldseach time. -
Automate Issue Management
Create and update Jira issues automatically based on natural language requests. -
Generate Reports and Summaries
Produce Jira reports and summaries on demand. -
Sprint Planning and Epic Management
Assist with sprint planning and epic management tasks. -
Conversational Jira Interaction
Enable team members to interact with Jira using natural, conversational language.
Troubleshooting
If you encounter issues:
- Verify your API token has the required permissions
- Check that your atlassian URL is correct and accessible
- Ensure your atlassian username (email) is correct
- Check container logs for detailed error information
License
This project is licensed under the MIT License - see the LICENSE file for details.
Related Servers
Atlassian Confluence
Interact with Atlassian Confluence Cloud spaces, pages, and content in real-time.
Google Sheets
A server for comprehensive Google Sheets integration, requiring Google OAuth credentials.
Mindmap MCP Server
Convert Markdown content into interactive mindmaps.
Zendesk MCP Server
Manage Zendesk tickets and comments, analyze tickets, draft responses, and access Help Center articles as a knowledge base.
Tomba MCP
Tomba, your unique B2B email finder and verifier, provides a distinctive lead database for effortless and effective outreach scaling.
PyApple MCP Tools
Python tools for MCP that integrate with native Apple applications like Messages, Notes, Mail, and more on macOS.
Task Orchestrator
AI-powered task orchestration and workflow automation with specialized agent roles, intelligent task decomposition, and seamless integration across Claude Desktop, Cursor IDE, Windsurf, and VS Code.
Folderr MCP Server
Interact with the Folderr API to manage and communicate with Folderr Assistants.
Fireflies
Retrieve, search, and summarize meeting transcripts from Fireflies.ai.
Panda Odoo
An MCP server for integrating with the Odoo ERP system.