atlassian-cli
Single-binary MCP server and CLI for Jira and Confluence. CI/CD-friendly, context-efficient, supports both Cloud and Server/DC.
atlassian-cli
Installation
go install (recommended)
Requires Go 1.21+:
go install github.com/putcho01/atlassian-cli@latest
If
$GOPATH/binis not in your$PATH, add the following to your shell config (~/.zshrc, etc.):export PATH="$PATH:$(go env GOPATH)/bin"
From source
git clone https://github.com/putcho01/atlassian-cli.git
cd atlassian-cli
go build -o atlassian-cli .
Quick Start
Cloud (atlassian.net)
-
Set environment variables:
export JIRA_URL=https://your-domain.atlassian.net
export [email protected]
export JIRA_API_TOKEN=your-api-token
- Verify authentication:
atlassian-cli jira myself
To use Confluence as well, set the additional variables:
export CONFLUENCE_URL=https://your-domain.atlassian.net/wiki
export [email protected]
export CONFLUENCE_API_TOKEN=your-api-token
Server/Data Center
export JIRA_URL=https://jira.example.com
export JIRA_PERSONAL_TOKEN=your-pat
If
JIRA_EMAILis not set, Bearer (PAT) authentication is used automatically.
Authentication
Two authentication methods are supported:
Cloud - API Token (Basic Auth)
Used with Atlassian Cloud (*.atlassian.net). Authenticates via Basic auth using your email address and API token.
| Variable | Description |
|---|---|
JIRA_URL | Jira Cloud URL (e.g. https://your-domain.atlassian.net) |
JIRA_EMAIL | Your Atlassian account email address |
JIRA_API_TOKEN | API Token |
JIRA_DEFAULT_PROJECT | Default project key used when --project is omitted (optional) |
CONFLUENCE_URL | Confluence Cloud URL (e.g. https://your-domain.atlassian.net/wiki) |
CONFLUENCE_EMAIL | Your Atlassian account email address |
CONFLUENCE_API_TOKEN | API Token |
Server/Data Center - Personal Access Token (Bearer)
Used with self-hosted Jira/Confluence Server/DC. Authenticates via Bearer auth using a PAT.
| Variable | Description |
|---|---|
JIRA_URL | Jira base URL (e.g. https://jira.example.com) |
JIRA_PERSONAL_TOKEN | Personal Access Token |
JIRA_DEFAULT_PROJECT | Default project key used when --project is omitted (optional) |
CONFLUENCE_URL | Confluence base URL |
CONFLUENCE_PERSONAL_TOKEN | Personal Access Token |
If
Only the variables for the service you use are required. For example, if you only use Jira, you don't need to set the Confluence variables.
Commands
Jira
# Authentication
atlassian-cli jira myself # Show authenticated user
# Issues
atlassian-cli jira issue get PROJ-123 # Get issue (includes description)
atlassian-cli jira issue open PROJ-123 # Open issue in browser
atlassian-cli jira issue search "project = PROJ" # Search issues via JQL
atlassian-cli jira issue search "project = PROJ" -i # Interactive TUI picker (↑/↓ navigate, enter detail, o open, q quit)
atlassian-cli jira issue create --project PROJ --summary "New task" # or omit --project if JIRA_DEFAULT_PROJECT is set
atlassian-cli jira issue update PROJ-123 --field summary="Updated summary"
atlassian-cli jira issue delete PROJ-123
atlassian-cli jira issue subtasks PROJ-123
atlassian-cli jira issue transition PROJ-123 "In Progress"
# Comments
atlassian-cli jira issue comment list PROJ-123
atlassian-cli jira issue comment add PROJ-123 --body "Looks good to me"
Confluence
# Pages
atlassian-cli confluence page get 12345 # Get page content
atlassian-cli confluence page create --space PROJ --title "New Page" --body "<p>Hello</p>"
atlassian-cli confluence page create --space PROJ --title "Child Page" --parent 12345 --body "<p>Child</p>"
atlassian-cli confluence page update 12345 --title "Updated Title" --body "<p>New content</p>" # version auto-detected
atlassian-cli confluence page update 12345 --title "Updated Title" --body "<p>New content</p>" --version 3 # explicit version
# Labels
atlassian-cli confluence label list 12345
atlassian-cli confluence label add 12345 important,reviewed
atlassian-cli confluence label remove 12345 outdated
# Page Restrictions
atlassian-cli confluence restriction list 12345
atlassian-cli confluence restriction add 12345 --operation update --type user --name <account-id>
atlassian-cli confluence restriction remove 12345 --operation update --type user --name <account-id>
Output Formats
All commands support three output formats via the --output / -o flag:
# Default: human-readable table
atlassian-cli jira issue search "project = PROJ" -o table
# Machine-readable JSON
atlassian-cli jira issue search "project = PROJ" -o json
# GitHub-flavored Markdown (great for Claude Code)
atlassian-cli jira issue search "project = PROJ" -o markdown
HTML to Markdown Conversion
When using -o markdown, HTML content (Jira descriptions, Confluence page bodies and comments) is automatically converted to clean GitHub-flavored Markdown. Confluence storage format macros are also handled:
- Code blocks (
ac:structured-macro name="code") -> fenced code blocks - Admonitions (note, info, warning, tip) -> blockquotes with labels
- Page links (
ac:link) -> emphasized text - Table of contents macros -> removed
MCP Server
Start as an MCP server for AI assistant integration:
atlassian-cli mcp-server
Tool Group Filtering
Filter available tools using the --tools flag:
# Only enable Jira issue and search tools
atlassian-cli mcp-server --tools jira_issue,jira_search
# Only enable Confluence tools
atlassian-cli mcp-server --tools confluence_page,confluence_label
Available tool groups:
jira_user- User authenticationjira_issue- Get issue, subtasksjira_search- Search issues via JQLjira_create- Create issuesjira_update- Update issuesjira_delete- Delete issuesjira_transition- Transition issues, get available transitionsconfluence_page- Get page contentconfluence_label- Label managementconfluence_restriction- Page restriction management
Claude Code Integration
Add to your Claude Code MCP settings:
{
"mcpServers": {
"atlassian": {
"command": "atlassian-cli",
"args": ["mcp-server"],
"env": {
"JIRA_URL": "https://your-domain.atlassian.net",
"JIRA_EMAIL": "[email protected]",
"JIRA_API_TOKEN": "your-api-token",
"CONFLUENCE_URL": "https://your-domain.atlassian.net/wiki",
"CONFLUENCE_EMAIL": "[email protected]",
"CONFLUENCE_API_TOKEN": "your-api-token"
}
}
}
}
Why not the official ACLI?
Atlassian provides an official CLI (ACLI) and a remote MCP server for AI integration. Here's how this tool differs:
vs. ACLI
| atlassian-cli | ACLI | |
|---|---|---|
| Distribution | Single binary, no dependencies | Requires package installation |
| Authentication | Environment variables only | Interactive acli auth login |
| CI/CD friendliness | High — no browser flow needed | Limited — headless login is cumbersome |
| Server/DC support | Yes (PAT auth) | Cloud-focused |
| Target audience | Developers, automation, AI agents | Admins, bulk operations |
vs. Atlassian remote MCP server
Atlassian's remote MCP server went GA in February 2026, but comes with trade-offs:
- Context-heavy — loads 73 tool schemas upfront, consuming 40–50% of the context window before any real work
- OAuth required — browser-based auth flow; not suitable for headless or CI/CD environments
- Network dependency — requires an outbound connection to Atlassian's remote server
This tool's --tools flag lets you load only the groups you need, keeping token usage minimal for AI agents.
When to choose this tool
- Running in CI/CD pipelines or automation scripts (auth via environment variables only)
- Using both Server/Data Center and Cloud with a single interface
- Embedding as an MCP server in AI agents where context efficiency matters
License
MIT
เซิร์ฟเวอร์ที่เกี่ยวข้อง
Alpha Vantage MCP Server
ผู้สนับสนุนAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Code Context Provider MCP
Provides code context and analysis for AI assistants using WebAssembly Tree-sitter parsers.
x402engine
50+ pay-per-call APIs for AI agents via HTTP 402 crypto micropayments. $0.001–$0.12 per call with USDC and USDm.
OpenTelemetry Collector MCP Server
An MCP server for dynamically configuring OpenTelemetry Collectors, including receivers, processors, and exporters.
Swagger MCP
Scrapes Swagger UI to dynamically generate MCP tools at runtime using LLMs.
Angular MCP Server
An MCP server for accessing the official Angular documentation.
EnigmAgent MCP
AES-256-GCM + Argon2id encrypted local vault that resolves {{PLACEHOLDER}} secrets for AI agent credentials.
MCP Server
A backend service providing tools, resources, and prompts for AI models using the Model Context Protocol (MCP).
llmprobe
Probe LLM API endpoints and report health metrics including time to first token, latency, and throughput. Check single models or run full config-based health checks.
Polarion MCP Servers
MCP server for integrating with Polarion Application Lifecycle Management (ALM).
Jenkins API MCP Server
A server for managing Jenkins jobs through its REST API, including operations like building, configuration, and information retrieval.