jira-mcp-server
0
The jira-mcp-server project is designed to enable language models to manage and track issues in Jira automatically. It provides various features for creating, updating, and searching Jira issues.
jira-mcp-server
An MCP server that enables LLMs to interact with Jira through a set of API tools. This server provides a bridge between language models and Jira's functionality, allowing for automated issue management and tracking.
Features
- Search Jira issues using JQL
- Create new issues
- Get issue details
- Update existing issues
- Delete issues
Setup in Cursor
Add a new entry to your mcp.json file:
"jira": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"JIRA_BASE_URL",
"-e",
"JIRA_EMAIL",
"-e",
"JIRA_TOKEN",
"chasepd/jira-mcp-server:latest"
]
"env":{
"JIRA_BASE_URL": "[THE BASE URL OF YOUR JIRA INSTANCE]",
"JIRA_EMAIL": "[EMAIL OF YOUR JIRA ACCOUNT]",
"JIRA_TOKEN": "[YOUR JIRA API TOKEN]"
}
}
Prerequisites
- Python 3.x
- Jira account with API access
- Environment variables for Jira authentication:
JIRA_BASE_URL
JIRA_EMAIL
JIRA_TOKEN
Dev Setup
- Clone the repository:
git clone https://github.com/yourusername/jira-mcp-server.git
cd jira-mcp-server
- Install dependencies:
pip install -r requirements.txt
- Set up environment variables:
export JIRA_BASE_URL="your-jira-instance-url"
export JIRA_EMAIL="your-email@example.com"
export JIRA_TOKEN="your-api-token"
Running the Server
Local Development
python src/mcp-server.py
Using Docker
The server is available as a Docker image at chasepd/jira-mcp-server
.
Pull and run the latest version:
docker pull chasepd/jira-mcp-server:latest
docker run -e JIRA_BASE_URL="your-jira-instance-url" \
-e JIRA_EMAIL="your-email@example.com" \
-e JIRA_TOKEN="your-api-token" \
-p 8000:8000 \
chasepd/jira-mcp-server:latest
Available Tools
The server provides the following tools for interacting with Jira:
jira_search_issues(jql: str)
: Search for issues using JQLjira_create_issue(project_key: str, summary: str, description: str, issuetype: str)
: Create a new issuejira_get_issue(issue_key: str)
: Get details of a specific issuejira_update_issue(issue_key: str, fields: dict)
: Update an existing issuejira_delete_issue(issue_key: str)
: Delete an issue
Contributing
Contributions are welcome! Please feel free to submit a pull request if there's a new feature you'd like to see.