Jira

Interactúa con Jira para gestionar incidencias, proyectos y flujos de trabajo utilizando la API REST de la plataforma Jira Cloud.

Documentación

Jira MCP (Model Context Protocol)

Resumen

Este servidor del Model Context Protocol (MCP) permite que los Modelos de Lenguaje de Gran Escala (LLMs) interactúen con Jira a través de una API estandarizada. Permite que los asistentes de IA realicen operaciones comunes de Jira sin necesidad de integración directa con la API, facilitando la creación de herramientas impulsadas por IA que funcionen con tu instancia de Jira.

Características

  • Integración con la API de la Plataforma Jira: Acceso integral a la API REST de Jira Cloud Platform
  • Integración con la API de Jira Software: Trabaja con funciones de Jira Software como tableros, sprints y épicas
  • Soporte del Protocolo MCP: Interfaz estandarizada para asistentes de IA y herramientas de automatización
  • Autenticación: Soporte de autenticación básica usando PAT (Personal Access Token) de Atlassian

Herramientas MCP compatibles

El servidor MCP admite las siguientes operaciones de Jira:

Herramientas de Agile y Tableros

  • get_all_agile_boards: Recuperar todos los tableros ágiles disponibles
  • get_epics_from_board: Obtener todas las épicas asociadas a un tablero específico
  • get_issues_from_board: Obtener todos los problemas de un tablero especificado
  • get_issues_from_epic: Recuperar todos los problemas asociados a una épica específica
  • get_issues_from_sprint: Obtener todos los problemas de un sprint especificado
  • get_sprints_from_board: Recuperar todos los sprints asociados a un tablero
  • move_issues_to_epic: Mover problemas especificados bajo una épica

Operaciones de Problemas

  • add_jira_comment: Agregar un comentario a un problema de Jira
  • create_issue: Crear un nuevo problema de Jira
  • delete_issue: Eliminar un problema existente de Jira
  • get_issue: Recuperar detalles de un problema específico
  • get_issue_fields: Obtener todos los campos disponibles para problemas
  • get_issue_transitions: Obtener posibles transiciones de estado para un problema
  • get_project_versions: Obtener todas las versiones en un proyecto con soporte de paginación
  • search_issue_by_jql: Buscar problemas usando JQL (Jira Query Language)
  • transition_jira_issue: Cambiar el estado de un problema
  • update_issue: Actualizar los detalles de un problema existente
  • add_jira_attachments: Agregar archivos adjuntos a un problema existente

Operaciones de Usuario

  • search_user: Encontrar usuarios de Jira según criterios de búsqueda
  • get_myself_info: Obtener información sobre el usuario autenticado

Cómo usar esta imagen

MCP SSE

Uso simple

docker run -d --name jira-mcp \
  -p 8080:8080 \
  -e atlassian.url=https://your-company.atlassian.net \
  -e atlassian.username=your-jira-email \
  -e atlassian.pat=your-jira-pat \
  guang1/jira-mcp:latest

Usando un Archivo de Entorno

Crea un archivo de configuración (por ejemplo, atlassian.config):

atlassian.url=https://your-company.atlassian.net
atlassian.username=your-jira-email
atlassian.pat=your-jira-pat

Luego ejecuta:

docker run -d --name jira-mcp \
  -p 8080:8080 \
  --env-file atlassian.config \
  guang1/jira-mcp:latest

Docker Compose para SSE

Ejemplo Básico

services:
  jira:
    container_name: jira-mcp
    image: guang1/jira-mcp
    environment:
      - atlassian.url=https://your-company.atlassian.net
      - atlassian.username=your-jira-email
      - atlassian.pat=your-jira-pat
    ports:
      - "8080:8080"
    restart: always

Con Archivo de Entorno

services:
  jira:
    container_name: jira-mcp
    image: guang1/jira-mcp
    env_file:
      - jira.config
    ports:
      - "8080:8080"
    restart: always

URL de MCP SSE

http://localhost:8080/mcp/sse

MCP STDIO

Must pass quarkus.mcp.server.stdio.enabled=true, quarkus.log.console.enable=false and quarkus.log.console.stderr=false environment variables with -i interactive option.

Simple usage

docker run --rm \
  -e atlassian.url=https://your-company.atlassian.net \
  -e atlassian.username=your-jira-email \
  -e atlassian.pat=your-jira-pat \
  -e quarkus.mcp.server.stdio.enabled=true \
  -e quarkus.log.console.enable=false \
  -e quarkus.log.console.stderr=false \
  -i guang1/jira-mcp:latest

