@rui.branco/jira-mcp
npm
v1.7.11
Source verified
Published by rui-branco — publish provenance cryptographically ties this package to that repository. That is proof of origin, not an official vendor package.
Jira & Confluence MCP server for any MCP-compatible AI client (Claude Code, Codex, Antigravity, Cursor, etc.) - fetch tickets, search with JQL, update tickets, manage comments, change status, get Figma designs. Optional per-tool scopes, dry-run, audit log
The grade answers one question — how safe is this server for you to adopt — so it is computed in two auditable stages. Nothing below is an opinion or an LLM's guess; every line is a real term the deterministic engine applied, and the same input always yields the same number.
1. Threat score — 100 − 6.3 = 94. What the published surface and source actually contain:
| Points | What was found | Category |
|---|---|---|
| −6.3 | Untrusted input concatenated into a command sink MTC-SRC-009 | injection |
2. Client adoption risk — 94 − 10 = 84. Three small, subtract-only factors that reflect your risk in adopting it — a clean scan proves less on a powerful, unverified or barely-inspectable package, so the grade says so plainly:
| Points | Adoption-risk factor |
|---|---|
| −10 | capability blast radius (critical) — client exposure if the model is manipulated |
Capability observations and info notes are shown under Findings but never scored.
Open any row's finding below for the file, line and evidence behind a deduction.
In the server's implementation (`index.js:21`): Spawning a shell/process is command-execution capability; with unsanitized tool input it is command injection / RCE. This is read from the code itself — not from the tool description — so a poisoned server cannot hide it behind honest-looking metadata.
Evidence: , execSync } = require("child_process"); // Auto-update: check GitHub for new commits, install in background const GITH
Fix: Review this call path: confirm it never receives unsanitized tool input, constrain it, or remove it. Treat a server whose code reaches these sinks as high-capability regardless of what its tools claim.
Location: server index.js
Untrusted-input tools ([jira_get_ticket, confluence_get_page_children, confluence_get_page, confluence_download_attachment]) co-exist with external-action tools ([jira-mcp]). A prompt injection could cause unwanted external actions, though no direct sensitive-data leak path was found.
Evidence: untrusted [jira_get_ticket, confluence_get_page_children, confluence_get_page, confluence_download_attachment] → sinks [jira-mcp]
Fix: Require confirmation for state-changing/egress actions triggered after processing untrusted content.
Location: flow jira_get_ticket → jira-mcp
In the server's implementation (`index.js:30`): A shell/process command assembled from concatenated or interpolated values is command injection when any part is attacker-influenced — the OWASP canonical RCE flow. Verify what reaches the interpolated value. This is read from the code itself — not from the tool description — so a poisoned server cannot hide it behind honest-looking metadata.
Evidence: ""; const remoteSha = execSync( `git ls-remote https://github.com/${GITHUB_REPO}.git HEAD`, { stdio: "pipe", t
Fix: Review this call path: confirm it never receives unsanitized tool input, constrain it, or remove it. Treat a server whose code reaches these sinks as high-capability regardless of what its tools claim.
Location: server index.js
Tool "jira_unlink_tickets" can write, overwrite or delete files (keyword "unlink" in tool name). Verify it is scoped to a safe directory.
Fix: Constrain file operations to an explicit, non-sensitive root; reject path traversal.
Location: tool jira_unlink_tickets
Tool "jira_unlink_tickets" can mutate/egress but declares no destructiveHint. Clients that don't default to spec-safe behavior may not prompt before running it.
Fix: Declare accurate annotations, and gate destructive tools on user confirmation regardless.
Location: tool jira_unlink_tickets
Each tool and what it can reach — statically extracted from the published source.
confluence_download_attachmentingests untrusted inputconfluence_get_pageingests untrusted inputconfluence_get_page_childreningests untrusted inputjira_get_ticketingests untrusted inputjira_unlink_ticketswrites filesjira-mcpnetwork egressconfluence_add_commentno sensitive capabilityconfluence_add_labelno sensitive capabilityconfluence_create_pageno sensitive capabilityconfluence_create_spaceno sensitive capabilityconfluence_delete_pageno sensitive capabilityconfluence_delete_spaceno sensitive capabilityconfluence_enableno sensitive capabilityconfluence_get_commentsno sensitive capabilityconfluence_get_labelsno sensitive capabilityconfluence_get_recent_pagesno sensitive capabilityconfluence_get_spaceno sensitive capabilityconfluence_get_space_root_pagesno sensitive capabilityconfluence_get_spacesno sensitive capabilityconfluence_list_attachmentsno sensitive capabilityconfluence_remove_labelno sensitive capabilityconfluence_searchno sensitive capabilityconfluence_update_pageno sensitive capabilityconfluence_update_spaceno sensitive capabilityconfluence_upload_attachmentno sensitive capabilityjira_add_attachmentno sensitive capabilityjira_add_commentno sensitive capabilityjira_add_instanceno sensitive capabilityjira_add_watcherno sensitive capabilityjira_add_worklogno sensitive capabilityjira_clone_ticketno sensitive capabilityjira_create_subtaskno sensitive capabilityjira_create_ticketno sensitive capabilityjira_delete_commentno sensitive capabilityjira_delete_ticketno sensitive capabilityjira_edit_commentno sensitive capabilityjira_get_boardsno sensitive capabilityjira_get_changelogno sensitive capabilityjira_get_componentsno sensitive capabilityjira_get_issue_typesno sensitive capabilityjira_get_link_typesno sensitive capabilityjira_get_myselfno sensitive capabilityjira_get_prioritiesno sensitive capabilityjira_get_sprintsno sensitive capabilityjira_get_teamsno sensitive capabilityjira_get_transitionsno sensitive capabilityjira_get_versionsno sensitive capabilityjira_get_worklogsno sensitive capabilityjira_link_ticketsno sensitive capabilityjira_list_instancesno sensitive capabilityjira_move_to_sprintno sensitive capabilityjira_remove_attachmentno sensitive capabilityjira_remove_instanceno sensitive capabilityjira_remove_watcherno sensitive capabilityjira_reply_commentno sensitive capabilityjira_searchno sensitive capabilityjira_search_usersno sensitive capabilityjira_transitionno sensitive capabilityjira_update_ticketno sensitive capabilityCross-tool combinations that form a data-exfiltration primitive (untrusted input → sensitive source → external sink).
Scan history per published version. The engine is deterministic — the same version always yields the same score, so a changed score means the package itself changed.
| Version | Score | Findings | Engine | Scanned |
|---|---|---|---|---|
v1.7.11 latest |
B 84/100 | 5 | 1.13.0 | 2026-09-07 |
v1.7.9 |
B 84/100 | 5 | 1.13.0 | 2026-09-01 |
v1.7.8 |
B 84/100 | 5 | 1.13.0 | 2026-08-31 |
v1.7.7 |
B 83/100 | 5 | 1.12.1 | 2026-08-19 |
Show this server's live Trust Score in your README, docs or website. The badge is served straight from the registry and updates automatically after every rescan — no API key needed. It links back to this page, so anyone who sees the grade can also read the findings behind it instead of taking a number on faith.
The score above is reproducible: the same package version always yields the same result. Run it locally or over the free API — no account, no LLM, fully deterministic.
npx mcptrustchecker scan @rui.branco/jira-mcp --online
Independent packages implementing the same tool, scanned with the same engine. Compare all 45 side by side →
Community-maintained MCP server for Atlassian Jira Data Center. Not affiliated with Atlassian.
Model Context Protocol (MCP) server for Jira Cloud API v3 with automatic Markdown-to-ADF conversion
MCP server for managing Jira Stories, sprints and boards in a self-hosted Jira instance (PRD automation workflow)
MCP server for Jira API integration - supports Jira Cloud
A comprehensive Model Context Protocol server for Jira integration with issue management, board operations, time tracking, and project management capabilities
Jira MCP Server
Turn designs into shipped parts: quote 3D printing, CNC, and decals, then check out.
Aleph's official SiliconFlow media-generation MCP server (image / video / TTS)
MCP server for image generation using Google Gemini AI
Ambience AI MCP Server - Generate images, videos, and audio through Model Context Protocol
MCP server exposing every endpoint of the AstroWay Calculation API as tools — natal, synastry, transits, Vedic dashas, Tarot, Numerology, Human Design, AI horoscopes — for Claude Desktop, Cursor and any MCP-compatible AI agent.
Audio-guide and trip-planning tools for 1,100+ cities from Audiala. Free, no API key.