3f313193c8a34a8fa23046ddbd9ed327dbcf81d9source_git · pilloom/jira-lite-mcp · current release
Observed 2026-08-25T22:09:38.204Z using mcpSecurity-inventory. Status: succeeded. Negotiated protocol: 2025-06-18.
{
"tools": {
"listChanged": true
}
}| Tool | Category | Annotations | Risk |
|---|---|---|---|
jira_add_commentAñade un comentario a un issue de Jira. El texto se envía en texto plano y se convierte al formato que espera la API, conservando los saltos de línea.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueKey": {
"type": "string",
"description": "Clave del issue. Ejemplo: ATY-123"
},
"body": {
"type": "string",
"description": "Texto del comentario"
}
},
"required": [
"issueKey",
"body"
]
} | — | — · — | — |
jira_add_worklogRegistra tiempo trabajado en un issue de Jira. La respuesta incluye cómo ha interpretado Jira el tiempo enviado, en segundos, porque la duración de una jornada la define la configuración del sitio.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueKey": {
"type": "string",
"description": "Clave del issue. Ejemplo: ATY-123"
},
"timeSpent": {
"type": "string",
"description": "Tiempo trabajado en el formato de Jira. Ejemplos: 30m, 1h 30m, 8h"
},
"comment": {
"description": "Descripción del trabajo realizado",
"type": "string"
},
"started": {
"description": "Momento en que se realizó el trabajo, en formato ISO. Ejemplo: 2026-07-19T09:00:00. Por defecto, ahora",
"type": "string"
}
},
"required": [
"issueKey",
"timeSpent"
]
} | — | — · — | — |
jira_create_issueCrea un issue en Jira. Valida los campos contra el esquema real del proyecto y del tipo de issue antes de enviarlos, de modo que un payload incorrecto falle sin consumir una clave de issue. Los campos personalizados se indican por su nombre visible o por su identificador, y la persona asignada admite correo o nombre además del accountId. Con dryRun se comprueba el resultado sin crear nada. Conviene consultar antes jira_issue_fields para conocer los campos disponibles.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"project": {
"type": "string",
"description": "Clave del proyecto de Jira. Ejemplo: ATY"
},
"issueType": {
"type": "string",
"description": "Nombre o id del tipo de issue. Ejemplo: Tarea"
},
"summary": {
"type": "string",
"description": "Título del issue"
},
"description": {
"description": "Descripción en texto plano",
"type": "string"
},
"parent": {
"description": "Clave del issue padre. Obligatorio en subtareas. Ejemplo: ATY-123",
"type": "string"
},
"assignee": {
"description": "Persona asignada: correo, nombre visible o accountId. Ejemplo: alguien@example.com",
"type": "string"
},
"originalEstimate": {
"description": "Estimación inicial en el formato de Jira. Ejemplos: 30m, 1h 30m, 8h",
"type": "string"
},
"watchers": {
"description": "Observadores a añadir: correos, nombres visibles o accountIds",
"type": "array",
"items": {
"type": "string"
}
},
"dryRun": {
"description": "Valida el payload contra el esquema real y devuelve lo que se enviaría, sin crear el issue",
"type": "boolean"
},
"priority": {
"description": "Nombre de la prioridad. Ejemplo: High",
"type": "string"
},
"labels": {
"description": "Etiquetas del issue",
"type": "array",
"items": {
"type": "string"
}
},
"customFields": {
"description": "Campos personalizados por nombre o identificador. Ejemplo: { \"Criterios de aceptación\": \"[ ] Primero\" }",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"required": [
"project",
"issueType",
"summary"
]
} | — | — · — | — |
jira_create_sprintCrea un sprint en el tablero scrum de un proyecto. El tablero se resuelve a partir de la clave del proyecto; si tiene varios, la respuesta enumera sus identificadores para elegir uno con boardId. El sprint queda en estado "future": crearlo no lo arranca. Para meterle issues, jira_move_to_sprint.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"project": {
"description": "Clave del proyecto cuyo tablero scrum alojará el sprint. Ejemplo: ATY",
"type": "string"
},
"boardId": {
"description": "Identificador del tablero, necesario solo si el proyecto tiene más de uno",
"type": "number"
},
"name": {
"type": "string",
"description": "Nombre del sprint. Ejemplo: Sprint 12"
},
"startDate": {
"description": "Fecha de inicio: 2026-08-15 o 2026-08-15T09:00:00.000Z. Una fecha sin hora se ancla a medianoche UTC",
"type": "string"
},
"endDate": {
"description": "Fecha de fin, en el mismo formato que la de inicio",
"type": "string"
},
"goal": {
"description": "Objetivo del sprint",
"type": "string"
}
},
"required": [
"name"
]
} | — | — · — | — |
jira_deleteElimina de forma permanente un comentario, un registro de tiempo o un enlace entre issues. Los identificadores se obtienen de jira_explain_issue (comentarios y enlaces) o de jira_get_worklog. No permite eliminar issues: para retirar uno de la circulación, moverlo a un estado final con jira_transition_issue.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"comment",
"worklog",
"link"
],
"description": "Qué se elimina: comentario, registro de tiempo o enlace"
},
"id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
],
"description": "Identificador del elemento a eliminar"
},
"issueKey": {
"description": "Clave del issue al que pertenece. Obligatorio para comentarios y registros de tiempo; innecesario para enlaces",
"type": "string"
}
},
"required": [
"type",
"id"
]
} | — | — · — | — |
jira_explain_issueDevuelve un issue con todo su contexto en una sola llamada: descripción en texto legible, issue padre, subtareas, issues enlazados, comentarios recientes y estados a los que puede moverse. Admite pedir campos adicionales por su nombre. Pensado para entender un ticket completo sin encadenar varias consultas.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueKey": {
"type": "string",
"description": "Clave del issue. Ejemplo: ATY-123"
},
"extraFields": {
"description": "Campos adicionales a incluir, por su nombre visible. Ejemplo: [\"Criterios de aceptación\"]",
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"issueKey"
]
} | — | — · — | — |
jira_get_issueObtiene un issue de Jira por su clave: título, tipo, estado, prioridad, responsable, issue padre, etiquetas, fechas, estimación y tiempo dedicado, descripción y enlace web. Admite pedir campos adicionales por su nombre. Para subtareas, enlaces y comentarios, usar jira_explain_issue.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueKey": {
"type": "string",
"description": "Clave del issue de Jira"
},
"fields": {
"description": "Campos adicionales a incluir, por su nombre visible. Ejemplo: [\"Team\", \"Criterios de aceptación\"]",
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"issueKey"
]
} | — | — · — | — |
jira_get_worklogDevuelve el tiempo registrado en un issue de Jira: la estimación original, el total dedicado y cada registro con su autor, duración, fecha y descripción. Incluye el identificador de cada registro, necesario para eliminarlo.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueKey": {
"type": "string",
"description": "Clave del issue. Ejemplo: ATY-123"
}
},
"required": [
"issueKey"
]
} | — | — · — | — |
jira_issue_fieldsDevuelve los tipos de issue de un proyecto de Jira y, si se indica un tipo, los campos que admite al crearlo: identificador, nombre, si es obligatorio, tipo de dato y valores permitidos. Útil para conocer los campos reales de la instancia antes de crear un issue.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"project": {
"type": "string",
"description": "Clave del proyecto de Jira. Ejemplo: ATY"
},
"issueType": {
"description": "Nombre o id del tipo de issue. Ejemplo: Historia. Si se omite, se devuelven los tipos disponibles del proyecto.",
"type": "string"
}
},
"required": [
"project"
]
} | — | — · — | — |
jira_link_issuesEnlaza dos issues de Jira. La relación se indica tal como se enuncia, desde el primer issue hacia el segundo: "blocks", "is blocked by", "relates to", "duplicates". Se resuelve contra los tipos de enlace de la instancia y, si no existe, la respuesta enumera las relaciones posibles.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueKey": {
"type": "string",
"description": "Clave del issue de origen. Ejemplo: ATY-123"
},
"relation": {
"type": "string",
"description": "Relación desde el issue de origen hacia el de destino. Ejemplo: relates to, blocks, is blocked by"
},
"targetKey": {
"type": "string",
"description": "Clave del issue de destino. Ejemplo: ATY-456"
}
},
"required": [
"issueKey",
"relation",
"targetKey"
]
} | — | — · — | — |
jira_list_projectsLista los proyectos de Jira visibles para la cuenta autenticada, con su clave, nombre, tipo y responsable. Sirve para averiguar la clave de un proyecto a partir de su nombre, que es lo que necesitan el resto de herramientas.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"query": {
"description": "Filtra por texto contenido en el nombre o en la clave del proyecto. Si se omite, devuelve todos",
"type": "string"
},
"limit": {
"description": "Número máximo de proyectos a devolver. Por defecto 50",
"type": "number"
}
}
} | — | — · — | — |
jira_move_to_sprintMueve issues a un sprint. El sprint se indica por su identificador o por su nombre; por nombre hace falta también el proyecto, porque el nombre solo es único dentro de su tablero. Un issue pertenece a un solo sprint, así que moverlo lo saca del anterior. La respuesta dice qué issues se movieron realmente: la API los envía en lotes de 50 y uno puede fallar sin afectar al resto.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"sprint": {
"type": "string",
"description": "Identificador del sprint o su nombre. Ejemplo: 42, \"Sprint 12\""
},
"issues": {
"type": "array",
"items": {
"type": "string"
},
"description": "Claves de los issues a mover. Ejemplo: [\"ATY-1\", \"ATY-2\"]"
},
"project": {
"description": "Clave del proyecto, para localizar el tablero cuando el sprint se indica por su nombre",
"type": "string"
},
"boardId": {
"description": "Identificador del tablero, necesario solo si el proyecto tiene más de uno",
"type": "number"
}
},
"required": [
"sprint",
"issues"
]
} | — | — · — | — |
jira_my_workDevuelve los issues asignados al usuario autenticado que siguen pendientes, ordenados por fecha de actualización. Responde a preguntas como "¿qué tengo pendiente en Jira?". Cada issue incluye clave, título, tipo, estado, prioridad y fecha de última actualización.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"project": {
"description": "Limita el resultado a un proyecto. Ejemplo: ATY. Si se omite, busca en todos",
"type": "string"
},
"limit": {
"description": "Número máximo de issues a devolver. Por defecto 20",
"type": "number"
},
"includeDone": {
"description": "Incluye también los issues ya terminados. Por defecto false",
"type": "boolean"
}
}
} | — | — · — | — |
jira_project_summaryResume el estado de un proyecto de Jira a partir de sus issues abiertos: cuántos hay, cómo se reparten por estado, tipo y prioridad, cuántos están sin asignar y cuántos llevan tiempo sin actualizarse. Devuelve datos agregados, no una valoración.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"project": {
"type": "string",
"description": "Clave del proyecto de Jira. Ejemplo: ATY"
},
"staleDays": {
"description": "Días sin actualización a partir de los cuales un issue se considera estancado. Por defecto 14",
"type": "number"
}
},
"required": [
"project"
]
} | — | — · — | — |
jira_searchBusca issues en Jira usando una consulta JQL. Útil para encontrar tickets por proyecto, estado, asignación, sprint, etc. Devuelve los issues de una página junto con si quedan más resultados; la API de búsqueda no informa del total de coincidencias.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"jql": {
"type": "string",
"description": "Consulta JQL de Jira. Ejemplo: project = ATY AND status != Done"
},
"limit": {
"description": "Número máximo de issues a devolver. Por defecto 20",
"type": "number"
}
},
"required": [
"jql"
]
} | — | — · — | — |
jira_transition_issueCambia el estado de un issue de Jira. El destino se indica por el nombre del estado, por el nombre de la transición o por su id, y se resuelve contra las transiciones que el issue admite en ese momento. Si el destino no es válido, la respuesta enumera los estados posibles. Admite un comentario en la misma operación.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueKey": {
"type": "string",
"description": "Clave del issue. Ejemplo: ATY-123"
},
"to": {
"type": "string",
"description": "Estado o transición de destino. Ejemplo: En curso, Finalizada, o el id de la transición"
},
"comment": {
"description": "Comentario a añadir junto con el cambio de estado",
"type": "string"
}
},
"required": [
"issueKey",
"to"
]
} | — | — · — | — |
jira_update_issueActualiza los campos de un issue de Jira. Solo se envían los campos indicados; el resto queda intacto. Valida contra los campos que el issue admite editar, de modo que un campo no editable produce un error en lugar de descartarse en silencio. Los campos personalizados se indican por su nombre visible o por su identificador.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueKey": {
"type": "string",
"description": "Clave del issue. Ejemplo: ATY-123"
},
"summary": {
"description": "Nuevo título del issue",
"type": "string"
},
"description": {
"description": "Nueva descripción en texto plano",
"type": "string"
},
"assignee": {
"description": "Persona asignada: correo, nombre visible o accountId. Ejemplo: alguien@example.com",
"type": "string"
},
"originalEstimate": {
"description": "Estimación en el formato de Jira. Ejemplos: 30m, 1h 30m, 8h",
"type": "string"
},
"watchers": {
"description": "Observadores a añadir: correos, nombres visibles o accountIds",
"type": "array",
"items": {
"type": "string"
}
},
"priority": {
"description": "Nombre de la prioridad. Ejemplo: High",
"type": "string"
},
"labels": {
"description": "Etiquetas del issue. Reemplazan a las existentes",
"type": "array",
"items": {
"type": "string"
}
},
"customFields": {
"description": "Campos personalizados por nombre o identificador. Ejemplo: { \"Criterios de aceptación\": \"[ ] Primero\" }",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"required": [
"issueKey"
]
} | — | — · — | — |
pingComprueba que el servidor Jira Lite MCP responde e indica qué código está ejecutando: versión declarada y fecha de compilación. Útil para distinguir una capacidad que no existe de una que existe pero no está desplegada en la sesión en curso.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {}
} | — | — · — | — |