Jira MCP Server
Interaja com projetos do Jira usando linguagem natural.
Documentação
Jira MCP Server
Fale com o Jira em linguagem natural para obter informações e modificar seu projeto. Use-o com o Claude Desktop em combinação com um README personalizado que você criará com informações do projeto, para que você possa delegar tarefas de PM (por exemplo, dado que você tem uma lista da sua equipe e suas especialidades, atribua qualquer nova tarefa à pessoa mais relevante).
Construído usando o Model Context Protocol.
O servidor permite:
- Criação e configuração de projetos
- Gerenciamento de tarefas e subtarefas
- Vinculação de tarefas e dependências
- Fluxos de trabalho automatizados de tarefas
Configuração
Variáveis de ambiente obrigatórias:
JIRA_HOST: O hostname da sua instância do JiraJIRA_API_TOKEN: Token de API do https://id.atlassian.com/manage-profile/security/api-tokens OU Token de Acesso Pessoal (PAT)JIRA_AUTH_TYPE: Tipo de autenticação - "basic" (padrão) ou "bearer"
Variáveis de ambiente opcionais:
JIRA_API_VERSION: Versão da API do Jira a ser usada (padrão: "3")
Para Autenticação Básica (padrão):
JIRA_EMAIL: O e-mail da sua conta Jira (obrigatório ao usar autenticação básica)
Para Autenticação com Token de Acesso Pessoal (PAT):
- Defina
JIRA_AUTH_TYPE=bearere forneça seu PAT comoJIRA_API_TOKEN JIRA_EMAILnão é obrigatório ao usar PAT
Configuração do Token de Acesso Pessoal
Os Tokens de Acesso Pessoal (PATs) são o método de autenticação recomendado para o Jira Cloud, pois oferecem melhor segurança do que os tokens de API. Para criar um PAT:
- Vá para as configurações da sua instância do Jira
- Navegue até Personal Access Tokens (geralmente em Security ou Account Settings)
- Clique em Create token
- Dê ao seu token um nome descritivo (por exemplo, "Jira MCP Server")
- Defina escopos/permissões apropriados (normalmente você precisará de acesso de leitura e escrita a projetos e tarefas)
- Copie o token gerado e use-o como seu
JIRA_API_TOKEN - Defina
JIRA_AUTH_TYPE=bearerna sua configuração
Nota: Os PATs não estão disponíveis para todas as instâncias do Jira. Se a sua instância não suportar PATs, use o método de autenticação básica com seu token de API regular.
Ferramentas Disponíveis
1. Gerenciamento de Usuários
// Get user's account ID by email
{
email: "user@example.com";
}
2. Gerenciamento de Tipos de Tarefa
// List all available issue types
// Returns: id, name, description, subtask status
// No parameters required
3. Tipos de Vínculo de Tarefas
// List all available issue link types
// Returns: id, name, inward/outward descriptions
// No parameters required
4. Gerenciamento de Tarefas
Recuperando Tarefas
// Get all issues in a project
{
projectKey: "PROJECT"
}
// Get issues with JQL filtering
{
projectKey: "PROJECT",
jql: "status = 'In Progress' AND assignee = currentUser()"
}
// Get issues assigned to user
{
projectKey: "PROJECT",
jql: "assignee = 'user@example.com' ORDER BY created DESC"
}
Criando Tarefas
// Create a standard issue
{
projectKey: "PROJECT",
summary: "Issue title",
issueType: "Task", // or "Story", "Bug", etc.
description: "Detailed description",
assignee: "accountId", // from get_user tool
labels: ["frontend", "urgent"],
components: ["ui", "api"],
priority: "High"
}
// Create a subtask
{
parent: "PROJECT-123",
projectKey: "PROJECT",
summary: "Subtask title",
issueType: "Subtask",
description: "Subtask details",
assignee: "accountId"
}
Atualizando Tarefas
// Update issue fields
{
issueKey: "PROJECT-123",
summary: "Updated title",
description: "New description",
assignee: "accountId",
status: "In Progress",
priority: "High"
}
Dependências de Tarefas
// Create issue link
{
linkType: "Blocks", // from list_link_types
inwardIssueKey: "PROJECT-124", // blocked issue
outwardIssueKey: "PROJECT-123" // blocking issue
}
Excluindo Tarefas
// Delete single issue
{
issueKey: "PROJECT-123"
}
// Delete issue with subtasks
{
issueKey: "PROJECT-123",
deleteSubtasks: true
}
// Delete multiple issues
{
issueKeys: ["PROJECT-123", "PROJECT-124"]
}
Formatação de Campos
Campo de Descrição
O campo de descrição suporta formatação no estilo markdown:
- Use linhas em branco entre parágrafos
- Use "- " para marcadores
- Use "1. " para listas numeradas
- Use cabeçalhos terminando com ":" (seguidos de linha em branco)
Exemplo:
Task Overview:
This task involves implementing new features:
- Feature A implementation
- Feature B testing
Steps:
1. Design component
2. Implement logic
3. Add tests
Acceptance Criteria:
- All tests passing
- Documentation updated
Tratamento de Erros
O servidor fornece mensagens de erro detalhadas para:
- Chaves de tarefa inválidas
- Campos obrigatórios ausentes
- Problemas de permissão
- Limites de taxa da API
Instruções de Configuração
-
Clone o repositório:
git clone https://github.com/George5562/Jira-MCP-Server.git cd Jira-MCP-Server -
Instale as dependências:
npm install -
Configure as variáveis de ambiente: Crie um arquivo
.envno diretório raiz:Para Autenticação Básica (padrão):
JIRA_HOST=your-instance.atlassian.net JIRA_EMAIL=your-email@example.com JIRA_API_TOKEN=your-api-token JIRA_AUTH_TYPE=basicPara Autenticação com Token de Acesso Pessoal (PAT):
JIRA_HOST=your-instance.atlassian.net JIRA_API_TOKEN=your-personal-access-token JIRA_AUTH_TYPE=bearer -
Compile o projeto:
npm run build -
Inicie o servidor:
npm start
Configurando o Claude Desktop
Para usar este servidor MCP com o Claude Desktop:
-
Localize o arquivo de configuração do Claude Desktop:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
-
Adicione o servidor Jira MCP à sua configuração:
Para Autenticação Básica (padrão):
{ "mcpServers": { "jira-server": { "name": "jira-server", "command": "/path/to/node", "args": ["/path/to/jira-server/build/index.js"], "cwd": "/path/to/jira-server", "env": { "JIRA_HOST": "your-jira-instance.atlassian.net", "JIRA_EMAIL": "your-email@example.com", "JIRA_API_TOKEN": "your-api-token", "JIRA_AUTH_TYPE": "basic" } } } }Para Autenticação com Token de Acesso Pessoal (PAT):
{ "mcpServers": { "jira-server": { "name": "jira-server", "command": "/path/to/node", "args": ["/path/to/jira-server/build/index.js"], "cwd": "/path/to/jira-server", "env": { "JIRA_HOST": "your-jira-instance.atlassian.net", "JIRA_API_TOKEN": "your-personal-access-token", "JIRA_AUTH_TYPE": "bearer" } } } }Substitua
/path/to/jira-serverpelo caminho absoluto do seu repositório clonado. Substitua/path/to/nodepelo caminho absoluto do seu executável Node.js (geralmente você pode encontrá-lo executandowhich nodeouwhere nodeno seu terminal). Usar o caminho direto para o executável Node.js e o arquivo JavaScript compilado (build/index.jsapós executarnpm run build) é recomendado para confiabilidade. -
Reinicie o Claude Desktop para aplicar as alterações.
Configurando o Cursor
Para usar este servidor Jira MCP com o Cursor:
-
Garanta que o servidor esteja compilado: Execute
npm run buildno diretórioJira-MCP-Serverpara criar o arquivobuild/index.jsnecessário. -
Localize ou crie o arquivo de configuração MCP do Cursor:
- Para configuração específica do projeto:
.cursor/mcp.jsonno diretório raiz do seu projeto. - Para configuração global (todos os projetos):
~/.cursor/mcp.jsonno seu diretório pessoal.
- Para configuração específica do projeto:
-
Adicione a configuração do servidor Jira MCP ao
mcp.json:Para Autenticação Básica (padrão):
{ "mcpServers": { "jira-mcp-server": { "command": "node", // Or provide the absolute path to your Node.js executable "args": [ "/path/to/your/Jira-MCP-Server/build/index.js" // Absolute path to the server's built index.js ], "cwd": "/path/to/your/Jira-MCP-Server", // Absolute path to the Jira-MCP-Server directory "env": { "JIRA_HOST": "your-jira-instance.atlassian.net", "JIRA_EMAIL": "your-email@example.com", // Your Jira email "JIRA_API_TOKEN": "your-api-token", // Your Jira API token "JIRA_AUTH_TYPE": "basic" } } // You can add other MCP server configurations here } }Para Autenticação com Token de Acesso Pessoal (PAT):
{ "mcpServers": { "jira-mcp-server": { "command": "node", // Or provide the absolute path to your Node.js executable "args": [ "/path/to/your/Jira-MCP-Server/build/index.js" // Absolute path to the server's built index.js ], "cwd": "/path/to/your/Jira-MCP-Server", // Absolute path to the Jira-MCP-Server directory "env": { "JIRA_HOST": "your-jira-instance.atlassian.net", "JIRA_API_TOKEN": "your-personal-access-token", // Your Jira PAT "JIRA_AUTH_TYPE": "bearer" } } // You can add other MCP server configurations here } }- Substitua
/path/to/your/Jira-MCP-Serverpelo caminho absoluto correto de onde você clonou o repositórioJira-MCP-Server. - Se
nodenão estiver no PATH do seu sistema ou se você preferir um caminho absoluto, substitua"node"pelo caminho completo do seu executável Node.js (por exemplo,/usr/local/bin/nodeouC:\Program Files\nodejs\node.exe). - Garanta que os detalhes da sua instância do Jira e o token de API estejam preenchidos corretamente na seção
env.
- Substitua
-
Reinicie o Cursor para aplicar as alterações.
Usando Regras do Cursor para Contexto do Jira
Para tornar a interação com o Jira mais fluida, você pode definir seu projeto Jira padrão e identificador de usuário nas regras do Cursor. Isso ajuda a IA do Cursor a entender seu contexto sem que você precise especificá-lo em cada prompt.
Crie ou edite seu arquivo de Regras do Cursor (por exemplo, no seu projeto .cursor/rules.json ou global ~/.cursor/rules.json (o arquivo e o método exatos para regras podem variar, consulte a documentação do Cursor para "Rules" ou "Context Management")). Adicione entradas como:
As an AI assistant, when I am asked about Jira tasks:
- Assume the primary Jira project key is 'YOUR_PROJECT_KEY_HERE'.
- Assume 'my assigned tasks' or tasks assigned to 'me' refer to the Jira user with the email 'your_jira_email@example.com' (or your Jira Account ID).
You can then use these in your JQL queries, for example: project = YOUR_PROJECT_KEY_HERE AND assignee = 'your_jira_email@example.com'.
Substitua YOUR_PROJECT_KEY_HERE e your_jira_email@example.com pelos seus detalhes reais.
Exemplo de Uso no Chat do Cursor
Depois de configurado (especialmente com Regras do Cursor para contexto), você pode perguntar ao Cursor:
"Using Jira MCP, list my assigned tasks. Then, based on these tasks, come up with an implementation plan and work schedule."
Se você não configurou regras, ou precisar especificar um projeto ou usuário diferente, você seria mais explícito:
"Using Jira MCP, list tasks assigned to 'user@example.com' in project 'PROJECT_KEY'. Then, based on these tasks, come up with an implementation plan and work schedule."
A IA do Cursor usará o servidor Jira MCP para buscar as tarefas e, em seguida, prosseguirá com a solicitação de planejamento e agendamento.
Instalando via Smithery
Para instalar o Jira MCP Server para Claude Desktop automaticamente via Smithery:
npx -y @smithery/cli install @George5562/Jira-MCP-Server --client claude
Instalação Manual
-
Clone o repositório:
git clone https://github.com/George5562/Jira-MCP-Server.git cd Jira-MCP-Server -
Instale as dependências:
npm install -
Configure as variáveis de ambiente: Crie um arquivo
.envno diretório raiz:Para Autenticação Básica (padrão):
JIRA_HOST=your-instance.atlassian.net JIRA_EMAIL=your-email@example.com JIRA_API_TOKEN=your-api-token JIRA_AUTH_TYPE=basicPara Autenticação com Token de Acesso Pessoal (PAT):
JIRA_HOST=your-instance.atlassian.net JIRA_API_TOKEN=your-personal-access-token JIRA_AUTH_TYPE=bearer -
Compile o projeto:
npm run build -
Inicie o servidor:
npm start