JIRA
Acesse e gerencie issues, projetos e usuários do JIRA com cargas de dados otimizadas para janelas de contexto de IA.
Documentação
Servidor MCP JIRA
Uma implementação de servidor Model Context Protocol (MCP) que fornece acesso a dados do JIRA com rastreamento de relacionamentos, payloads de dados otimizados e limpeza de dados para janelas de contexto de IA.
ℹ️ Existe um servidor MCP separado para Confluence
Suporte a Jira Cloud e Jira Server (Data Center)
Este servidor MCP suporta instâncias Jira Cloud e Jira Server (Data Center). Você pode selecionar qual tipo usar definindo a variável de ambiente JIRA_TYPE:
cloud(padrão): Para Jira Cloud (hospedado pela Atlassian)server: Para Jira Server/Data Center (auto-hospedado)
O servidor usará automaticamente a versão correta da API e o método de autenticação para o tipo selecionado.
Recursos
- Pesquisar issues do JIRA usando JQL (máximo de 50 resultados por solicitação)
- Recuperar filhos de épicos com histórico de comentários e payloads otimizados (máximo de 100 issues por solicitação)
- Obter informações detalhadas de issues, incluindo comentários e issues relacionadas
- Criar, atualizar e gerenciar issues do JIRA
- Adicionar comentários a issues
- Extrair menções de issues do Formato de Documento Atlassian
- Rastrear relacionamentos de issues (menções, links, pai/filho, épicos)
- Limpar e transformar conteúdo rico do JIRA para eficiência de contexto de IA
- Suporte para anexos de arquivos com manipulação segura de upload multipart
- Suporta APIs do Jira Cloud e Jira Server (Data Center)
Pré-requisitos
- Bun (v1.0.0 ou superior)
- Conta JIRA com acesso à API
Variáveis de Ambiente
JIRA_API_TOKEN=your_api_token # API token for Cloud, PAT or password for Server/DC
JIRA_BASE_URL=your_jira_instance_url # e.g., https://your-domain.atlassian.net
JIRA_USER_EMAIL=your_email # Your Jira account email
JIRA_TYPE=cloud # 'cloud' or 'server' (optional, defaults to 'cloud')
JIRA_AUTH_TYPE=basic # 'basic' or 'bearer' (optional, defaults to 'basic')
Métodos de Autenticação
-
Jira Cloud: Use tokens de API com autenticação Basic
- Crie um token de API em: https://id.atlassian.com/manage-profile/security/api-tokens
- Defina
JIRA_AUTH_TYPE=basic(padrão)
-
Jira Server/Data Center:
- Autenticação Basic: Use nome de usuário/senha ou tokens de API
- Defina
JIRA_AUTH_TYPE=basic(padrão)
- Defina
- Autenticação Bearer: Use Tokens de Acesso Pessoal (PATs) - disponível no Data Center 8.14.0+
- Crie um PAT nas configurações do seu perfil
- Defina
JIRA_AUTH_TYPE=bearer - Use o PAT como seu
JIRA_API_TOKEN
- Autenticação Basic: Use nome de usuário/senha ou tokens de API
Instalação e Configuração
1. Clone o repositório
git clone [repository-url]
cd jira-mcp
2. Instale as dependências e faça o build
bun install
bun run build
3. Configure o servidor MCP
Edite o arquivo de configuração apropriado:
macOS:
- Cline:
~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json - Claude Desktop:
~/Library/Application Support/Claude/claude_desktop_config.json
Windows:
- Cline:
%APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json - Claude Desktop:
%APPDATA%\Claude Desktop\claude_desktop_config.json
Linux:
- Cline:
~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json - Claude Desktop: infelizmente ainda não existe
Adicione a seguinte configuração sob o objeto mcpServers:
{
"mcpServers": {
"jira": {
"command": "node",
"args": ["/absolute/path/to/jira-mcp/build/index.js"],
"env": {
"JIRA_API_TOKEN": "your_api_token",
"JIRA_BASE_URL": "your_jira_instance_url",
"JIRA_USER_EMAIL": "your_email",
"JIRA_TYPE": "cloud",
"JIRA_AUTH_TYPE": "basic"
}
}
}
}
4. Reinicie o servidor MCP
Nas configurações de MCP do Cline, reinicie o servidor MCP. Reinicie o Claude Desktop para carregar o novo servidor MCP.
Desenvolvimento
Execute os testes:
bun test
Modo de observação para desenvolvimento:
bun run dev
Para recompilar após alterações:
bun run build
Ferramentas MCP Disponíveis
search_issues
Pesquisar issues do JIRA usando JQL. Retorna até 50 resultados por solicitação.
Esquema de Entrada:
{
searchString: string; // JQL search string
}
get_epic_children
Obter todas as issues filhas em um épico, incluindo seus comentários e dados de relacionamento. Limitado a 100 issues por solicitação.
Esquema de Entrada:
{
epicKey: string; // The key of the epic issue
}
get_issue
Obter informações detalhadas sobre uma issue específica do JIRA, incluindo comentários e todos os relacionamentos.
Esquema de Entrada:
{
issueId: string; // The ID or key of the JIRA issue
}
create_issue
Criar uma nova issue do JIRA com campos especificados.
Esquema de Entrada:
{
projectKey: string, // The project key where the issue will be created
issueType: string, // The type of issue (e.g., "Bug", "Story", "Task")
summary: string, // The issue summary/title
description?: string, // Optional issue description
fields?: { // Optional additional fields
[key: string]: any
}
}
update_issue
Atualizar campos de uma issue existente do JIRA.
Esquema de Entrada:
{
issueKey: string, // The key of the issue to update
fields: { // Fields to update
[key: string]: any
}
}
add_attachment
Adicionar um anexo de arquivo a uma issue do JIRA.
Esquema de Entrada:
{
issueKey: string, // The key of the issue
fileContent: string, // Base64 encoded file content
filename: string // Name of the file to be attached
}
add_comment
Adicionar um comentário a uma issue do JIRA. Aceita texto simples e o converte internamente para o Formato de Documento Atlassian necessário.
Esquema de Entrada:
{
issueIdOrKey: string, // The ID or key of the issue to add the comment to
body: string // The content of the comment (plain text)
}
Recursos de Limpeza de Dados
- Extrai texto do Formato de Documento Atlassian
- Rastreia menções de issues em descrições e comentários
- Mantém links formais de issues com tipos de relacionamento
- Preserva relacionamentos pai/filho
- Rastreia associações de épicos
- Inclui histórico de comentários com informações do autor
- Remove metadados desnecessários das respostas
- Processa recursivamente nós de conteúdo para menções
- Remove duplicatas de menções de issues
Detalhes Técnicos
- Construído com TypeScript em modo estrito
- Usa o runtime Bun para melhor desempenho
- Vite para builds otimizados
- Usa a API REST do JIRA v3 (Cloud) ou v2 (Server/Data Center)
- Suporta múltiplos métodos de autenticação:
- Autenticação Basic com tokens de API ou nome de usuário/senha
- Autenticação Bearer com Tokens de Acesso Pessoal (PATs)
- Solicitações de API em lote para dados relacionados
- Payloads de resposta otimizados para janelas de contexto de IA
- Transformação eficiente de estruturas Atlassian complexas
- Tratamento robusto de erros
- Considerações de limitação de taxa
- Limites máximos:
- Resultados de pesquisa: 50 issues por solicitação
- Filhos de épicos: 100 issues por solicitação
- Suporte para dados de formulário multipart para anexos de arquivos seguros
- Detecção e validação automática de tipo de conteúdo
Tratamento de Erros
O servidor implementa uma estratégia abrangente de tratamento de erros:
- Detecção de erros de rede e mensagens apropriadas
- Tratamento de códigos de status HTTP (especialmente 404 para issues)
- Mensagens de erro detalhadas com códigos de status
- Registro de detalhes de erros no console
- Validação de entrada para todos os parâmetros
- Propagação segura de erros através do protocolo MCP
- Tratamento especializado para erros comuns da API do JIRA
- Validação Base64 para anexos
- Tratamento de falhas em solicitações multipart
- Detecção de limitação de taxa
- Validação de parâmetros de anexos
LICENÇA
Este projeto está licenciado sob a Licença MIT - consulte o arquivo LICENÇA para detalhes.