Provides tools for interacting with JIRA's API, enabling AI agents to retrieve issue details, create new issues, search using JQL queries, and access project information and user data.
JIRA MCP Server
Security Wanning
This repository contains security training materials and proof-of-concept code designed for educational purposes only. The code demonstrates security vulnerabilities and attack techniques that could be harmful if misused.
Malicious sample code is in ./malicious_code_examples
AUTHORIZED USE ONLY: This code is provided exclusively for:
Security research and education
Authorized penetration testing with explicit written permission
Security awareness training in controlled environments
Academic study of cybersecurity concepts
PROHIBITED USES: This code must NOT be used for:
Unauthorized access to computer systems
Malicious attacks against any systems or networks
Any illegal activities or violations of computer crime laws
Testing against systems without explicit written authorization
By downloading, viewing, or using any code in this repository, you agree to use it only for lawful, authorized purposes and accept full responsibility for your actions.
Disclaimer of Liability
The author(s) and contributors to this repository:
Provide this code "AS IS" without warranty of any kind
Disclaim all liability for any damages resulting from use or misuse
Do not endorse or encourage any illegal or unauthorized activities
Assume no responsibility for actions taken by users of this code
Overview
A Model Context Protocol (MCP) server that provides JIRA integration. This server allows AI systems to interact with JIRA issues, search for tickets, create new issues, and access project information.
Examples here will use claude.
Features
Get JIRA Issues: Retrieve detailed information about specific JIRA issues
Create Issues: Create new JIRA issues with customizable fields
Search Issues: Search for JIRA issues using JQL (JIRA Query Language)
Project Information: Access project keys and user information
Resources: Access JIRA project keys and current user information
Prerequisites
Python 3.13 or higher
JIRA account with API access
JIRA Personal Access Token (PAT)
Installation
Clone or download this repository:
Install dependencies using uv (recommended) or pip:
Configuration
1. JIRA Setup
Create a JIRA Personal Access Token:
Go to your JIRA instance
Navigate to Account Settings > Security > API tokens
Create a new token and copy it
Create a
.env
file in the project root:
Update the project keys in the
jira_project_keys()
function (line 24):
2. Test the Server
Run the server locally to ensure it's working:
The server should start without errors. Press Ctrl+C to stop it.
Claude Desktop Configuration
1. Install Claude Desktop
Download and install Claude Desktop from https://claude.ai/download
2. Configure MCP Server
Locate your Claude Desktop configuration file:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Windows:
%APPDATA%\Claude\claude_desktop_config.json
Linux:
~/.config/Claude/claude_desktop_config.json
Add the MCP server configuration to the file. If the file doesn't exist, create it:
Important: Replace /absolute/path/to/longcon-mcp-demo/main.py
with the actual absolute path to your main.py
file.
3. Alternative Configuration (Using .env file)
If you prefer to use the .env
file for credentials:
4. Using uv (Recommended)
For better dependency management, you can use uv:
Usage in Claude
Once configured, restart Claude Desktop. You can now use JIRA-related commands in your conversations:
Available Tools
Get JIRA Issue:
Get details for issue CRM-123Create JIRA Issue:
Create a new task in project CRM with summary "Fix login bug" and description "Users unable to login"Search JIRA Issues:
Search for all open issues assigned to me
Available Resources
Project Keys: Access available project keys
User Information: Get current user details
Example Interactions
Troubleshooting
Common Issues
"JIRA_USERNAME and JIRA_PAT must be set" Error
Ensure your
.env
file is in the correct locationVerify the environment variables are set correctly in Claude Desktop config
"Permission Denied" Error
Check that your JIRA PAT has the necessary permissions
Verify your JIRA username is correct
"Server not found" Error
Ensure the JIRA server URL is correct in
main.py
Check your internet connection
Claude Desktop doesn't recognize the server
Verify the absolute path in the configuration is correct
Restart Claude Desktop after making configuration changes
Check Claude Desktop logs for error messages
Verification
To verify everything is working:
Start a new conversation in Claude Desktop
Ask: "What JIRA projects are available?"
Claude should respond with the project keys you configured
Dependencies
jira
: JIRA Python library for API interactionsfastmcp
: Simplified MCP server frameworkpython-dotenv
: Environment variable management
Security Notes
Never commit your
.env
file or expose your JIRA PATUse environment variables or secure configuration management
Regularly rotate your JIRA Personal Access Tokens
Limit PAT permissions to only what's necessary
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Enables AI systems to interact with JIRA through natural language, allowing users to retrieve issue details, create new tickets, search using JQL, and access project information.