Jira Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Jira Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
A local MCP server that wraps the Jira REST API v3 for openmrs.atlassian.net, providing a comprehensive alternative to the Atlassian Rovo MCP Server. Bypasses the Rovo server's "anonymous project" bug by calling the REST API directly with Basic Auth.
| Variable | Required | Description |
|---|---|---|
JIRA_EMAIL | Yes | Your Atlassian account email |
JIRA_API_TOKEN | Yes | The API token you generated above |
JIRA_BASE_URL | No | Defaults to https://openmrs.atlassian.net |
Install as a tool so it's available as a standalone command:
uv tool install /absolute/path/to/jira-mcpReplace /absolute/path/to/jira-mcp with the actual path to this directory. This creates a jira-mcp command (typically at ~/.local/bin/jira-mcp).
To update after pulling changes:
uv tool install --force /absolute/path/to/jira-mcpAdd the following to your Claude Desktop config file:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json~/.config/Claude/claude_desktop_config.json{
"mcpServers": {
"jira": {
"command": "jira-mcp",
"env": {
"JIRA_EMAIL": "[email protected]",
"JIRA_API_TOKEN": "your-api-token-here"
}
}
}
}If jira-mcp is not on Claude Desktop's PATH, use the full path (e.g. "/Users/you/.local/bin/jira-mcp").
In your Claude Code settings (e.g. ~/.claude/settings.json), add:
{
"mcpServers": {
"jira": {
"command": "jira-mcp",
"env": {
"JIRA_EMAIL": "[email protected]",
"JIRA_API_TOKEN": "your-api-token-here"
}
}
}
}| Tool | Description | Key Parameters |
|---|---|---|
createJiraIssue | Create a new issue | projectKey, summary, issueType, description, priority, labels, assigneeAccountId |
getJiraIssue | Fetch an issue by key/ID | issueIdOrKey, fields |
editJiraIssue | Update fields on an issue | issueIdOrKey, summary, description, priority, labels, assigneeAccountId, issueType |
searchJiraIssues | Search with JQL | jql, maxResults, fields |
addCommentToJiraIssue | Add a comment | issueIdOrKey, body |
getJiraIssueComments | List comments (with their IDs) | issueIdOrKey, maxResults, newestFirst |
editJiraIssueComment | Replace the text of your own comment | issueIdOrKey, commentId, body |
getTransitionsForJiraIssue | List available transitions | issueIdOrKey |
transitionJiraIssue | Move issue to new status | issueIdOrKey, transitionId |
getVisibleJiraProjects | List visible projects | maxResults |
getJiraIssueTypeMetaWithFields | Get create metadata for a project/issue type | projectIdOrKey, issueTypeId |
lookupJiraAccountId | Search users by name/email | query, maxResults |
All description and comment body parameters accept Markdown, which is automatically converted to Atlassian Document Format (ADF) before sending.
editJiraIssueComment only edits comments posted by the authenticated user: the comment's author is compared against /myself and the edit is refused otherwise, even if the account holds Jira's "Edit All Comments" permission.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.