jira-analysis-mcp
A powerful Model Context Protocol (MCP) server for seamless Jira integration with AI assistants like Claude. Features advanced search capabilities, intelligent pod aliases, comprehensive ticket analysis, and full API support.
README
Jira Analysis MCP
A powerful Model Context Protocol (MCP) server for seamless Jira integration with AI assistants like Claude. Features advanced search capabilities, intelligent pod aliases, comprehensive ticket analysis, and full API support.
⨠Features
Core Capabilities
- š Advanced Search: Full pagination support - automatically fetches ALL results (no 100 issue limit)
- šÆ Smart Pod Aliases: Use shorthand names (
workflow,growth,platform) instead of full pod names - š Intelligent Ticket Analysis: Comprehensive analysis with automatic filtering of AI-generated comments
- š Issue Management: Create, read, update, and search Jira issues with flexible field filtering
- š¬ Comments: Add, delete, and manage comments with automatic markdown-to-ADF conversion
- š Attachments: Upload, download, and manage issue attachments
- šØ Rich Formatting: Automatic conversion of markdown to Atlassian Document Format (ADF)
- Code blocks with syntax highlighting
- Inline code, lists (bullet/numbered)
- Headings, bold, italic, strikethrough
- Links and line breaks
What Makes This Different
- No Pagination Headaches: Automatically handles Jira's pagination - you get all results, not just the first page
- Pod-Aware: Built-in understanding of common pod structures with smart aliasing
- AI-Ready: Filters AI-generated comments from analysis for cleaner insights
- Production-Ready: Handles Jira's latest API endpoints (no deprecated APIs)
š Quick Start
Installation
git clone https://github.com/sheikhaamir/jira-analysis-mcp.git
cd jira-analysis-mcp
npm install
npm run build
Configuration
Create a .env file in the root directory:
JIRA_URL=https://your-domain.atlassian.net
JIRA_EMAIL=your-email@example.com
JIRA_API_TOKEN=your-api-token
Getting a Jira API Token:
- Visit https://id.atlassian.com/manage-profile/security/api-tokens
- Click "Create API token"
- Copy the token and add it to your
.envfile
Usage with Claude Desktop
macOS
Edit ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"jira": {
"command": "node",
"args": ["/absolute/path/to/jira-analysis-mcp/build/index.js"],
"env": {
"JIRA_URL": "https://your-domain.atlassian.net",
"JIRA_EMAIL": "your-email@example.com",
"JIRA_API_TOKEN": "your-api-token"
}
}
}
}
Windows
Edit %APPDATA%\Claude\claude_desktop_config.json with the same structure, using Windows paths.
Usage with Cursor
Create or edit ~/.cursor/mcp_settings.json:
{
"mcpServers": {
"jira": {
"command": "node",
"args": ["/absolute/path/to/jira-analysis-mcp/build/index.js"],
"env": {
"JIRA_URL": "https://your-domain.atlassian.net",
"JIRA_EMAIL": "your-email@example.com",
"JIRA_API_TOKEN": "your-api-token"
}
}
}
}
š Usage Examples
Smart Pod Aliases
Use simple shorthand names instead of full pod names:
| Alias | Full Pod Name |
|---|---|
workflow, pod1, pod 1 |
Pod 1 Workflow |
growth, pod2, pod 2 |
Pod 2 Growth |
platform |
Platform Pod |
siteops, site ops |
Pod SiteOps |
ai |
AI Pod |
ds, design |
DS Pod |
scale |
Scale Pod |
Example:
Pod = "workflow" AND created >= 2025-12-01
Automatically expands to:
Pod = "Pod 1 Workflow" AND created >= 2025-12-01
Search Issues
// Get all issues (no pagination limit)
search_issues({
jql: 'Pod = "workflow" AND created >= 2025-12-01 AND project = SS2T',
maxResults: 500
})
// Search by status
search_issues({
jql: 'project = MYPROJ AND status = "In Progress"',
maxResults: 100
})
Analyze Tickets
// Get comprehensive ticket analysis
analyze_ticket({ issueKey: 'SS2T-13091' })
// Returns structured data:
// - What customer saw (description, attachments)
// - How it happened (probable cause, root cause, regression status)
// - How it was fixed (resolution type, current status)
// - Timeline and customer context
Create Issues
create_issue({
project: 'MYPROJ',
summary: 'Bug: Login page not loading',
description: 'Users are unable to access the login page',
issueType: 'Bug'
})
Add Comments
add_comment({
issueKey: 'MYPROJ-123',
comment: 'This has been fixed in production'
})
š ļø Available Tools
Issue Management
get_issue- Get details of a specific issuesearch_issues- Search issues with JQL (supports pod aliases, full pagination)create_issue- Create a new issueupdate_issue- Update an existing issue
Analysis
analyze_ticket- Get comprehensive ticket analysis (filters AI comments)get_comprehensive_issue- Get ALL details including custom fields, comments, attachments
Comments
add_comment- Add a comment (with optional attachments)delete_comment- Delete a comment
Attachments
get_attachments- List all attachments for an issuedownload_attachment- Download an attachment to diskadd_attachment- Upload an attachment to an issue
šÆ Advanced Features
Full Pagination Support
Unlike basic Jira clients, this server automatically handles pagination:
- Fetches ALL results across multiple pages
- No manual token management
- No 100-result limits
Intelligent Ticket Analysis
The analyze_ticket tool provides:
- Automatic filtering of AI-generated comments
- Structured data extraction (probable cause, root cause, regression status)
- Timeline analysis
- Customer context (organization, tier, platform)
Pod-Aware Architecture
Built-in understanding of pod structures:
- Automatic alias expansion
- Support for multiple pod naming conventions
- Easy to extend with new pods
š§ Development
Build
npm run build
Watch Mode
npm run watch
Project Structure
jira-analysis-mcp/
āāā src/
ā āāā index.ts # MCP server implementation
ā āāā jira-client.ts # Jira API client with pagination
āāā build/ # Compiled JavaScript
āāā .env # Your Jira credentials
āāā package.json
š Requirements
- Node.js 18 or higher
- Jira Cloud account with API access
- Valid Jira API token
š¤ Contributing
Contributions are welcome! Please feel free to submit issues or pull requests.
š License
MIT License - see LICENSE file for details
š Acknowledgments
Built with the Model Context Protocol SDK by Anthropic.
š Support
For issues, questions, or suggestions, please open an issue on GitHub.
Note: After installation or updates, restart your AI assistant (Claude/Cursor) to load the latest server build.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.