AgileHero
oficialEjecuta un espacio de trabajo ágil desde tu agente: crea y mueve tarjetas, refina épicas, planifica hojas de ruta, realiza retrospectivas, dibuja pizarras y escribe páginas de wiki.
¿Qué puedes hacer con AgileHero MCP?
-
Conectar con OAuth — Agrega
https://mcp.agilehero.io/mcpa cualquier cliente MCP e inicia sesión con tu cuenta de AgileHero, sin necesidad de claves API. -
Buscar en todos los proyectos — Pide a tu asistente que encuentre tarjetas, épicas o páginas wiki por contenido usando la herramienta global de búsqueda de texto completo
search. -
Gestionar tarjetas y épicas — Lee los detalles completos de tarjetas o épicas, incluyendo descripciones, listas de verificación, etiquetas y comentarios, mediante o .
-
Editar páginas wiki de forma segura — Previsualiza los cambios y luego aplícalos usando el token devuelto.
-
Crear y convertir pizarras — Dibuja diagramas con o convierte notas adhesivas en elementos del backlog.
-
Realizar retrospectivas — Lista las retrospectivas existentes con o crea nuevas.
Servidor MCP alojado
npx add-mcp 'https://mcp.agilehero.io/mcp'Se instala en Claude Code, Codex, Cursor y más
Documentación
AgileHero incluye un servidor MCP integrado: añade una URL a cualquier asistente de IA compatible con MCP, inicia sesión con tu cuenta de AgileHero, y funcionará con tus proyectos exactamente con tus permisos — 49 herramientas en tableros, backlog, épicas, wiki, pizarras, retrospectivas y hoja de ruta. Esta referencia se genera desde el propio servidor, por lo que siempre está actualizada.
¿Nuevo aquí? Comienza con la descripción general de agentes de IA, o ve directo a conectar tu cliente a continuación. El texto enriquecido en este servidor es AgileHero Markup (AHM) — un dialecto XML estricto y validado, diseñado para que los agentes nunca corrompan el contenido humano. ¿Escribes un script en lugar de conectar un asistente? La referencia de la API REST usa el mismo inicio de sesión OAuth.
Conecta tu cliente de IA
Conectar significa dos cosas: añade la URL del endpoint a tu cliente y luego inicia sesión con tu cuenta de AgileHero cuando el cliente lo solicite. No hay ninguna clave que crear o pegar. Una vez conectado, el cliente actúa como tú, con exactamente tus permisos; cada cliente conectado aparece en Configuración → Clientes de IA en la aplicación, donde puedes revocarlo en cualquier momento. Los observadores no pueden usar el servidor MCP: un espacio de trabajo donde eres observador no aparece en la lista, y todo en él se lee como no encontrado.
Endpoint
https://mcp.agilehero.io/mcp
Transporte
HTTP transmisible (POST)
Inicio de sesión
Tu cliente de IA abre una ventana del navegador; aprueba una vez, revoca en cualquier momento en Configuración → Clientes de IA.
Claude Code
Ejecuta una vez en una terminal; Claude Code guarda el servidor en tu configuración a nivel de usuario e inicia sesión a través de tu navegador.
claude mcp add --transport http --scope user agilehero https://mcp.agilehero.io/mcp
- Todas las banderas deben ir antes del nombre del servidor.
- Luego ejecuta
/mcpdentro de una sesión de Claude Code y elige Autenticar (o ejecutaclaude mcp login agilehero) y aprueba el inicio de sesión en tu navegador.
Verificar: Ejecuta claude mcp list — agilehero debería mostrarse como conectado. Si muestra "necesita autenticación", ejecuta claude mcp login agilehero.
Documentación de Claude Code · verificado contra la documentación del proveedor el 2026-09-15
VS Code (GitHub Copilot)
Añade a .vscode/mcp.json en un espacio de trabajo, o ejecuta "MCP: Abrir configuración de usuario" para todos los espacios de trabajo. Se abre una ventana del navegador para el inicio de sesión la primera vez que se inicia el servidor.
.vscode/mcp.json
{
"servers": {
"agilehero": {
"type": "http",
"url": "https://mcp.agilehero.io/mcp"
}
}
}
- "type": "http" es obligatorio — sin él, VS Code trata la URL como un comando a ejecutar.
Verificar: Ejecuta "MCP: Listar servidores", inicia agilehero, completa el inicio de sesión en el navegador y comprueba que sus herramientas aparecen en la vista de Chat.
Documentación de VS Code (GitHub Copilot) · verificado contra la documentación del proveedor el 2026-09-15
Codex
Añade desde la terminal y luego inicia sesión — la configuración es compartida por la CLI de Codex, la extensión del IDE y la aplicación de escritorio de ChatGPT.
codex mcp add agilehero --url https://mcp.agilehero.io/mcp
codex mcp login agilehero
- Codex no inicia el inicio de sesión por sí solo — ejecuta
codex mcp login agileherodespués de añadir el servidor.
Verificar: Ejecuta codex mcp list — agilehero debería mostrarse como autenticado; luego pide a Codex que liste tus proyectos de AgileHero.
Documentación de Codex · verificado contra la documentación del proveedor el 2026-09-15
Zed
Añade a settings.json, o usa Configuración → IA → Servidores MCP → Añadir servidor remoto; Zed te pedirá iniciar sesión.
~/.config/zed/settings.json
{
"context_servers": {
"agilehero": {
"url": "https://mcp.agilehero.io/mcp"
}
}
}
- Deja los encabezados fuera — Zed inicia el inicio de sesión solo cuando no hay un encabezado Authorization configurado.
Verificar: Reinicia Zed, aprueba el inicio de sesión en tu navegador cuando se te pida y pídele que liste tus proyectos de AgileHero — la primera llamada exitosa confirma la conexión.
Documentación de Zed · verificado contra la documentación del proveedor el 2026-09-15
GitHub Copilot CLI
Añade a ~/.copilot/mcp-config.json, o .mcp.json dentro de un repositorio.
~/.copilot/mcp-config.json
{
"mcpServers": {
"agilehero": {
"type": "http",
"url": "https://mcp.agilehero.io/mcp"
}
}
}
- Necesita GitHub Copilot CLI 1.0.83 o más reciente (soporte para Documentos de metadatos de ID de cliente).
- Copilot CLI abre el inicio de sesión cuando el servidor lo solicita por primera vez; también puedes ejecutar
/mcp auth agileherodentro de una sesión.
Verificar: Ejecuta /mcp dentro de Copilot CLI — agilehero debería aparecer listado como conectado con sus herramientas.
Documentación de GitHub Copilot CLI · verificado contra la documentación del proveedor el 2026-09-15
Claude (web, escritorio, Cowork)
Añade AgileHero como conector personalizado e inicia sesión; el conector está disponible en Claude en la web, Claude Desktop, Cowork y las aplicaciones móviles.
Settings → Connectors → Add custom connector
Name: AgileHero
URL: https://mcp.agilehero.io/mcp
Sign in now
- El conector también aparece en Claude Code cuando está iniciado sesión con la misma cuenta de Claude.
- Plan gratuito: un conector personalizado. Equipo y Empresa: un propietario añade el conector, y cada miembro inicia sesión con su propia cuenta de AgileHero.
Verificar: Inicia un nuevo chat — AgileHero aparece listado bajo conectores, y pedir a Claude que liste tus proyectos de AgileHero funciona.
Documentación de Claude (web, escritorio, Cowork) · verificado contra la documentación del proveedor el 2026-09-15
ChatGPT
Crea un conector en modo Desarrollador e inicia sesión con OAuth.
Settings → Connectors → Create (Developer mode)
Name: AgileHero
MCP server URL: https://mcp.agilehero.io/mcp
Authentication: OAuth
- Disponible en Plus, Pro, Business, Enterprise y Edu con el modo Desarrollador habilitado; en un espacio de trabajo, un administrador o propietario publica el conector para los miembros.
Verificar: Abre un nuevo chat con el conector de AgileHero habilitado y pide a ChatGPT que liste tus proyectos de AgileHero.
Documentación de ChatGPT · verificado contra la documentación del proveedor el 2026-09-15
Otro cliente
Cualquier cliente MCP que admita OAuth con Documentos de metadatos de ID de cliente: añade el endpoint como servidor remoto (HTTP transmisible) y aprueba el inicio de sesión en tu navegador.
Transport: Streamable HTTP
URL: https://mcp.agilehero.io/mcp
Authentication: OAuth (sign in when the client asks)
- Los clientes que solo admiten tokens estáticos o encabezados no pueden conectarse — AgileHero usa solo inicio de sesión OAuth.
Verificar: Reinicia el cliente, aprueba el inicio de sesión en tu navegador cuando se te pida y pídele que liste tus proyectos de AgileHero — la primera llamada exitosa confirma la conexión.
Documentación de otros clientes · verificado contra la documentación del proveedor el 2026-09-15
Aún no compatible
Estos clientes aún no pueden iniciar sesión en AgileHero. La mayoría carece de soporte para Documentos de metadatos de ID de cliente, el método de registro de clientes OAuth que usa AgileHero (la recomendación actual de MCP); revisamos la documentación del proveedor regularmente y movemos un cliente hacia arriba tan pronto como califica.
CursorAún no
Cursor aún no admite Documentos de metadatos de ID de cliente (su inicio de sesión OAuth necesita Registro dinámico de clientes o un cliente pre-registrado), por lo que no puede conectarse a AgileHero por ahora.
Documentación de Cursor · verificado contra la documentación del proveedor el 2026-09-15
OpenCodeAún no
OpenCode aún no admite Documentos de metadatos de ID de cliente (su inicio de sesión OAuth necesita Registro dinámico de clientes o un cliente pre-registrado), por lo que no puede conectarse a AgileHero por ahora.
Documentación de OpenCode · verificado contra la documentación del proveedor el 2026-09-15
Gemini CLIAún no
Gemini CLI aún no admite Documentos de metadatos de ID de cliente (su inicio de sesión OAuth necesita Registro dinámico de clientes o un cliente pre-registrado), por lo que no puede conectarse a AgileHero por ahora.
Documentación de Gemini CLI · verificado contra la documentación del proveedor el 2026-09-15
ClineAún no
Cline aún no admite Documentos de metadatos de ID de cliente (su inicio de sesión OAuth necesita Registro dinámico de clientes o un cliente pre-registrado), por lo que no puede conectarse a AgileHero por ahora.
Documentación de Cline · verificado contra la documentación del proveedor el 2026-09-15
Google AntigravityAún no
Google Antigravity aún no admite Documentos de metadatos de ID de cliente (su inicio de sesión OAuth necesita Registro dinámico de clientes o un cliente pre-registrado), por lo que no puede conectarse a AgileHero por ahora.
Documentación de Google Antigravity · verificado contra la documentación del proveedor el 2026-09-15
AmpAún no
Amp aún no admite Documentos de metadatos de ID de cliente (su inicio de sesión OAuth necesita Registro dinámico de clientes o un cliente pre-registrado), por lo que no puede conectarse a AgileHero por ahora.
Documentación de Amp · verificado contra la documentación del proveedor el 2026-09-15
Raycast AIAún no
Raycast AI aún no admite Documentos de metadatos de ID de cliente (su inicio de sesión OAuth necesita Registro dinámico de clientes o un cliente pre-registrado), por lo que no puede conectarse a AgileHero por ahora.
Documentación de Raycast AI · verificado contra la documentación del proveedor el 2026-09-15
KiroAún no
Kiro inicia sesión con una URL de Documento de metadatos de ID de cliente que tú proporcionas, y AgileHero aún no aloja un Documento de metadatos de ID de cliente para él.
Documentación de Kiro · verificado contra la documentación del proveedor el 2026-09-15
WarpAún no
Warp no tiene inicio de sesión OAuth para servidores añadidos por el usuario aún, por lo que no puede conectarse a AgileHero por ahora.
Documentación de Warp · verificado contra la documentación del proveedor el 2026-09-15
JetBrains AI AssistantAún no
JetBrains AI Assistant no tiene inicio de sesión OAuth para servidores remotos, y el puente mcp-remote necesitaría un documento de cliente alojado — AgileHero aún no aloja un Documento de metadatos de ID de cliente para él.
Documentación de JetBrains AI Assistant · verificado contra la documentación del proveedor el 2026-09-15
ContinueAún no
Continue no tiene inicio de sesión OAuth para servidores HTTP transmisibles, y el puente mcp-remote necesitaría un documento de cliente alojado — AgileHero aún no aloja un Documento de metadatos de ID de cliente para él.
Documentación de Continue · verificado contra la documentación del proveedor el 2026-09-15
Instrucciones del servidor
Cada cliente MCP recibe estas convenciones en el momento de la inicialización:
Servidor MCP de AgileHero.
Cada parámetro id y cada id en una respuesta es un uid corto — usa siempre los uids devueltos por las herramientas de listar/obtener/buscar, nunca inventes uno. La mayoría de las herramientas necesitan un uid de proyecto — llama a list_projects primero para descubrir espacios de trabajo y proyectos. Prefiere search (texto completo, todos los tipos de contenido) sobre search_cards (subcadena de título, un proyecto).
En las herramientas de actualización, prefiere los campos delta add_*/remove_* para colecciones (incremental, seguro); los campos de colección simples (assigned_to, labels, checklists, cards_relations, links, attachments) REEMPLAZAN el estado anterior y no pueden combinarse con sus deltas. Los elementos de lista de verificación son { description, checked }. Ponte al día con los cambios usando updated_since en list_cards / list_epics.
Usa move_card (no update_card) para cambiar la lista o posición de una tarjeta; un list_id vacío significa el backlog.
Las herramientas de wiki, pizarra, retrospectiva y hoja de ruta requieren que el espacio de trabajo del proyecto esté en un plan Pro o de prueba. Las escrituras de elementos de pizarra son herramientas por lotes y de todo o nada; los uids de elementos provienen de get_whiteboard. Los elementos de retrospectiva se gestionan con add_retro_items y move_retro_item (move_card rechaza tarjetas de retrospectiva).
Límites diarios: las llamadas a herramientas se miden por usuario por espacio de trabajo — 500/día en el plan Gratuito, 5,000/día en Pro o de prueba, restableciéndose a las 00:00 UTC. get_ahm_spec y list_projects nunca se cuentan (ni ninguna llamada no atribuible a un solo espacio de trabajo, como una búsqueda sin alcance). Al superar el límite, las herramientas devuelven un error de límite diario hasta el restablecimiento o una mejora.
TODO el texto enriquecido (páginas de wiki, descripciones de tarjetas/épicas, comentarios) es AgileHero Markup (AHM) — XML estricto, NUNCA markdown o HTML; llama a get_ahm_spec una vez antes de escribir cualquiera. Las ediciones de texto enriquecido son de dos pasos por diseño: preview_wiki_page_update / preview_description_update (consecuencias + preview_token), luego la herramienta de actualización correspondiente con ese token.
Documentación completa de herramientas: https://agilehero.io/docs/mcp
Especificación AHM: https://agilehero.io/docs/mcp/agilehero-markup
Herramientas (49)
list_projectssolo lectura
Lista cada espacio de trabajo y proyecto al que el usuario del token puede acceder, para que el agente pueda resolver el uid de proyecto que la mayoría de las otras herramientas requieren. Llama a esto primero siempre que no se conozca un uid de proyecto — nunca pidas al usuario que pegue uno. Devuelve espacios de trabajo (uid, nombre, plan, tu rol) con sus proyectos (uid, nombre, url). Las herramientas del pilar Pro (wiki, métricas) necesitan que el plan del espacio de trabajo sea pro o de prueba.
searchsolo lectura
La búsqueda global de texto completo del producto (OpenSearch): tarjetas, épicas, páginas wiki y proyectos, que coinciden con títulos, descripciones, comentarios, elementos de lista de verificación y nombres de archivos adjuntos, clasificados por relevancia con un impulso de actualidad. Úsala para encontrar cualquier cosa por contenido ("la tarjeta donde discutimos la migración"); usa search_cards solo para búsquedas de subcadenas de títulos dentro de un proyecto. Cada resultado lleva un tipo, un uid listo para acciones (las tarjetas alimentan get_card/update_card, las épicas get_epic, wiki_pages show_wiki_page, los proyectos los parámetros project_id), una URL de enlace profundo y fragmentos resaltados con <mark> que muestran por qué coincidió. Opcionalmente, limita con project_id o assigned_to_me. Pagina con page/per_page; total_count es el recuento completo de coincidencias.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| query | string | sí | Consulta de búsqueda de texto libre |
| project_id | string | UID de proyecto opcional para limitar la búsqueda | |
| assigned_to_me | boolean | Solo resultados asignados al usuario del token | |
| page | integer | Número de página (por defecto 1) | |
| per_page | integer | Resultados por página, 1-50 (por defecto 20) |
get_cardread-only
Lee una tarjeta completa: su descripción en AgileHero Markup con IDs de bloque más description_version (las dos entradas que preview_description_update / update_description toman), ubicación en la lista, épica, etiquetas, asignados, reportero, tipo, estimación, fecha de vencimiento, listas de verificación, enlaces, adjuntos, tarjetas relacionadas y comentarios en hilo. Toma solo el uid de la tarjeta — no hay parámetro project_id. Los uids de tarjetas provienen de list_cards, search o search_cards.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| id | string | sí | El identificador único de la tarjeta |
get_epicread-only
Lee una épica completa: su descripción en AgileHero Markup con IDs de bloque más description_version (las dos entradas que preview_description_update / update_description toman), nombre, número, color, fechas de inicio/fin, asignados, listas de verificación, enlaces, adjuntos, cada tarjeta en ella (uid, número, título y su lista con categoría — lista nula = backlog — en orden de tablero, así que esta es la forma de listar todas las tarjetas de una épica y ver cuáles están por hacer, en progreso o hechas) y comentarios en hilo. Toma solo el uid de la épica — no hay parámetro project_id. Los uids de épicas provienen de list_epics o search.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| id | string | sí | El identificador único de la épica |
list_wiki_pathsPro · wikiread-only
Lista todo el árbol wiki de un proyecto en orden de visualización — cada carpeta y página con su uid, nombre, tipo (página o carpeta) y parent_id — para que el agente pueda resolver el uid de página que show_wiki_page toma y elegir un parent_id para create_wiki_page. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| project_id | string | sí | El identificador único del proyecto |
show_wiki_pagePro · wikiread-only
Recupera una página wiki como AgileHero Markup (AHM) con su document_version. El contenido es AHM, no markdown — los IDs de bloque, anclas <discussion> y referencias <image/>/<attachment/> son parte del documento; lee get_ahm_spec antes de editar. Edita vía preview_wiki_page_update y luego update_wiki_page, usando los IDs de bloque y document_version devueltos aquí. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| id | string | sí | El identificador único de la ruta de página |
get_ahm_specread-only
La especificación de AgileHero Markup (AHM) v1.0 — el ÚNICO formato de texto enriquecido que AgileHero acepta (markdown y HTML son rechazados). Lee esto UNA VEZ antes de escribir o editar cualquier texto enriquecido (páginas wiki, descripciones de tarjetas/épicas, comentarios): vocabulario, atributos, reglas de escape y un ejemplo práctico. Mismo texto en la web: https://agilehero.io/docs/mcp/agilehero-markup
create_wiki_pagePro · wiki
Crea una página wiki (opcionalmente dentro de una carpeta) con contenido en AgileHero Markup (AHM). El contenido debe estar envuelto en <agile-hero-markup version="1.0"> — markdown y HTML son rechazados; lee get_ahm_spec primero. Devuelve el uid, la URL, document_version y el contenido de la nueva página. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| project_id | string | sí | El identificador único (uid) del proyecto |
| name | string | sí | Título de la página |
| parent_id | string | UID de carpeta opcional (de list_wiki_paths) | |
| content | string | Cuerpo de la página como AHM; omítelo para una página vacía |
preview_wiki_page_updatePro · wikiread-only
Primer paso OBLIGATORIO de cada actualización de página wiki: valida las operaciones y devuelve las consecuencias calculadas por el servidor (bloques añadidos/eliminados/cambiados, archivos que se eliminarían permanentemente, discusiones de equipo que perderían sus anclas, posibles advertencias de markdown) más el preview_token que update_wiki_page requiere. No se modifica nada. Las operaciones se dirigen por bloque (replace_block / insert_after / delete_block / move_block) con contenido AHM — lee get_ahm_spec primero, y obtén los IDs de bloque + document_version de show_wiki_page. Revisa las consecuencias antes de guardar: una eliminación de archivo listada o desanclaje de discusión solo es aceptable cuando el usuario lo pidió. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| id | string | sí | UID de ruta de página |
| document_version | string | sí | De show_wiki_page — prueba de frescura |
| operations | array of object | sí | Aplicadas en orden contra el documento en evolución |
update_wiki_pagePro · wikidestructive
Aplica una actualización previamente previsualizada a una página wiki. Requiere el preview_token de preview_wiki_page_update para EXACTAMENTE estas operaciones y este document_version — guardar sin previsualizar es imposible por diseño. Cada guardado crea una versión de página que los humanos pueden revertir en la aplicación. Devuelve la página actualizada (AHM + nuevo document_version) y las consecuencias aplicadas. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| id | string | sí | UID de ruta de página |
| document_version | string | sí | La versión contra la que se tomó la previsualización |
| operations | array of object | sí | Las operaciones exactas que se previsualizaron |
| preview_token | string | sí | De preview_wiki_page_update |
preview_description_updateread-only
Primer paso OBLIGATORIO de cada edición de descripción de tarjeta o épica: valida las operaciones de bloque y devuelve las consecuencias calculadas por el servidor más el preview_token que update_description requiere. No se modifica nada. El contenido es AgileHero Markup (AHM, superficie de descripción: sin tablas, colores, alineación, discusiones ni archivos adjuntos) — lee get_ahm_spec primero; los IDs de bloque y document_version provienen de get_card / get_epic.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| resource_type | enum: card | epic | sí | |
| id | string | sí | UID de tarjeta o épica |
| document_version | string | sí | De get_card / get_epic |
| operations | array of object | sí | Aplicadas en orden contra la descripción en evolución |
update_descriptiondestructive
Aplica una actualización de descripción previamente previsualizada a una tarjeta o épica. Requiere el preview_token de preview_description_update para EXACTAMENTE estas operaciones y este document_version — guardar sin previsualizar es imposible por diseño. Devuelve la descripción actualizada (AHM + nuevo document_version).
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| resource_type | enum: card | epic | sí | |
| id | string | sí | UID de tarjeta o épica |
| document_version | string | sí | La versión contra la que se tomó la previsualización |
| operations | array of object | sí | Las operaciones exactas que se previsualizaron |
| preview_token | string | sí | De preview_description_update |
list_whiteboardsPro · whiteboardread-only
Lista los whiteboards de un proyecto (uid, nombre, recuento de elementos, URL). Usa get_whiteboard para leer los elementos de un tablero. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| project_id | string | sí | El identificador único del proyecto |
create_whiteboardPro · whiteboard
Crea un whiteboard vacío en un proyecto. Añade contenido con create_whiteboard_elements. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| project_id | string | sí | El identificador único del proyecto |
| name | string | sí | Nombre del whiteboard |
get_whiteboardPro · whiteboardread-only
Lee un whiteboard como una representación de texto compacta: límites del tablero más una línea por elemento — "<type> <uid> en <x>,<y> tamaño <w>x<h> [color] [padre <frame-uid>] [vinculado <card|epic> <uid>] \"texto\"", conectores como "conector <uid> <from> -> <to>". Los uids de elementos de aquí son los identificadores que cada herramienta de escritura de whiteboard toma. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| id | string | sí | El identificador único del whiteboard |
create_whiteboard_elementsPro · whiteboard
Crea hasta 100 elementos de whiteboard en una sola llamada transaccional (todo o nada, un evento en tiempo real). Los tamaños nativos, colores y colocación de texto se aplican en el servidor — normalmente da solo tipo + texto (+ color). Omite x/y y los elementos se auto-organizan (cuadrícula por defecto; arrange: row|column|grid, origin_x/origin_y/gap para ajustar); da x/y para control total. Los marcos contienen elementos vía parent_id (un uid de marco existente) o parent_ref (la ref de un marco anterior en ESTA llamada). Los conectores vinculan elementos por uid (source_id/target_id) o ref de lote (source_ref/target_ref) — nunca coordenadas; las anclas las calcula la interfaz. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| whiteboard_id | string | sí | El identificador único del whiteboard |
| elements | array of object | sí | Creados en orden de array — las refs solo se resuelven hacia atrás |
| arrange | enum: grid | row | column | Diseño para elementos sin x/y explícito (por defecto grid) | |
| origin_x | number | Inicio x de auto-organización (por defecto 100) | |
| origin_y | number | Inicio y de auto-organización (por defecto 100) | |
| gap | number | Espaciado de auto-organización en px (por defecto 20) |
create_whiteboard_diagramPro · whiteboard
Dibuja un diagrama (diagrama de flujo, proceso, gráfico de dependencias) en un whiteboard a partir de un gráfico semántico — nodos, aristas, grupos opcionales, SIN coordenadas: el servidor hace un diseño en capas de arriba a abajo con tamaños nativos y devuelve los uids de elementos creados claveados por tus IDs de nodo. Colocado debajo del contenido existente del tablero. Transaccional (todo o nada, un evento en tiempo real). Máximo 20 nodos — divide flujos más grandes en dos diagramas. Mantén las formas simples (rectángulo) a menos que la semántica exija una (diamante = decisión, estadio = inicio/fin, cilindro = almacén de datos). Edita el resultado con update_whiteboard_elements — el diseño nunca se vuelve a ejecutar. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| whiteboard_id | string | sí | El identificador único del whiteboard |
| title | string | Título del diagrama (título del marco, o un encabezado cuando se usan grupos) | |
| nodes | array of object | sí | |
| edges | array of object | ||
| groups | array of object | ||
| origin_x | number | Opcional x superior izquierda; por defecto debajo del contenido existente | |
| origin_y | number | Opcional y superior izquierda; por defecto debajo del contenido existente |
update_whiteboard_elementsPro · whiteboard
Actualiza hasta 100 elementos de pizarra en una sola llamada de todo-o-nada: mover (x/y), redimensionar, reordenar (z_index), cambiar texto, cambiar color, cambiar de padre (parent_id — un uid de marco, o "" para desvincular), y flechas/rutas/etiquetas de conectores. Los uids de elementos provienen de get_whiteboard; los tipos de elementos no se pueden cambiar. Solo cambian los campos proporcionados — las propiedades no relacionadas se conservan. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| whiteboard_id | string | sí | El identificador único de la pizarra |
| updates | array de object | sí |
delete_whiteboard_elementsPro · pizarradestructivo
Elimina hasta 100 elementos de pizarra en una sola llamada transaccional. Eliminar un marco o un nodo de mapa mental libera sus hijos en el tablero (NO se eliminan — incluye sus uids explícitamente para eliminarlos también). Los conectores adjuntos a elementos eliminados no se eliminan y quedarán colgando. Los uids de elementos provienen de get_whiteboard. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| whiteboard_id | string | sí | El identificador único de la pizarra |
| ids | array de string | sí | Uids de elementos a eliminar |
review_whiteboardPro · pizarra solo lectura
Ejecuta comprobaciones de calidad deterministas en una pizarra: texto que probablemente se desborda de su elemento, elementos visiblemente superpuestos, conectores con extremos no vinculados o colgando, colores fuera de la paleta de la interfaz, posiciones fuera de la cuadrícula y elementos cuyo padre fue eliminado. Es orientativo — los hallazgos son sugerencias, no errores, y un tablero con hallazgos puede ser exactamente lo que el usuario quiere. Úsalo después de dibujar para verificar la cordura, corrige como máximo una vez y no hagas bucles persiguiendo un informe vacío. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| id | string | sí | El identificador único de la pizarra |
convert_whiteboard_elementPro · pizarra
Convierte un elemento de pizarra en un elemento de backlog: una nota adhesiva en una tarjeta o una épica, o un marco en una épica (los hijos de nota adhesiva del marco se convierten en tarjetas de esa épica; los hijos ya convertidos se reasignan, no se duplican). El elemento permanece en el tablero, vinculado a lo que se convirtió — get_whiteboard muestra el vínculo. Un elemento solo se puede convertir una vez. El texto de la nota/marco se convierte en el título a menos que pases uno. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| id | string | sí | Uid del elemento (una sticky_note o frame, de get_whiteboard) |
| to | enum: card | epic | sí | Qué crear |
| title | string | Título de la tarjeta / nombre de la épica; por defecto el texto del elemento | |
| list_id | string | Solo tarjeta: uid de la lista de destino; omítelo para el backlog | |
| color | string | Solo épica: color hexadecimal; por defecto el color del elemento |
convert_mind_mapPro · pizarra
Convierte un mapa mental en elementos de backlog con un mapeo por nodo: la raíz puede convertirse en una nueva épica (rol "epic") o adjuntarse a una existente (rol "existing_epic" + target_epic_id); otros nodos se convierten en tarjetas de esa épica (rol "card") o etiquetas de proyecto (rol "label" — los nodos de etiqueta por encima de un nodo de tarjeta en el árbol se aplican a esa tarjeta); el rol "skip" ignora un nodo. Pasa el uid del elemento RAÍZ como id y cada nodo que quieras convertir en nodes (los nodos no listados se ignoran). Una conversión por nodo: los nodos ya convertidos se rechazan de antemano — vuelve a enviarlos sin ellos. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| id | string | sí | El uid del nodo RAÍZ del mapa mental (de get_whiteboard) |
| nodes | array de object | sí | |
| target_epic_id | string | Uid de la épica, obligatorio con el rol "existing_epic" en la raíz |
list_retrospectivesPro · retrospectivas solo lectura
Lista las retrospectivas de un proyecto: retrospectivas de nuevo modelo y health checks donde el espacio de trabajo las tenga, tableros de retrospectiva clásicos en caso contrario. Una entrada de nuevo modelo tiene uid, name, kind (retro | health_check), status (open | live | closed), date (starts_on; closes_on para un health check), etapa actual, plantilla, uid del facilitador, recuentos de las acciones que creó y url; la respuesta añade el open_actions_count del proyecto. Usa get_retrospective para la imagen completa. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| project_id | string | sí | El identificador único del proyecto |
create_retrospectivePro · retrospectivas
Crea una retrospectiva: una retrospectiva de nuevo modelo donde el espacio de trabajo las tenga, un tablero de retrospectiva clásico en caso contrario; la respuesta es la retrospectiva tal como la devuelve get_retrospective (columnas con sus uids), para que add_retro_items pueda continuar inmediatamente. Una retrospectiva de nuevo modelo proviene de una plantilla (por defecto went_well), está abierta para notas de inmediato y te tiene a ti como facilitador; opcional: focus, anonimato (por defecto el de la plantilla), participant_ids (una retro de Miembros seleccionados; omítelo para cada miembro del proyecto con acceso de escritura), los tipos de pregunta check_in y feedback, y votos. El facilitador la inicia y ejecuta sus etapas en la aplicación. Los tableros clásicos solo aceptan name, date y previous_retrospective_id y rechazan los argumentos de nuevo modelo. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| project_id | string | sí | El identificador único del proyecto |
| name | string | sí | Nombre de la retrospectiva |
| template | enum: went_well | start_stop_continue | four_ls | mad_sad_glad | kalm | daki | starfish | plus_delta | sailboat | rose_thorn_bud | wrap | hot_air_balloon | three_pigs | project_retro | postmortem | kudos_lessons | Clave de la plantilla; por defecto went_well | |
| starts_on | string | Fecha, ISO-8601 (YYYY-MM-DD); por defecto hoy | |
| starts_at | string | Alias obsoleto de starts_on | |
| focus | string | De qué trata esta retro, mostrado bajo su nombre | |
| anonymity | enum: anonymous | optional | named | Quién se muestra en las notas: anonymous, optional (los autores pueden añadir su nombre) o named | |
| participant_ids | array de string | Uids de usuario de los participantes (list_project_users); tú siempre eres uno | |
| check_in | enum: safety | mood | esvp | one_word | Pregunta de check-in (por defecto safety) | |
| feedback | enum: roti | pulse | one_word | Pregunta de feedback de cierre (por defecto roti) | |
| votes | object | Configuración de votos: budget (auto | fixed | unlimited), per_person (1-20), max_per_topic (1-10) | |
| previous_retrospective_id | string | Solo tableros clásicos: uid de una retrospectiva anterior cuya columna de Acciones se muestra como "Acciones pasadas" |
get_retrospectivePro · retrospectivas solo lectura
Lee una retrospectiva como podrías verla: una retrospectiva de nuevo modelo o health check donde el espacio de trabajo las tenga, un tablero de retrospectiva clásico en caso contrario. Una retrospectiva de nuevo modelo devuelve la configuración, las etapas (la actual, temporizador, progreso), las columnas (con uids) que contienen temas (grupos de notas, con uids), los recuentos de check-in y feedback, tus votos restantes, la cola de Discusión y temas aparcados, propuestas, acciones (las que creó más las abiertas del proyecto) y, una vez cerrada, su resumen. La privacidad sigue a la sala: antes de la revelación solo obtienes tus propias notas (cada columna cuenta las de todos), autores solo en notas nombradas, totales de votos solo una vez que se revelan los votos. Un health check devuelve sus dimensiones y participación, tus propias calificaciones mientras está abierto y agregados por dimensión una vez cerrado. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| id | string | sí | El uid de la retrospectiva (de list_retrospectives) |
add_retro_itemsPro · retrospectivas
Añade elementos a una retrospectiva como tú mismo, varios a la vez: notas en una retrospectiva de nuevo modelo donde el espacio de trabajo las tenga, tarjetas en un tablero de retrospectiva clásico en caso contrario. Cada elemento es { column, text, recipient_id? }: column es un título de columna (sin distinción de mayúsculas) o uid de get_retrospective; text tiene hasta 1000 caracteres (255 en tableros clásicos); recipient_id, el uid de usuario del compañero agradecido, es obligatorio en una columna de kudos de nuevo modelo y se rechaza en tableros clásicos. Una nota de nuevo modelo inicia su propio tema y otros la ven una vez que se revelan las notas; las notas solo se toman mientras la retrospectiva está abierta para notas o en la etapa de Escritura, de lo contrario la llamada se rechaza con el código wrong_stage y la etapa actual. FALLO PARCIAL: los elementos válidos se añaden, los inválidos se informan por índice — comprueba el array "failed". Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| retrospective_id | string | sí | El uid de la retrospectiva |
| items | array de object | sí |
move_retro_itemPro · retrospectivas
Mueve un elemento de retrospectiva: reagrupa una nota en una retrospectiva de nuevo modelo donde el espacio de trabajo las tenga, mueve una tarjeta a otra columna de un tablero de retrospectiva clásico en caso contrario. Nuevo modelo, solo etapa de Agrupación: topic_id coloca la nota en ese tema (grupo de notas); column (título o uid) la convierte en un tema propio allí, en position entre los temas de la columna (omítelo para el último). Pasa expected_updated_at, el updated_at del tema de la nota de get_retrospective, para ser rechazado con el código stale cuando alguien la reagrupe mientras tanto. Fuera de la Agrupación, la llamada se rechaza con el código wrong_stage y la etapa actual; los kudos y otras notas nunca se mezclan. Los tableros clásicos solo aceptan column y position (position omitida = arriba). Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| id | string | sí | El uid de la nota (tableros clásicos: el uid del elemento) de get_retrospective |
| topic_id | string | Uid del tema de destino; deja column fuera | |
| column | string | Título o uid de la columna de destino | |
| position | integer | Índice en la columna de destino (0 = primero) | |
| expected_updated_at | string | El updated_at del tema de la nota tal como se leyó por última vez (comprobación de conflicto) |
list_project_users solo lectura
Lista los miembros de un proyecto — cada miembro del espacio de trabajo para un proyecto estándar; el creador, los propietarios y administradores del espacio de trabajo, y cualquier persona añadida explícitamente para uno privado — para que el agente pueda resolver uids de asignados en lugar de adivinar nombres. Devuelve el uid de cada miembro, nombre completo, correo electrónico y rol en el espacio de trabajo (owner, admin, member u observer). Esos uids son lo que toma assigned_to en create_card, update_card, create_epic, update_epic y create_roadmap_slot.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| project_id | string | sí | El identificador único del proyecto |
list_board_lists solo lectura
Lista las listas del tablero kanban de un proyecto para que el agente pueda resolver un destino válido de move_card. Devuelve cada lista activa en orden de visualización con su uid (utilizable como destino de move_card) y nombre de visualización. El backlog se incluye como una entrada seleccionable con un id de cadena vacía.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| project_id | string | sí | El identificador único (uid) del proyecto |
list_epics solo lectura
Lista las épicas de un proyecto para que el agente pueda resolver uids de épicas para get_epic y asignación de tarjetas. Devuelve cada épica en orden de visualización (posición ascendente) con su uid, número, nombre, descripción (Markdown), color, fechas de inicio/fin y recuentos de tarjetas.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| project_id | string | sí | El identificador único (uid) del proyecto |
| updated_since | string | Solo épicas cuyo registro cambió en o después de esta fecha u hora ISO-8601. Advertencia: las ediciones de colecciones (listas de verificación, enlaces) pueden no actualizar el tiempo de cambio de una épica; las ediciones de nombre/fecha/descripción siempre lo hacen. |
list_labels solo lectura
Lista las etiquetas de un proyecto para que el agente pueda reutilizar la taxonomía existente en lugar de crear casi duplicados en las escrituras de tarjetas. Devuelve cada etiqueta en orden de visualización (posición ascendente) con su uid, nombre y posición.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| project_id | string | sí | El identificador único (uid) del proyecto |
list_cardsSolo lectura
Lista las tarjetas de una lista kanban, o del backlog del proyecto cuando se omite o deja vacío list_id, en el orden de visualización del tablero (primero la parte superior de la columna, es decir, posición de colocación descendente — el mismo orden que muestra la interfaz de usuario del producto). Los filtros se combinan con AND: epic_id, label_id, assigned_user_id y reporter_id toman uids (un uid desconocido no coincide con nada); due_date conserva las tarjetas con fecha de vencimiento en o antes de la fecha dada. Devuelve resúmenes de tarjetas suficientes para la acción (uid, título, lista + posición, épica, etiquetas, asignados, reportero, fecha de vencimiento) listos para get_card / move_card / update_card, paginados con limit (predeterminado 50, máximo 100) y offset; total_count es el recuento filtrado completo.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| project_id | string | sí | El identificador único (uid) del proyecto |
| list_id | string | Uid de la lista a leer; omitir o pasar una cadena vacía para el backlog | |
| epic_id | string | Solo tarjetas en esta épica (uid de épica) dentro de la lista o backlog elegido; para listar cada tarjeta de una épica en todas las listas usa get_epic | |
| label_id | string | Solo tarjetas que llevan esta etiqueta (uid de etiqueta) | |
| assigned_user_id | string | Solo tarjetas asignadas a este usuario (uid de usuario) | |
| reporter_id | string | Solo tarjetas reportadas (creadas) por este usuario (uid de usuario) | |
| due_date | string | Solo tarjetas con vencimiento en o antes de esta fecha (ISO-8601, p. ej. 2026-06-10) | |
| updated_since | string | Solo tarjetas cuyo registro cambió en o después de esta fecha o fecha-hora ISO-8601 — el filtro de "qué cambió desde la última vez que ejecuté". Advertencia: las ediciones en colecciones adjuntas (etiquetas, listas de verificación, enlaces) pueden no actualizar la hora de cambio de una tarjeta; las ediciones de título/descripción/escalares siempre lo hacen. | |
| limit | integer | Tamaño de página, 1-100 (predeterminado 50) | |
| offset | integer | Número de tarjetas a omitir (predeterminado 0) |
search_cardsSolo lectura
Búsqueda de tarjetas por subcadena en el título dentro de un proyecto (tablero kanban y backlog), que coincide exactamente con la búsqueda en vivo de tarjetas dentro del producto (subcadena insensible a mayúsculas en la base de datos solo en el título de la tarjeta — las descripciones y comentarios no se buscan; usa la herramienta de búsqueda para búsqueda de texto completo en todos los tipos de contenido), ordenada por creación más reciente primero. Devuelve resúmenes de tarjetas suficientes para la acción (uid, título, colocación en lista + posición, épica, etiquetas, asignados, reportero, fecha de vencimiento); una consulta sin coincidencias devuelve un arreglo de tarjetas vacío, no un error. Pagina con limit (predeterminado 50, máximo 100) y offset; total_count es el recuento completo de coincidencias.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| project_id | string | sí | El identificador único (uid) del proyecto |
| query | string | sí | Texto a comparar con los títulos de las tarjetas (subcadena insensible a mayúsculas) |
| limit | integer | Tamaño de página, 1-100 (predeterminado 50) | |
| offset | integer | Número de tarjetas coincidentes a omitir (predeterminado 0) |
list_attention_cardsPro · métricassolo lectura
Lista las tarjetas que necesitan atención en el tablero kanban de un proyecto — las mismas listas que las páginas de Métricas del producto. Tipos: stuck (atascadas: sentadas en una columna, no backlog/Hecho, sin mover durante más de 7 días; las más atascadas primero), blocking (bloqueantes: tarjetas sin terminar que bloquean a otras tarjetas), overdue (vencidas: con vencimiento dentro de los próximos 7 días o ya vencidas; las más próximas primero). kind selecciona una lista o 'all' (predeterminado). Opcionalmente filtra por un uid de asignado o el literal 'unassigned'. Cada sección solicitada devuelve resúmenes de tarjetas listos para get_card / move_card / update_card, limitados a limit con el total_count completo. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| project_id | string | sí | El identificador único (uid) del proyecto |
| kind | enum: stuck | blocking | overdue | all | Qué lista de atención devolver (predeterminado 'all' = cada lista como su propia sección) | |
| assignee_id | string | Solo tarjetas asignadas a este uid de usuario, o 'unassigned' para tarjetas sin asignado | |
| limit | integer | Máximo de tarjetas por sección, 1-100 (predeterminado 50) |
get_metrics_summaryPro · métricassolo lectura
Recuentos en una sola llamada de las tarjetas que necesitan atención en el tablero kanban de un proyecto: overdue_cards_count, blocking_cards_count y stuck_cards_count — las mismas definiciones que list_attention_cards, que devuelve las tarjetas detrás de cada recuento. Económico; llama esto primero para decidir si vale la pena una mirada más profunda. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| project_id | string | sí | El identificador único (uid) del proyecto |
list_roadmap_slotsPro · hoja de rutasolo lectura
Lista los espacios de la hoja de ruta de un proyecto que se superponen con una ventana de fechas (predeterminado: este mes hasta cinco meses adelante). Un espacio programa una épica entre dos fechas y puede llevar asignados; una épica puede tener varios espacios, incluidas superposiciones — eso es por diseño. Devuelve como máximo 200 espacios — reduce la ventana si se alcanza el límite. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| project_id | string | sí | El identificador único del proyecto |
| start_date | string | Inicio de la ventana, ISO-8601 (AAAA-MM-DD); predeterminado: inicio de este mes | |
| end_date | string | Fin de la ventana, ISO-8601; predeterminado: start_date + 6 meses |
create_roadmap_slotPro · hoja de ruta
Programa una épica en la hoja de ruta del proyecto: un espacio desde start_date hasta end_date, opcionalmente con asignados. Una épica puede tener varios espacios y las superposiciones están permitidas por diseño — consulta list_roadmap_slots primero si pretendes extender un espacio existente en lugar de agregar uno. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| project_id | string | sí | El identificador único del proyecto |
| epic_id | string | sí | Uid de épica (de list_epics); debe pertenecer a este proyecto |
| start_date | string | sí | ISO-8601 (AAAA-MM-DD) |
| end_date | string | sí | ISO-8601; se permite el mismo día que start_date |
| assigned_to | arreglo de string | Uids de usuario a asignar (miembros del proyecto — ver list_project_users) |
update_roadmap_slotPro · hoja de ruta
Actualiza un espacio de la hoja de ruta: reprograma o redimensiona (start_date/end_date), muévelo a otra épica del mismo proyecto (epic_id), o establece sus asignados. Solo cambian los campos proporcionados, EXCEPTO assigned_to que REEMPLAZA el conjunto completo de asignados — lee el espacio primero y envía a todos los que deban permanecer. Los uids de espacio provienen de list_roadmap_slots. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| id | string | sí | El uid del espacio de la hoja de ruta |
| epic_id | string | Nuevo uid de épica (mismo proyecto) | |
| start_date | string | ISO-8601 (AAAA-MM-DD) | |
| end_date | string | ISO-8601 | |
| assigned_to | arreglo de string | REEMPLAZA todos los asignados (uids de usuario, miembros del proyecto); [] limpia |
delete_roadmap_slotPro · hoja de rutadestructivo
Elimina PERMANENTEMENTE un espacio de la hoja de ruta (y sus enlaces de asignados). Esto no se puede deshacer — no hay papelera para los espacios de la hoja de ruta. La épica en sí no se toca; para reprogramar, prefiere update_roadmap_slot. Requiere un espacio de trabajo Pro o de prueba.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| id | string | sí | El uid del espacio de la hoja de ruta (de list_roadmap_slots) |
create_label
Crea una nueva etiqueta en un proyecto por nombre. Si ya existe una etiqueta con el mismo nombre (insensible a mayúsculas), se devuelve la etiqueta existente sin cambios en lugar de crear un casi duplicado. La nueva etiqueta se agrega al final del orden de visualización.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| project_id | string | sí | Uid del proyecto al que pertenece la etiqueta |
| name | string | sí |
create_card
Crea una tarjeta en el tablero kanban de un proyecto. Solo se requieren project_id y title. Omite list_id para poner la tarjeta en el backlog; omite position para unirte al final de la cola (move_card documenta el contrato de posición). description es AgileHero Markup — nunca markdown o HTML; lee get_ahm_spec primero. epic_id y los uids de asignado deben existir ya (list_epics, list_project_users), mientras que los nombres de etiquetas que aún no existen se crean en el proyecto. estimation es complejidad Fibonacci (0/1/2/3/5/8/13), no una estimación de tiempo. Las listas de verificación, enlaces, adjuntos y relaciones de tarjetas se pueden proporcionar en esta misma llamada.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| project_id | string | sí | Uid del proyecto al que pertenece la tarjeta (la tarjeta se crea en el tablero kanban del proyecto) |
| list_id | string | Uid de lista; omite para colocar en el backlog | |
| position | integer | ||
| type | enum: story | bug | chore | research | ||
| title | string | sí | |
| description | string | AgileHero Markup (AHM) — nunca markdown o HTML; lee get_ahm_spec primero. Superficie de descripción: sin tablas, colores, alineación o discusiones. | |
| epic_id | string | Uid de épica; debe existir ya en el proyecto | |
| estimation | enum: 0 | 1 | 2 | 3 | 5 | 8 | 13 | Estimación de complejidad en puntos de historia (escala Fibonacci), no una estimación de tiempo | |
| due_date | string | Fecha ISO-8601 | |
| assigned_to | arreglo de string | Uids de usuario asignados, descubribles vía list_project_users | |
| labels | arreglo de string | Nombres de etiquetas; los nombres desconocidos se crean en el proyecto | |
| checklists | arreglo de objeto | Cada { name, items: [{ description, checked }] }; los elementos mantienen el orden proporcionado | |
| cards_relations | arreglo de objeto | Cada { type, target_card_id (un uid de tarjeta en el mismo tablero) } | |
| links | arreglo de objeto | Cada { url, description } | |
| attachments | arreglo de objeto | Cada { url, name }; el archivo se obtiene de la url |
update_carddestructivo
Actualiza una tarjeta existente por su uid. Para colecciones, prefiere los campos delta add_*/remove_* (ediciones incrementales seguras: add_labels, remove_assignees, add_checklist_items, check_items, …); los campos de colección simples (labels, assigned_to, checklists, cards_relations, links, attachments) REEMPLAZAN el estado anterior de forma destructiva y no se pueden combinar con sus deltas. Usa move_card para cambiar lista o posición, y preview_description_update / update_description para editar la descripción.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| id | string | sí | UID de la tarjeta |
| type | enum: story | bug | chore | research | ||
| title | string | ||
| epic_id | string | ||
| estimation | enum: 0 | 1 | 2 | 3 | 5 | 8 | 13 | Estimación de complejidad en puntos de historia (escala de Fibonacci), no una estimación de tiempo | |
| due_date | string | Fecha ISO-8601 | |
| assigned_to | array of string | UIDs de usuarios asignados, descubribles mediante list_project_users; reemplaza los asignados de la tarjeta | |
| labels | array of string | Nombres de etiquetas; los nombres desconocidos se crean en el proyecto; reemplaza las etiquetas de la tarjeta | |
| checklists | array of object | Cada { name, items: [{ description, checked }] }; los elementos mantienen el orden proporcionado; reemplaza las listas de verificación de la tarjeta | |
| cards_relations | array of object | Cada { type, target_card_id (un UID de tarjeta en el mismo tablero) }; reemplaza las relaciones de la tarjeta | |
| links | array of object | Cada { url, description }; reemplaza los enlaces de la tarjeta | |
| attachments | array of object | Cada { url, name }; el archivo se obtiene desde la url; reemplaza los adjuntos de la tarjeta | |
| add_labels | array of string | Agregar etiquetas por nombre (los nombres desconocidos se crean); conserva las etiquetas existentes | |
| remove_labels | array of string | Eliminar etiquetas por nombre (sin distinción de mayúsculas); los nombres ausentes no tienen efecto | |
| add_assignees | array of string | Agregar asignados por UID de usuario; conserva los asignados existentes | |
| remove_assignees | array of string | Eliminar asignados por UID de usuario; los UIDs ausentes no tienen efecto | |
| add_checklist_items | array of object | Agregar elementos: cada { checklist, description, checked? } — la lista de verificación nombrada se crea si no existe | |
| check_items | array of object | Marcar elementos como completados, coincidiendo por descripción exacta dentro de la lista de verificación nombrada | |
| uncheck_items | array of object | Marcar elementos como no completados (misma coincidencia que check_items) | |
| remove_checklist_items | array of object | Eliminar elementos; los elementos ausentes no tienen efecto | |
| add_relations | array of object | Agregar relaciones; conserva las relaciones existentes | |
| remove_relations | array of object | Eliminar relaciones coincidentes; las ausentes no tienen efecto | |
| add_links | array of object | Agregar enlaces: cada { url, description? }; conserva los enlaces existentes | |
| remove_links | array of string | Eliminar enlaces por url exacta; las urls ausentes no tienen efecto |
delete_carddestructive
Elimina suavemente una tarjeta por su UID: sale del tablero y de todos los listados, sus relaciones con otras tarjetas se eliminan, cualquier sesión de estimación sobre ella se desactiva y los elementos de pizarra vinculados a ella se desvinculan. El épico al que pertenecía no se elimina. No hay deshacer eliminación a través de MCP.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| id | string | sí | UID de la tarjeta |
move_card
Mueve una tarjeta a una lista diferente (o cambia su posición dentro de la misma lista). Solo las tarjetas en un tablero kanban pueden moverse; las tarjetas en tableros retrospectivos se rechazan. Pasa una cadena vacía para list_id para mover la tarjeta al backlog del kanban. Una lista se muestra de arriba a abajo desde su posición más alta, por lo que la posición 0 es la PARTE INFERIOR de la lista. Omite position para unirte al final de la cola (la parte inferior, posición 0) en el backlog y en las listas to_do e in_progress, o la parte superior de una lista done.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| id | string | sí | UID de la tarjeta |
| list_id | string | sí | UID de la lista de destino; cadena vacía mueve al backlog (solo kanban) |
| position | integer | Ubicación dentro del destino: 0 es la parte inferior y la posición más alta es la parte superior. Debe estar entre 0 y el número de otras tarjetas ya en el destino. Omítelo para unirte al final de la cola (posición 0) en el backlog y en las listas to_do e in_progress, o la parte superior de una lista done. |
create_epic
Crea un épico en un proyecto. Solo se requieren project_id y name. description es AgileHero Markup — nunca markdown o HTML; lee get_ahm_spec primero. Los UIDs de asignados provienen de list_project_users. Las listas de verificación, enlaces y adjuntos pueden proporcionarse en esta misma llamada. Devuelve el nuevo UID del épico — lo que create_card / update_card toman como epic_id, y lo que create_roadmap_slot programa.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| project_id | string | sí | UID del proyecto al que pertenece el épico |
| name | string | sí | |
| description | string | AgileHero Markup (AHM) — nunca markdown o HTML; lee get_ahm_spec primero. Superficie de descripción: sin tablas, colores, alineación o discusiones. | |
| color | string | Color hexadecimal como #0060F0 | |
| start_date | string | Fecha ISO-8601 | |
| end_date | string | Fecha ISO-8601 | |
| assigned_to | array of string | UIDs de usuarios asignados, descubribles mediante list_project_users | |
| checklists | array of object | Cada { name, items: [{ description, checked }] }; los elementos mantienen el orden proporcionado | |
| links | array of object | Cada { url, description } | |
| attachments | array of object | Cada { url, name }; el archivo se obtiene desde la url |
update_epicdestructive
Actualiza un épico existente por su UID; solo se cambian los campos proporcionados. Para colecciones, prefiere los campos delta add_*/remove_* (ediciones incrementales seguras); los campos de colección simples (assigned_to, checklists, links, attachments) REEMPLAZAN el estado anterior de forma destructiva y no pueden combinarse con sus deltas. Usa preview_description_update / update_description para editar la descripción.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| id | string | sí | UID del épico |
| name | string | ||
| color | string | Color hexadecimal como #0060F0 | |
| start_date | string | Fecha ISO-8601 | |
| end_date | string | Fecha ISO-8601 | |
| assigned_to | array of string | UIDs de usuarios asignados, descubribles mediante list_project_users; reemplaza los asignados del épico | |
| checklists | array of object | Cada { name, items: [{ description, checked }] }; reemplaza las listas de verificación del épico | |
| links | array of object | Cada { url, description }; reemplaza los enlaces del épico | |
| attachments | array of object | Cada { url, name }; el archivo se obtiene desde la url; reemplaza los adjuntos del épico | |
| add_assignees | array of string | Agregar asignados por UID de usuario; conserva los asignados existentes | |
| remove_assignees | array of string | Eliminar asignados por UID de usuario; los UIDs ausentes no tienen efecto | |
| add_checklist_items | array of object | Agregar elementos: cada { checklist, description, checked? } — la lista de verificación nombrada se crea si no existe | |
| check_items | array of object | Marcar elementos como completados, coincidiendo por descripción exacta dentro de la lista de verificación nombrada | |
| uncheck_items | array of object | Marcar elementos como no completados (misma coincidencia que check_items) | |
| remove_checklist_items | array of object | Eliminar elementos; los elementos ausentes no tienen efecto | |
| add_links | array of object | Agregar enlaces: cada { url, description? }; conserva los enlaces existentes | |
| remove_links | array of string | Eliminar enlaces por url exacta; las urls ausentes no tienen efecto |
delete_epicdestructive
Elimina suavemente un épico por su UID. Sus tarjetas NO se eliminan — permanecen en el tablero, desvinculadas del épico. Los espacios de hoja de ruta del épico SÍ se eliminan permanentemente (un espacio programa un épico, por lo que no tiene sentido sin uno), y los elementos de pizarra vinculados al épico se desvinculan.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| id | string | sí | UID del épico |
create_comment
Agrega un comentario a una tarjeta o a un épico. Proporciona exactamente uno de card_id o epic_id. El contenido es AgileHero Markup (AHM, superficie de comentario: sin tablas, medios, colores, alineación o discusiones) — nunca markdown o HTML; lee get_ahm_spec primero. El comentario se atribuye al usuario autenticado como el que actúa este cliente y aparece en respuestas posteriores de get_card / get_epic. Los comentarios no pueden editarse a través de MCP; delete_comment elimina los tuyos (corrige errores con eliminar + volver a publicar). Pasa parent_comment_id para responder a un comentario existente. Los hilos tienen un nivel de profundidad: responder a una respuesta adjunta el nuevo comentario a la raíz del hilo de esa respuesta, así que no intentes anidar respuestas. El padre debe ser un comentario en la misma tarjeta o épico — un UID de cualquier otro lugar se rechaza.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| card_id | string | UID de la tarjeta para comentar (mutuamente excluyente con epic_id) | |
| epic_id | string | UID del épico para comentar (mutuamente excluyente con card_id) | |
| content | string | sí | Cuerpo del comentario como AgileHero Markup (AHM) |
| parent_comment_id | string | UID opcional de un comentario en la MISMA tarjeta o épico para responder. Omítelo para un comentario de nivel superior. Responder a una respuesta se normaliza a la raíz del hilo de esa respuesta (los hilos tienen un nivel de profundidad). |
delete_commentdestructive
Elimina un comentario que TÚ publicaste (los comentarios se atribuyen al usuario autenticado como el que actúa este cliente — los comentarios de otras personas no pueden eliminarse). El patrón de corrección es eliminar + publicar un comentario corregido con create_comment. Un comentario eliminado que tiene respuestas permanece visible como una lápida en su hilo. Los UIDs de comentarios provienen de get_card / get_epic.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| id | string | sí | UID del comentario |