Using an Environment File

docker run --rm --env-file=atlassian.config \
   -e quarkus.mcp.server.stdio.enabled=true \
   -e quarkus.log.console.enable=false \
   -e quarkus.log.console.stderr=false \
   -i guang1/jira-mcp:latest

Claude Desktop Configuration (STDIO)

To use the Docker version with Claude Desktop, add this to your claude_desktop_config.json or server_config.json file:

Simple usage

{
  "mcpServers": {
    "jira": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-e",
        "atlassian.url=https://your-company.atlassian.net",
        "-e",
        "atlassian.username=your-jira-email",
        "-e",
        "atlassian.pat=your-jira-pat",       
        "-e",
        "quarkus.log.console.enable=false",
        "-e",
        "quarkus.log.console.stderr=false",
        "-i",
        "guang1/jira-mcp:latest"
      ]
    }
  }
}

Using an Environment File

{
  "mcpServers": {
    "jira": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "--env-file=atlassian.conf",
        "-e",
        "quarkus.mcp.server.stdio.enabled=true",
        "-e",
        "quarkus.log.console.enable=false",
        "-e",
        "quarkus.log.console.stderr=false",
        "-i",
        "guang1/jira-mcp:latest"
      ]
    }
  }
}

Configuración

Variables de Entorno

VariableDescripciónRequerida
atlassian.urlURL de la instancia de atlassian (por ejemplo, https://your-company.atlassian.net)Sí
atlassian.usernameDirección de correo electrónico de la cuenta de atlassianSí
atlassian.patToken de Acceso Personal de atlassian (API Token)Sí

Creación de un Token de API de Jira

Para generar un Token de Acceso Personal para Jira:

  1. Ve a https://id.atlassian.com/manage-profile/security/api-tokens
  2. Haz clic en "Create API token"
  3. Dale un nombre a tu token (por ejemplo, "MCP Server")
  4. Copia el token generado para usarlo con este servidor MCP

Consideraciones de Seguridad

⚠️ Advertencia: Este servidor MCP requiere credenciales de autenticación con acceso a tu instancia de Jira. Considera las siguientes prácticas de seguridad:

  • Crea una cuenta de servicio dedicada de Jira con permisos apropiados
  • Rota regularmente tu token de API
  • Ejecuta el contenedor en un entorno seguro y aislado
  • Usa reglas de seguridad de red para restringir el acceso al servidor MCP
  • Ten precaución sobre qué operaciones permites que realicen los LLMs

Casos de Uso de Ejemplo

Casos de Uso de Ejemplo

  • Establecer un Prefijo de Ticket Predeterminado
    Define un prefijo de ticket predeterminado en tus reglas (por ejemplo, MyProj-). Esto te permite hacer referencia a tickets en el chat solo por número (por ejemplo, 1234 en lugar de MyProj-1234).

  • Configurar el ID de Cuenta Personal de Jira
    Especifica tu ID de cuenta de Jira en las reglas para evitar llamadas repetidas a la API (como get_myself_info) para cada operación.

  • Personalizar Campos de Jira
    Establece campos personalizados (por ejemplo, puntos de historia, desarrollador, etc.) en tus reglas para evitar que la IA llame a get_issue_fields cada vez.

  • Automatizar la Gestión de Problemas
    Crea y actualiza problemas de Jira automáticamente según solicitudes en lenguaje natural.

  • Generar Informes y Resúmenes
    Produce informes y resúmenes de Jira bajo demanda.

  • Planificación de Sprints y Gestión de Épicas
    Asiste con la planificación de sprints y tareas de gestión de épicas.

  • Interacción Conversacional con Jira
    Permite que los miembros del equipo interactúen con Jira usando lenguaje natural y conversacional.

Solución de Problemas

Si encuentras problemas:

  • Verifica que tu token de API tenga los permisos requeridos
  • Comprueba que tu URL de atlassian sea correcta y accesible
  • Asegúrate de que tu nombre de usuario (correo electrónico) de atlassian sea correcto
  • Revisa los registros del contenedor para obtener información detallada sobre errores

Licencia

Este proyecto está licenciado bajo la Licencia MIT: consulta el archivo LICENSE para obtener más detalles.