Jira MCP Server
by George5562
The Jira MCP Server allows you to interact with Jira using natural language for project information and modifications. It leverages the Model Context Protocol to enable delegation of project management tasks, especially when used with Claude Desktop and a custom project README.
Last updated: N/A
Jira MCP Server
Speak to Jira in natural language to get information on and modify your project. Use it with Claude Desktop in combination with a custom README that you will create with project information, so that you can delegate PM tasks, (e.g. given yoou have a list of my team and their specialities, assign any new issue to the most relevant person).
Built using the Model Context Protocol.
The server enables:
- Project creation and configuration
- Issue and subtask management
- Issue linking and dependencies
- Automated issue workflows
Configuration
Required environment variables:
JIRA_HOST
: Your Jira instance hostnameJIRA_EMAIL
: Your Jira account emailJIRA_API_TOKEN
: API token from https://id.atlassian.com/manage-profile/security/api-tokens
Available Tools
1. User Management
// Get user's account ID by email
{
email: "[email protected]";
}
2. Issue Type Management
// List all available issue types
// Returns: id, name, description, subtask status
// No parameters required
3. Issue Link Types
// List all available issue link types
// Returns: id, name, inward/outward descriptions
// No parameters required
4. Issue Management
Retrieving Issues
// Get all issues in a project
{
projectKey: "PROJECT"
}
// Get issues with JQL filtering
{
projectKey: "PROJECT",
jql: "status = 'In Progress' AND assignee = currentUser()"
}
// Get issues assigned to user
{
projectKey: "PROJECT",
jql: "assignee = '[email protected]' ORDER BY created DESC"
}
Creating Issues
// Create a standard issue
{
projectKey: "PROJECT",
summary: "Issue title",
issueType: "Task", // or "Story", "Bug", etc.
description: "Detailed description",
assignee: "accountId", // from get_user tool
labels: ["frontend", "urgent"],
components: ["ui", "api"],
priority: "High"
}
// Create a subtask
{
parent: "PROJECT-123",
projectKey: "PROJECT",
summary: "Subtask title",
issueType: "Subtask",
description: "Subtask details",
assignee: "accountId"
}
Updating Issues
// Update issue fields
{
issueKey: "PROJECT-123",
summary: "Updated title",
description: "New description",
assignee: "accountId",
status: "In Progress",
priority: "High"
}
Issue Dependencies
// Create issue link
{
linkType: "Blocks", // from list_link_types
inwardIssueKey: "PROJECT-124", // blocked issue
outwardIssueKey: "PROJECT-123" // blocking issue
}
Deleting Issues
// Delete single issue
{
issueKey: "PROJECT-123"
}
// Delete issue with subtasks
{
issueKey: "PROJECT-123",
deleteSubtasks: true
}
// Delete multiple issues
{
issueKeys: ["PROJECT-123", "PROJECT-124"]
}
Field Formatting
Description Field
The description field supports markdown-style formatting:
- Use blank lines between paragraphs
- Use "- " for bullet points
- Use "1. " for numbered lists
- Use headers ending with ":" (followed by blank line)
Example:
Task Overview:
This task involves implementing new features:
- Feature A implementation
- Feature B testing
Steps:
1. Design component
2. Implement logic
3. Add tests
Acceptance Criteria:
- All tests passing
- Documentation updated
Error Handling
The server provides detailed error messages for:
- Invalid issue keys
- Missing required fields
- Permission issues
- API rate limits
Setup Instructions
-
Clone the repository:
git clone https://github.com/George5562/Jira-MCP-Server.git cd Jira-MCP-Server
-
Install dependencies:
npm install
-
Configure environment variables: Create a
.env
file in the root directory:JIRA_HOST=your-instance.atlassian.net [email protected] JIRA_API_TOKEN=your-api-token
-
Build the project:
npm run build
-
Start the server:
npm start
Configuring Claude Desktop
To use this MCP server with Claude Desktop:
-
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
- macOS:
-
Add the Jira MCP server to your configuration:
{ "mcp_servers": [ { "name": "jira-server", "command": "npm start", "cwd": "/path/to/jira-server", "env": { "JIRA_HOST": "your-instance.atlassian.net", "JIRA_EMAIL": "[email protected]", "JIRA_API_TOKEN": "your-api-token" } } ] }
Replace
/path/to/jira-server
with the absolute path to your cloned repository. -
Restart Claude Desktop to apply the changes.