atlassian-cli

Servidor MCP e CLI em binário único para Jira e Confluence. Amigável para CI/CD, eficiente em contexto, suporta Cloud e Server/DC.

Documentação

atlassian-cli

Logo
Uma CLI nativa e leve em Go para Atlassian Jira e Confluence


Instalação

go install (recomendado)

Requer Go 1.21+:

go install github.com/putcho01/atlassian-cli@latest

Se $GOPATH/bin não estiver no seu $PATH, adicione o seguinte ao seu arquivo de configuração do shell (~/.zshrc, etc.):

export PATH="$PATH:$(go env GOPATH)/bin"

A partir do código-fonte

git clone https://github.com/putcho01/atlassian-cli.git
cd atlassian-cli
go build -o atlassian-cli .

Início Rápido

Cloud (atlassian.net)

  1. Crie um Token de API

  2. Defina as variáveis de ambiente:

export JIRA_URL=https://your-domain.atlassian.net
export JIRA_EMAIL=you@example.com
export JIRA_API_TOKEN=your-api-token
  1. Verifique a autenticação:
atlassian-cli jira myself

Para usar também o Confluence, defina as variáveis adicionais:

export CONFLUENCE_URL=https://your-domain.atlassian.net/wiki
export CONFLUENCE_EMAIL=you@example.com
export CONFLUENCE_API_TOKEN=your-api-token

Server/Data Center

export JIRA_URL=https://jira.example.com
export JIRA_PERSONAL_TOKEN=your-pat

Se JIRA_EMAIL não estiver definido, a autenticação Bearer (PAT) é usada automaticamente.

Autenticação

Dois métodos de autenticação são suportados:

Cloud - Token de API (Autenticação Básica)

Usado com Atlassian Cloud (*.atlassian.net). Autentica via autenticação básica usando seu endereço de e-mail e token de API.

VariávelDescrição
JIRA_URLURL do Jira Cloud (ex.: https://your-domain.atlassian.net)
JIRA_EMAILEndereço de e-mail da sua conta Atlassian
JIRA_API_TOKENToken de API
JIRA_DEFAULT_PROJECTChave de projeto padrão usada quando --project é omitida (opcional)
CONFLUENCE_URLURL do Confluence Cloud (ex.: https://your-domain.atlassian.net/wiki)
CONFLUENCE_EMAILEndereço de e-mail da sua conta Atlassian
CONFLUENCE_API_TOKENToken de API

Server/Data Center - Token de Acesso Pessoal (Bearer)

Usado com Jira/Confluence Server/DC auto-hospedados. Autentica via autenticação Bearer usando um PAT.

VariávelDescrição
JIRA_URLURL base do Jira (ex.: https://jira.example.com)
JIRA_PERSONAL_TOKENToken de Acesso Pessoal
JIRA_DEFAULT_PROJECTChave de projeto padrão usada quando --project é omitida (opcional)
CONFLUENCE_URLURL base do Confluence
CONFLUENCE_PERSONAL_TOKENToken de Acesso Pessoal

Se EMAIL estiver definido, a autenticação Básica (Cloud) é usada; caso contrário, a autenticação Bearer (Server/DC) é usada.

Apenas as variáveis do serviço que você usa são necessárias. Por exemplo, se você usa apenas o Jira, não precisa definir as variáveis do Confluence.

Comandos

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>

Formatos de Saída

Todos os comandos suportam três formatos de saída via a flag --output / -o:

# 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

Conversão de HTML para Markdown

Ao usar -o markdown, o conteúdo HTML (descrições do Jira, corpos de páginas e comentários do Confluence) é automaticamente convertido para Markdown limpo no estilo GitHub. Macros de formato de armazenamento do Confluence também são tratados:

  • Blocos de código (ac:structured-macro name="code") -> blocos de código cercados
  • Admoestações (note, info, warning, tip) -> citações em bloco com rótulos
  • Links de páginas (ac:link) -> texto enfatizado
  • Macros de sumário -> removidas

Servidor MCP

Inicie como um servidor MCP para integração com assistentes de IA:

atlassian-cli mcp-server

Filtragem de Grupos de Ferramentas

Filtre as ferramentas disponíveis usando a flag --tools:

# 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

Grupos de ferramentas disponíveis:

  • jira_user - Autenticação do usuário
  • jira_issue - Obter issue, subtarefas
  • jira_search - Pesquisar issues via JQL
  • jira_create - Criar issues
  • jira_update - Atualizar issues
  • jira_delete - Excluir issues
  • jira_transition - Transicionar issues, obter transições disponíveis
  • confluence_page - Obter conteúdo de páginas
  • confluence_label - Gerenciamento de rótulos
  • confluence_restriction - Gerenciamento de restrições de páginas

Integração com Claude Code

Adicione às configurações MCP do seu Claude Code:

{
  "mcpServers": {
    "atlassian": {
      "command": "atlassian-cli",
      "args": ["mcp-server"],
      "env": {
        "JIRA_URL": "https://your-domain.atlassian.net",
        "JIRA_EMAIL": "you@example.com",
        "JIRA_API_TOKEN": "your-api-token",
        "CONFLUENCE_URL": "https://your-domain.atlassian.net/wiki",
        "CONFLUENCE_EMAIL": "you@example.com",
        "CONFLUENCE_API_TOKEN": "your-api-token"
      }
    }
  }
}

Por que não o ACLI oficial?

A Atlassian fornece uma CLI oficial (ACLI) e um servidor MCP remoto para integração com IA. Veja como esta ferramenta difere:

vs. ACLI

atlassian-cliACLI
DistribuiçãoBinário único, sem dependênciasRequer instalação de pacotes
AutenticaçãoApenas variáveis de ambienteacli auth login interativo
Compatibilidade com CI/CDAlta — sem necessidade de fluxo de navegadorLimitada — login headless é complicado
Suporte a Server/DCSim (autenticação PAT)Focado em Cloud
Público-alvoDesenvolvedores, automação, agentes de IAAdministradores, operações em massa

vs. servidor MCP remoto da Atlassian

O servidor MCP remoto da Atlassian tornou-se GA em fevereiro de 2026, mas vem com desvantagens:

  • Pesado em contexto — carrega 73 esquemas de ferramentas antecipadamente, consumindo 40–50% da janela de contexto antes de qualquer trabalho real
  • OAuth obrigatório — fluxo de autenticação baseado em navegador; não adequado para ambientes headless ou CI/CD
  • Dependência de rede — requer uma conexão de saída para o servidor remoto da Atlassian

A flag --tools desta ferramenta permite carregar apenas os grupos que você precisa, mantendo o uso de tokens mínimo para agentes de IA.

Quando escolher esta ferramenta

  • Executando em pipelines de CI/CD ou scripts de automação (autenticação apenas via variáveis de ambiente)
  • Usando tanto Server/Data Center quanto Cloud com uma única interface
  • Incorporando como um servidor MCP em agentes de IA onde a eficiência de contexto é importante

Licença

MIT