Skip to main content
Glama
TOOLS-REFERENCE.es.md14.6 kB
# Referencia de Herramientas Documentación completa para todas las herramientas MCP proporcionadas por Spec Workflow MCP. ## Descripción General Spec Workflow MCP proporciona herramientas especializadas para desarrollo de software estructurado. Estas herramientas son accesibles para asistentes de IA a través del Model Context Protocol. ## Categorías de Herramientas 1. **Guías de Flujo de Trabajo** - Documentación y orientación 2. **Gestión de Especificaciones** - Crear y gestionar especificaciones 3. **Herramientas de Contexto** - Recuperar información del proyecto 4. **Herramientas de Orientación** - Orientación a nivel de proyecto 5. **Herramientas de Aprobación** - Flujo de trabajo de aprobación de documentos ## Herramientas de Guía de Flujo de Trabajo ### spec-workflow-guide **Propósito**: Proporciona orientación completa para el proceso de flujo de trabajo basado en especificaciones. **Parámetros**: Ninguno **Retorna**: Guía en markdown explicando el flujo de trabajo completo **Ejemplo de Uso**: ``` "Muéstrame la guía del flujo de trabajo de especificaciones" ``` **La Respuesta Contiene**: - Descripción general del flujo de trabajo - Proceso paso a paso - Mejores prácticas - Prompts de ejemplo ### steering-guide **Propósito**: Guía para crear documentos de orientación del proyecto. **Parámetros**: Ninguno **Retorna**: Guía en markdown para creación de documentos de orientación **Ejemplo de Uso**: ``` "Muéstrame cómo crear documentos de orientación" ``` **La Respuesta Contiene**: - Tipos de documentos de orientación - Proceso de creación - Guías de contenido - Ejemplos ## Herramientas de Gestión de Especificaciones ### create-spec-doc **Propósito**: Crea o actualiza documentos de especificación (requisitos, diseño, tareas). **Parámetros**: | Parámetro | Tipo | Requerido | Descripción | |-----------|------|----------|-------------| | specName | string | Sí | Nombre de la especificación (kebab-case) | | docType | string | Sí | Tipo: "requirements", "design", o "tasks" | | content | string | Sí | Contenido markdown del documento | | revision | boolean | No | Si es una revisión (predeterminado: false) | **Ejemplo de Uso**: ```typescript { specName: "autenticacion-usuarios", docType: "requirements", content: "# Requisitos de Autenticación de Usuarios\n\n## Descripción General\n...", revision: false } ``` **Retorna**: ```typescript { success: true, message: "Documento de requisitos creado exitosamente", path: ".spec-workflow/specs/autenticacion-usuarios/requirements.md", requestedApproval: true } ``` **Notas**: - Crea directorio de especificación si no existe - Solicita aprobación automáticamente para nuevos documentos - Valida formato markdown - Preserva documentos existentes al crear nuevos tipos ### spec-list **Propósito**: Lista todas las especificaciones con su estado actual. **Parámetros**: Ninguno **Retorna**: Arreglo de resúmenes de especificaciones **Estructura de Respuesta**: ```typescript [ { name: "autenticacion-usuarios", status: "en-progreso", progress: 45, documents: { requirements: "aprobado", design: "pendiente-aprobacion", tasks: "no-creado" }, taskStats: { total: 15, completed: 7, inProgress: 1, pending: 7 } } ] ``` **Ejemplo de Uso**: ``` "Lista todas mis especificaciones" ``` ### spec-status **Propósito**: Obtiene información detallada de estado para una especificación específica. **Parámetros**: | Parámetro | Tipo | Requerido | Descripción | |-----------|------|----------|-------------| | specName | string | Sí | Nombre de la especificación a verificar | **Retorna**: Estado detallado de la especificación **Estructura de Respuesta**: ```typescript { exists: true, name: "autenticacion-usuarios", documents: { requirements: { exists: true, approved: true, lastModified: "2024-01-15T10:30:00Z", size: 4523 }, design: { exists: true, approved: false, pendingApproval: true, lastModified: "2024-01-15T14:20:00Z", size: 6234 }, tasks: { exists: true, taskCount: 15, completedCount: 7, inProgressCount: 1, progress: 45 } }, overallProgress: 45, currentPhase: "implementacion" } ``` **Ejemplo de Uso**: ``` "Muéstrame el estado de la especificación autenticacion-usuarios" ``` ### manage-tasks **Propósito**: Gestión completa de tareas incluyendo actualizaciones, cambios de estado y seguimiento de progreso. **Parámetros**: | Parámetro | Tipo | Requerido | Descripción | |-----------|------|----------|-------------| | specName | string | Sí | Nombre de la especificación | | action | string | Sí | Acción: "update", "complete", "list", "progress" | | taskId | string | A veces | ID de tarea (requerido para update/complete) | | status | string | No | Nuevo estado: "pending", "in-progress", "completed" | | notes | string | No | Notas adicionales para la tarea | **Acciones**: 1. **Actualizar Estado de Tarea**: ```typescript { specName: "user-auth", action: "update", taskId: "1.2.1", status: "in-progress", notes: "Implementación iniciada" } ``` 2. **Completar Tarea**: ```typescript { specName: "user-auth", action: "complete", taskId: "1.2.1" } ``` 3. **Listar Tareas**: ```typescript { specName: "user-auth", action: "list" } ``` 4. **Obtener Progreso**: ```typescript { specName: "user-auth", action: "progress" } ``` **Retorna**: Información de tarea o confirmación de actualización ## Herramientas de Contexto ### get-template-context **Propósito**: Recupera plantillas markdown para todos los tipos de documentos. **Parámetros**: Ninguno **Retorna**: Objeto conteniendo todas las plantillas **Estructura de Respuesta**: ```typescript { requirements: "# Plantilla de Requisitos\n\n## Descripción General\n...", design: "# Plantilla de Diseño\n\n## Arquitectura\n...", tasks: "# Plantilla de Tareas\n\n## Tareas de Implementación\n...", product: "# Plantilla de Orientación de Producto\n...", tech: "# Plantilla de Orientación Técnica\n...", structure: "# Plantilla de Orientación de Estructura\n..." } ``` **Ejemplo de Uso**: ``` "Obtén todas las plantillas de documentos" ``` ### get-steering-context **Propósito**: Recupera documentos de orientación y guía del proyecto. **Parámetros**: | Parámetro | Tipo | Requerido | Descripción | |-----------|------|----------|-------------| | docType | string | No | Doc específico: "product", "tech", "structure", o "all" | **Retorna**: Contenido del documento de orientación **Ejemplo de Uso**: ```typescript { docType: "tech" // Retorna solo orientación técnica } ``` **Estructura de Respuesta**: ```typescript { product: "# Orientación de Producto\n\n## Visión\n...", tech: "# Orientación Técnica\n\n## Arquitectura\n...", structure: "# Orientación de Estructura\n\n## Organización\n..." } ``` ### get-spec-context **Propósito**: Recupera contexto completo para una especificación específica. **Parámetros**: | Parámetro | Tipo | Requerido | Descripción | |-----------|------|----------|-------------| | specName | string | Sí | Nombre de la especificación | | includeContent | boolean | No | Incluir contenido del documento (predeterminado: true) | **Retorna**: Contexto completo de la especificación **Estructura de Respuesta**: ```typescript { name: "autenticacion-usuarios", exists: true, documents: { requirements: { exists: true, content: "# Requisitos\n\n...", approved: true }, design: { exists: true, content: "# Diseño\n\n...", approved: false }, tasks: { exists: true, content: "# Tareas\n\n...", stats: { total: 15, completed: 7, progress: 45 } } }, relatedSpecs: ["perfil-usuario", "gestion-sesiones"], dependencies: ["configuracion-bd", "libreria-auth"] } ``` **Ejemplo de Uso**: ``` "Obtén contexto completo para la especificación autenticacion-usuarios" ``` ## Herramientas de Documentos de Orientación ### create-steering-doc **Propósito**: Crea documentos de orientación del proyecto (producto, tech, estructura). **Parámetros**: | Parámetro | Tipo | Requerido | Descripción | |-----------|------|----------|-------------| | docType | string | Sí | Tipo: "product", "tech", o "structure" | | content | string | Sí | Contenido markdown del documento | **Ejemplo de Uso**: ```typescript { docType: "product", content: "# Orientación de Producto\n\n## Visión\nConstruir el mejor..." } ``` **Retorna**: ```typescript { success: true, message: "Documento de orientación de producto creado", path: ".spec-workflow/steering/product.md" } ``` **Notas**: - Crea directorio de orientación si es necesario - Sobrescribe documentos de orientación existentes - No se requiere aprobación para documentos de orientación - Debe crearse antes de las especificaciones ## Herramientas del Sistema de Aprobación ### request-approval **Propósito**: Solicita aprobación de usuario para un documento. **Parámetros**: | Parámetro | Tipo | Requerido | Descripción | |-----------|------|----------|-------------| | specName | string | Sí | Nombre de la especificación | | docType | string | Sí | Tipo de documento a aprobar | | documentId | string | Sí | ID único para seguimiento | | content | string | Sí | Contenido del documento para revisión | **Ejemplo de Uso**: ```typescript { specName: "user-auth", docType: "requirements", documentId: "user-auth-req-v1", content: "# Requisitos\n\n..." } ``` **Retorna**: ```typescript { success: true, approvalId: "user-auth-req-v1", message: "Aprobación solicitada. Revisa el panel para revisar." } ``` ### get-approval-status **Propósito**: Verifica el estado de aprobación de un documento. **Parámetros**: | Parámetro | Tipo | Requerido | Descripción | |-----------|------|----------|-------------| | specName | string | Sí | Nombre de la especificación | | documentId | string | Sí | ID del documento a verificar | **Retorna**: ```typescript { exists: true, status: "pending" | "approved" | "rejected" | "changes-requested", feedback: "Por favor agrega más detalle sobre manejo de errores", timestamp: "2024-01-15T10:30:00Z", reviewer: "usuario" } ``` **Ejemplo de Uso**: ``` "Verifica estado de aprobación para requisitos de user-auth" ``` ### delete-approval **Propósito**: Elimina solicitudes de aprobación completadas para limpiar la cola de aprobación. **Parámetros**: | Parámetro | Tipo | Requerido | Descripción | |-----------|------|----------|-------------| | specName | string | Sí | Nombre de la especificación | | documentId | string | Sí | ID del documento a eliminar | **Retorna**: ```typescript { success: true, message: "Registro de aprobación eliminado" } ``` **Ejemplo de Uso**: ``` "Limpia aprobaciones completadas para user-auth" ``` ## Patrones de Integración de Herramientas ### Flujo de Trabajo Secuencial Las herramientas están diseñadas para trabajar en secuencia: 1. `steering-guide` → Aprender sobre orientación 2. `create-steering-doc` → Crear documentos de orientación 3. `spec-workflow-guide` → Aprender flujo de trabajo 4. `create-spec-doc` → Crear requisitos 5. `request-approval` → Solicitar revisión 6. `get-approval-status` → Verificar estado 7. `create-spec-doc` → Crear diseño (después de aprobación) 8. `manage-tasks` → Rastrear implementación ### Operaciones Paralelas Algunas herramientas pueden usarse simultáneamente: - `spec-list` + `spec-status` → Obtener vista general y detalles - `get-spec-context` + `get-steering-context` → Contexto completo del proyecto - Múltiples `create-spec-doc` → Crear múltiples especificaciones ### Manejo de Errores Todas las herramientas retornan estructuras de error consistentes: ```typescript { success: false, error: "Especificación no encontrada", details: "No existe especificación llamada 'especificacion-invalida'", suggestion: "Usa spec-list para ver especificaciones disponibles" } ``` ## Mejores Prácticas ### Selección de Herramientas 1. **Recopilación de Información**: - Usa `spec-list` para vista general - Usa `spec-status` para especificación específica - Usa `get-spec-context` para implementación 2. **Creación de Documentos**: - Siempre crea requisitos primero - Espera aprobación antes del diseño - Crea tareas después de aprobación del diseño 3. **Gestión de Tareas**: - Actualiza estado al iniciar tareas - Marca completo inmediatamente después de terminar - Usa notas para contexto importante ### Consideraciones de Rendimiento - **Operaciones en Lote**: Solicita múltiples especificaciones en una conversación - **Caché**: Las herramientas cachean lecturas de archivos para rendimiento - **Carga Selectiva**: Usa `includeContent: false` para verificaciones de estado más rápidas ### Seguridad - **Validación de Ruta**: Todas las rutas son validadas y sanitizadas - **Aislamiento de Proyecto**: Las herramientas solo acceden al directorio del proyecto - **Sanitización de Entrada**: El contenido markdown es sanitizado - **Sin Ejecución**: Las herramientas nunca ejecutan código ## Extender Herramientas ### Desarrollo de Herramientas Personalizadas Para agregar nuevas herramientas: 1. Crear módulo de herramienta en `src/tools/` 2. Definir esquema de parámetros 3. Implementar función manejadora 4. Registrar con servidor MCP 5. Agregar a exportaciones Estructura de ejemplo: ```typescript export const customTool = { name: 'custom-tool', description: 'Descripción', parameters: { // JSON Schema }, handler: async (params) => { // Implementación } }; ``` ## Versionado de Herramientas Las herramientas mantienen compatibilidad hacia atrás: - Adiciones de parámetros son opcionales - Las estructuras de respuesta se extienden, no reemplazan - Características obsoletas muestran advertencias - Guías de migración proporcionadas ## Documentación Relacionada - [Guía del Usuario](USER-GUIDE.es.md) - Usando herramientas efectivamente - [Proceso de Flujo de Trabajo](WORKFLOW.es.md) - Uso de herramientas en flujo de trabajo - [Guía de Prompts](PROMPTING-GUIDE.es.md) - Ejemplo de uso de herramientas - [Guía de Desarrollo](DEVELOPMENT.es.md) - Agregar nuevas herramientas

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Pimzino/spec-workflow-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server