Transform how you manage and track your work by connecting Claude, Cursor AI, and other AI assistants directly to your Jira projects, issues, and workflows. Get instant project insights, streamline issue management, and enhance your team collaboration.
Get up and running in 2 minutes:
Generate a Jira API Token: 1. Go to Atlassian API Tokens 2. Click Create API token 3. Give it a name like "AI Assistant" 4. Copy the generated token immediately (you won't see it again!)
# Set your credentials
export ATLASSIAN_SITE_NAME="your-company" # for your-company.atlassian.net
export ATLASSIAN_USER_EMAIL="your.email@company.com"
export ATLASSIAN_API_TOKEN="your_api_token"
# List your Jira projects
npx -y @aashari/mcp-server-atlassian-jira get --path "/rest/api/3/project/search"
# Get details about a specific project
npx -y @aashari/mcp-server-atlassian-jira get --path "/rest/api/3/project/DEV"
# Get an issue with JMESPath filtering
npx -y @aashari/mcp-server-atlassian-jira get --path "/rest/api/3/issue/PROJ-123" --jq "{key: key, summary: fields.summary, status: fields.status.name}"
Add this to your Claude configuration file (~/.claude/claude_desktop_config.json):
{
"mcpServers": {
"jira": {
"command": "npx",
"args": ["-y", "@aashari/mcp-server-atlassian-jira"],
"env": {
"ATLASSIAN_SITE_NAME": "your-company",
"ATLASSIAN_USER_EMAIL": "your.email@company.com",
"ATLASSIAN_API_TOKEN": "your_api_token"
}
}
}
}
Restart Claude Desktop, and you'll see the jira server in the status bar.
Most AI assistants support MCP. Install the server globally:
npm install -g @aashari/mcp-server-atlassian-jira
Then configure your AI assistant to use the MCP server with STDIO transport.
Create ~/.mcp/configs.json for system-wide configuration:
{
"jira": {
"environments": {
"ATLASSIAN_SITE_NAME": "your-company",
"ATLASSIAN_USER_EMAIL": "your.email@company.com",
"ATLASSIAN_API_TOKEN": "your_api_token"
}
}
}
Alternative config keys: The system also accepts "atlassian-jira", "@aashari/mcp-server-atlassian-jira", or "mcp-server-atlassian-jira" instead of "jira".
This MCP server provides 5 generic tools that can access any Jira API endpoint:
| Tool | Description |
|---|---|
jira_get |
GET any Jira API endpoint (read data) |
jira_post |
POST to any endpoint (create resources) |
jira_put |
PUT to any endpoint (replace resources) |
jira_patch |
PATCH any endpoint (partial updates) |
jira_delete |
DELETE any endpoint (remove resources) |
Projects:
- /rest/api/3/project/search - List all projects
- /rest/api/3/project/{projectKeyOrId} - Get project details
Issues:
- /rest/api/3/search/jql - Search issues with JQL (use jql query param)
- /rest/api/3/issue/{issueIdOrKey} - Get issue details
- /rest/api/3/issue - Create issue (POST)
- /rest/api/3/issue/{issueIdOrKey}/transitions - Get/perform transitions
Comments:
- /rest/api/3/issue/{issueIdOrKey}/comment - List/add comments
- /rest/api/3/issue/{issueIdOrKey}/comment/{commentId} - Get/update/delete comment
Worklogs:
- /rest/api/3/issue/{issueIdOrKey}/worklog - List/add worklogs
- /rest/api/3/issue/{issueIdOrKey}/worklog/{worklogId} - Get/update/delete worklog
Users & Statuses:
- /rest/api/3/myself - Get current user
- /rest/api/3/user/search - Search users (use query param)
- /rest/api/3/status - List all statuses
- /rest/api/3/issuetype - List issue types
- /rest/api/3/priority - List priorities
All tools support optional JMESPath (jq) filtering to extract specific data:
# Get just project names and keys
npx -y @aashari/mcp-server-atlassian-jira get \
--path "/rest/api/3/project/search" \
--jq "values[].{key: key, name: name}"
# Get issue key and summary
npx -y @aashari/mcp-server-atlassian-jira get \
--path "/rest/api/3/issue/PROJ-123" \
--jq "{key: key, summary: fields.summary, status: fields.status.name}"
Ask your AI assistant: - "List all projects I have access to" - "Show me details about the DEV project" - "What projects contain the word 'Platform'?"
Ask your AI assistant: - "Find all high priority issues in the DEV project" - "Show me issues assigned to me that are in progress" - "Search for bugs reported in the last week" - "List all open issues for the mobile team"
Ask your AI assistant: - "Get full details about issue PROJ-456 including comments" - "What's the current status and assignee of PROJ-123?" - "Display all comments on the authentication bug"
Ask your AI assistant: - "Add a comment to PROJ-456: 'Code review completed, ready for testing'" - "Comment on the login issue that it's been deployed to staging"
The CLI mirrors the MCP tools for direct terminal access:
# GET request
npx -y @aashari/mcp-server-atlassian-jira get --path "/rest/api/3/project/search"
# GET with query parameters
npx -y @aashari/mcp-server-atlassian-jira get \
--path "/rest/api/3/search/jql" \
--query-params '{"jql": "project=DEV AND status=\"In Progress\"", "maxResults": "10"}'
# POST request (create an issue)
npx -y @aashari/mcp-server-atlassian-jira post \
--path "/rest/api/3/issue" \
--body '{"fields": {"project": {"key": "DEV"}, "summary": "New issue title", "issuetype": {"name": "Task"}}}'
# POST request (add a comment)
npx -y @aashari/mcp-server-atlassian-jira post \
--path "/rest/api/3/issue/PROJ-123/comment" \
--body '{"body": {"type": "doc", "version": 1, "content": [{"type": "paragraph", "content": [{"type": "text", "text": "My comment"}]}]}}'
# PUT request (update issue - full replacement)
npx -y @aashari/mcp-server-atlassian-jira put \
--path "/rest/api/3/issue/PROJ-123" \
--body '{"fields": {"summary": "Updated title"}}'
# DELETE request
npx -y @aashari/mcp-server-atlassian-jira delete \
--path "/rest/api/3/issue/PROJ-123/comment/12345"
Make sure your token is still active and hasn't expired
Verify your site name format:
https://mycompany.atlassian.netYour site name should be just mycompany
Test your credentials:
bash
npx -y @aashari/mcp-server-atlassian-jira get --path "/rest/api/3/myself"
DEV) not project namesIssue keys include the project prefix (e.g., DEV-123)
Verify access permissions:
Try broader search criteria
Check JQL syntax:
~/.claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.jsonIf you're still having issues: 1. Run a simple test command to verify everything works 2. Check the GitHub Issues for similar problems 3. Create a new issue with your error message and setup details
Your Atlassian account needs: - Access to Jira with the appropriate permissions for the projects you want to query - API token with appropriate permissions (automatically granted when you create one)
Currently, this tool only supports Jira Cloud. Jira Server/Data Center support may be added in future versions.
Your site name is the first part of your Jira URL:
- URL: https://mycompany.atlassian.net -> Site name: mycompany
- URL: https://acme-corp.atlassian.net -> Site name: acme-corp
Any AI assistant that supports the Model Context Protocol (MCP): - Claude Desktop - Cursor AI - Continue.dev - Many others
Yes! This tool: - Runs entirely on your local machine - Uses your own Jira credentials - Never sends your data to third parties - Only accesses what you give it permission to access
Yes! Use JQL queries for cross-project searches. For example:
npx -y @aashari/mcp-server-atlassian-jira get \
--path "/rest/api/3/search/jql" \
--query-params '{"jql": "assignee=currentUser() AND status=\"In Progress\""}'
Version 3.0 replaces 8+ specific tools with 5 generic HTTP method tools. If you're upgrading from v2.x:
Before (v2.x):
jira_ls_projects, jira_get_project, jira_ls_issues, jira_get_issue,
jira_create_issue, jira_ls_comments, jira_add_comment, jira_ls_statuses, ...
After (v3.0):
jira_get, jira_post, jira_put, jira_patch, jira_delete
Migration examples:
- jira_ls_projects -> jira_get with path /rest/api/3/project/search
- jira_get_project -> jira_get with path /rest/api/3/project/{key}
- jira_get_issue -> jira_get with path /rest/api/3/issue/{key}
- jira_create_issue -> jira_post with path /rest/api/3/issue
- jira_add_comment -> jira_post with path /rest/api/3/issue/{key}/comment
- jira_ls_statuses -> jira_get with path /rest/api/3/status
Need help? Here's how to get assistance:
Made with care for teams who want to bring AI into their project management workflow.
$ claude mcp add mcp-server-atlassian-jira \
-- python -m otcore.mcp_server <graph>