JIRA

Interactúa con JIRA para buscar incidencias usando JQL y obtener información detallada de las incidencias.

Documentación

Servidor MCP de JIRA

smithery badge

Un servidor MCP que permite a los Modelos de Lenguaje de Gran Tamaño (LLMs) interactuar con JIRA mediante herramientas y contexto estandarizados. Este servidor proporciona capacidades para buscar incidencias usando JQL y recuperar información detallada de incidencias.

jira-mcp MCP server

Características

  • Búsqueda JQL: Ejecuta consultas JQL complejas con soporte de paginación
  • Detalles de incidencias: Recupera información detallada sobre incidencias específicas de JIRA

Requisitos previos

  • npm instalado
  • Una instancia de JIRA con acceso a la API
  • Token de API de JIRA o Token de Acceso Personal
  • Correo electrónico de usuario de JIRA asociado al token de API

Obtención de credenciales de API de JIRA

  1. Inicia sesión en tu cuenta de Atlassian en https://id.atlassian.com
  2. Ve a la configuración de seguridad
  3. En tokens de API, selecciona "Crear token de API"
  4. Asigna a tu token un nombre significativo (por ejemplo, "MCP Server")
  5. Copia el token generado: ¡no podrás verlo de nuevo!
  6. Usa este token como tu JIRA_API_KEY
  7. Usa la dirección de correo electrónico asociada a tu cuenta de Atlassian como JIRA_USER_EMAIL

Uso

Integración con Claude Desktop

  1. Agrega la configuración del servidor al archivo de configuración de Claude Desktop:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "jira": {
      "command": "npx",
      "args": ["-y", "jira-mcp"],
      "env": {
        "JIRA_INSTANCE_URL": "https://your-instance.atlassian.net",
        "JIRA_USER_EMAIL": "your-email@company.com",
        "JIRA_API_KEY": "your-api-token"
      }
    }
  }
}
  1. Reinicia Claude Desktop para cargar la nueva configuración.

Herramientas disponibles

1. Búsqueda JQL (jql_search)

Ejecuta una consulta de búsqueda JQL con parámetros personalizables.

Parámetros:

  • jql (obligatorio): cadena de consulta JQL
  • nextPageToken: Token para paginación
  • maxResults: Número máximo de resultados a devolver
  • fields: Matriz de nombres de campos a incluir
  • expand: Información adicional a incluir

Ejemplo:

{
  "jql": "project = 'MyProject' AND status = 'In Progress'",
  "maxResults": 10,
  "fields": ["summary", "status", "assignee"]
}

2. Obtener incidencia (get_issue)

Recupera información detallada sobre una incidencia específica.

Parámetros:

  • issueIdOrKey (obligatorio): ID o clave de la incidencia
  • fields: Matriz de nombres de campos a incluir
  • expand: Información adicional a incluir
  • properties: Matriz de propiedades a incluir
  • failFast: Si se debe fallar rápidamente ante errores

Ejemplo:

{
  "issueIdOrKey": "PROJ-123",
  "fields": ["summary", "description", "status"],
  "expand": "renderedFields,names"
}

Desarrollo

Configuración

Configura tus variables de entorno antes de ejecutar el servidor. Crea un archivo .env en el directorio raíz:

JIRA_INSTANCE_URL=https://your-instance.atlassian.net
JIRA_USER_EMAIL=your-email@company.com
JIRA_API_KEY=your-api-token

Reemplaza los valores con:

  • La URL real de tu instancia de JIRA
  • La dirección de correo electrónico asociada a tu cuenta de JIRA
  • Tu token de API de JIRA (se puede generar en la Configuración de la cuenta de Atlassian)

Instalación

Instalación mediante Smithery

Para instalar JIRA para Claude Desktop automáticamente mediante Smithery:

npx -y @smithery/cli install jira-mcp --client claude

Instalación manual

  1. Clona este repositorio:
git clone <repository-url>
cd jira-mcp
  1. Instala las dependencias:
npm install

Ejecución con MCP Inspector

Para pruebas y desarrollo, puedes usar el MCP Inspector:

npm run inspect

Agregar nuevas herramientas

Para agregar nuevas herramientas, modifica el manejador ListToolsRequestSchema en index.js:

server.setRequestHandler(ListToolsRequestSchema, async () => {
  return {
    tools: [
      // Existing tools...
      {
        name: "your_new_tool",
        description: "Description of your new tool",
        inputSchema: {
          // Define input schema...
        }
      }
    ]
  };
});

Luego implementa la herramienta en el manejador CallToolRequestSchema.

Licencia

MIT

Contribuciones

¡Las contribuciones son bienvenidas! No dudes en enviar un PR.