Jira Writer
Claude Code plugin for creating and updating Jira Cloud tickets with rich content, including automatic Mermaid diagram embedding and interactive checkboxes.
Installation
From GitHub
First, add the repository as a marketplace:
/plugin marketplace add yunidbauza/jira-writer
Then install the plugin:
/plugin install jira-writer
Manual Installation
git clone https://github.com/yunidbauza/jira-writer.git /tmp/jira-writer
cp -r /tmp/jira-writer/plugins/jira-writer ~/.claude/plugins/
chmod +x ~/.claude/plugins/jira-writer/skills/jira-writer/scripts/*.sh
rm -rf /tmp/jira-writer
Prerequisites
| Dependency | Purpose | Required |
|---|
JIRA_DOMAIN | Your Jira Cloud domain | Yes |
JIRA_API_KEY | REST API auth (email:token) | Yes |
| Atlassian MCP | Fallback when REST fails | No (optional) |
mmdc | Mermaid CLI for diagrams | For diagrams only |
Environment Setup
# Required for REST API (primary method)
export JIRA_DOMAIN="company.atlassian.net"
export JIRA_API_KEY="your-email@company.com:your-api-token"
# Optional: for Mermaid diagrams
npm install -g @mermaid-js/mermaid-cli
Getting Your API Token
- Go to https://id.atlassian.com/manage-profile/security/api-tokens
- Click "Create API token"
- Give it a label and copy the token
- Set
JIRA_API_KEY as your-email@company.com:your-token
Important: Store the raw email:token format. The scripts handle base64 encoding internally.
Verify Setup
# Test connection
~/.claude/plugins/jira-writer/skills/jira-writer/scripts/test-jira-connection.sh
# Check all prerequisites
~/.claude/plugins/jira-writer/skills/jira-writer/scripts/check-prerequisites.sh
Features
- Ticket Management - Create and update Jira issues
- Rich Formatting - Headings, bold, italic, links, code blocks, tables
- Interactive Checkboxes -
- [ ] and - [x] as clickable task lists
- Mermaid Diagrams - Auto-convert and embed as images
- Markdown Import - Use .md files as ticket content
- Automatic Fallback - Uses MCP if REST API is unavailable
Supported Diagram Types (11)
| Type | Syntax | Type | Syntax |
|---|
| Flowchart | graph TD | Sequence | sequenceDiagram |
| Class | classDiagram | State | stateDiagram-v2 |
| ER | erDiagram | Gantt | gantt |
| Pie | pie | Mindmap | mindmap |
| User Journey | journey | Timeline | timeline |
| Quadrant | quadrantChart | | |
Usage
The skill activates contextually when you:
- Ask to create or update a Jira ticket
- Provide content with Mermaid diagrams
- Reference a markdown file for ticket content
Examples
"Create a ticket for the authentication feature"
"Update PROJ-123 with this description"
"Add a sequence diagram showing the auth flow to PROJ-456"
"Create a ticket with acceptance criteria:
- [ ] User can login
- [x] Remember me works"
How It Works
The plugin uses REST API as the primary method with MCP as a fallback:
┌─────────────────────────────────────────────────────────────┐
│ Jira Writer Skill │
├─────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ jira-api-wrapper.sh │ │
│ │ (Unified interface - tries REST first, MCP fallback)│ │
│ └─────────────────────────────────────────────────────┘ │
│ │ │
│ ┌─────────────┴─────────────┐ │
│ ▼ ▼ │
│ ┌──────────────────┐ ┌──────────────────┐ │
│ │ REST API │ │ MCP Fallback │ │
│ │ (Primary) │ │ (Secondary) │ │
│ │ │ │ │ │
│ │ jira-rest-api.sh │ │ Atlassian MCP │ │
│ └──────────────────┘ └──────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘
API Selection by Content Type
| Content | API Used | Fallback |
|---|
| Text, lists, code | REST (primary) | MCP |
Checkboxes (- [ ]) | REST only | None |
| Mermaid diagrams | REST only | None |
| Attachments | REST only | None |
Scripts