Skip to main content
Glama

Flujo de tareas MCP 🔄✅

Un servidor de Protocolo de Contexto de Modelo (MCP) de gestión de tareas para planificar y ejecutar tareas con asistentes de IA.

VersiónLicencia

🌟 Descripción general

TaskFlow MCP es un servidor especializado que ayuda a los asistentes de IA a desglosar las solicitudes de los usuarios en tareas gestionables y a supervisar su finalización. Implementa un flujo de trabajo estructurado con pasos de aprobación para garantizar el correcto seguimiento de las tareas y que los usuarios mantengan el control del proceso.

Related MCP server: Divide and Conquer MCP Server

✨ Características

  • 📋 Planificación de tareas : divida solicitudes complejas en tareas manejables

  • 🔍Subtareas : Divide las tareas en subtareas más pequeñas y manejables.

  • 📊 Seguimiento del progreso : realice un seguimiento del estado de las tareas, subtareas y solicitudes con tablas de progreso visuales

  • 👍 Aprobación del usuario : aplique los pasos de aprobación del usuario para garantizar la calidad y el control

  • 💾 Persistencia : guarda tareas y solicitudes en el disco para que persistan entre sesiones

  • 🔄 Gestión flexible : agregue, actualice o elimine tareas y subtareas según sea necesario

  • 📝 Informes detallados : vea los detalles de las tareas y las tablas de progreso

  • 📤 Opciones de exportación : exporta planes de tareas e informes de estado en formatos Markdown, JSON o HTML

  • 📦 Dependencias : Realice un seguimiento de las dependencias a nivel de proyecto y tarea con información de la versión

  • 📌 Notas : agregue notas a nivel de proyecto para obtener información importante y preferencias

🚀 Instalación

Instalación global

npm install -g @pinkpixel/taskflow-mcp

Instalación local

npm install @pinkpixel/taskflow-mcp

🛠️ Uso

Iniciando el servidor

Si se instala globalmente:

taskflow-mcp

Si se instala localmente:

npx taskflow-mcp

Configuración

De forma predeterminada, TaskFlow MCP guarda las tareas en ~/Documents/tasks.json . Puede cambiar esto configurando la variable de entorno TASK_MANAGER_FILE_PATH :

TASK_MANAGER_FILE_PATH=/path/to/tasks.json taskflow-mcp

Configuración de MCP

Para usar TaskFlow MCP con asistentes de IA, debe configurar su cliente MCP para que use el servidor. Cree un archivo mcp_config.json con el siguiente contenido:

{
  "mcpServers": {
    "taskflow": {
      "command": "npx",
      "args": ["-y", "@pinkpixel/taskflow-mcp"],
      "env": {
        "TASK_MANAGER_FILE_PATH": "/path/to/tasks.json"
      }
    }
  }
}

🔄 Flujo de trabajo

TaskFlow MCP aplica un flujo de trabajo específico:

  1. Planificar tareas : dividir una solicitud de usuario en tareas (con subtareas opcionales)

  2. Obtener siguiente tarea : recupera la siguiente tarea pendiente

  3. Completar subtareas : si la tarea tiene subtareas, complete cada subtarea antes de marcar la tarea como realizada

  4. Marcar tarea como completada : marca una tarea como completada (requiere que todas las subtareas se completen primero)

  5. Esperar aprobación : esperar la aprobación del usuario de la tarea completada

  6. Repetir : continuar con la siguiente tarea hasta completar todas las tareas

  7. Aprobación final : obtener la aprobación del usuario para toda la solicitud

Para que los asistentes de IA sigan este flujo de trabajo de manera consistente, consulte el archivo example-system-prompt.md para ver las indicaciones del sistema que puede agregar a las instrucciones de su asistente.

🧰 Herramientas disponibles

TaskFlow MCP expone las siguientes herramientas a los asistentes de IA:

plan_task

Registra una nueva solicitud de usuario y planifica sus tareas asociadas (con subtareas opcionales).

{
  "originalRequest": "Create a new website for my business",
  "outputPath": "C:/Users/username/Documents/website-project-plan.md",
  "dependencies": [
    {
      "name": "Node.js",
      "version": ">=14.0.0",
      "description": "JavaScript runtime"
    },
    {
      "name": "npm",
      "version": ">=6.0.0",
      "description": "Package manager"
    }
  ],
  "notes": [
    {
      "title": "Package Manager Preference",
      "content": "User prefers pnpm over npm for package management."
    },
    {
      "title": "Design Guidelines",
      "content": "Follow the company's brand guidelines for colors and typography."
    }
  ],
  "tasks": [
    {
      "title": "Design homepage",
      "description": "Create a design for the homepage with logo, navigation, and hero section",
      "dependencies": [
        {
          "name": "Figma",
          "description": "Design tool"
        }
      ],
      "subtasks": [
        {
          "title": "Design logo",
          "description": "Create a logo that represents the business brand"
        },
        {
          "title": "Design navigation",
          "description": "Create a user-friendly navigation menu"
        }
      ]
    },
    {
      "title": "Implement HTML/CSS",
      "description": "Convert the design to HTML and CSS",
      "dependencies": [
        {
          "name": "HTML5",
          "description": "Markup language"
        },
        {
          "name": "CSS3",
          "description": "Styling language"
        }
      ]
    }
  ]
}

get_next_task

Recuperar la siguiente tarea pendiente para una solicitud.

{
  "requestId": "req-1"
}

mark_task_done

Marcar una tarea como completada.

{
  "requestId": "req-1",
  "taskId": "task-1",
  "completedDetails": "Created a modern design with a clean layout"
}

approve_task_completion

Aprobar una tarea completada.

{
  "requestId": "req-1",
  "taskId": "task-1"
}

approve_request_completion

Aprobar una solicitud completa como completada.

{
  "requestId": "req-1"
}

open_task_details

Obtenga detalles sobre una tarea específica.

{
  "taskId": "task-1"
}

list_requests

Enumere todas las solicitudes en el sistema.

{}

add_tasks_to_request

Agregar más tareas a una solicitud existente.

{
  "requestId": "req-1",
  "tasks": [
    {
      "title": "Add contact form",
      "description": "Create a contact form with validation"
    }
  ]
}

update_task

Actualizar el título o la descripción de una tarea.

{
  "requestId": "req-1",
  "taskId": "task-1",
  "title": "Design responsive homepage",
  "description": "Create a responsive design for the homepage"
}

delete_task

Eliminar una tarea de una solicitud.

{
  "requestId": "req-1",
  "taskId": "task-1"
}

add_subtasks

Agregar subtareas a una tarea existente.

{
  "requestId": "req-1",
  "taskId": "task-1",
  "subtasks": [
    {
      "title": "Design logo",
      "description": "Create a logo that represents the business brand"
    },
    {
      "title": "Design navigation",
      "description": "Create a user-friendly navigation menu"
    }
  ]
}

mark_subtask_done

Marcar una subtarea como completada.

{
  "requestId": "req-1",
  "taskId": "task-1",
  "subtaskId": "subtask-1"
}

update_subtask

Actualizar el título o la descripción de una subtarea.

{
  "requestId": "req-1",
  "taskId": "task-1",
  "subtaskId": "subtask-1",
  "title": "Design modern logo",
  "description": "Create a modern logo that represents the business brand"
}

delete_subtask

Eliminar una subtarea de una tarea.

{
  "requestId": "req-1",
  "taskId": "task-1",
  "subtaskId": "subtask-1"
}

export_task_status

Exporte el estado actual de todas las tareas de una solicitud a un archivo. Se recomienda usar rutas absolutas para una creación de archivos más fiable.

{
  "requestId": "req-1",
  "outputPath": "C:/Users/username/Documents/task-status.md",
  "format": "markdown"
}

add_note

Agregar una nota a una solicitud.

{
  "requestId": "req-1",
  "title": "Package Manager Preference",
  "content": "User prefers pnpm over npm for package management."
}

update_note

Actualizar una nota existente.

{
  "requestId": "req-1",
  "noteId": "note-1",
  "title": "Package Manager Preference",
  "content": "User prefers pnpm over npm and yarn for package management."
}

delete_note

Eliminar una nota de una solicitud.

{
  "requestId": "req-1",
  "noteId": "note-1"
}

add_dependency

Agregar una dependencia a una solicitud o tarea.

{
  "requestId": "req-1",
  "taskId": "task-1",
  "dependency": {
    "name": "react",
    "version": "^18.2.0",
    "description": "JavaScript library for building user interfaces",
    "url": "https://reactjs.org"
  }
}

📚 Documentación

Para obtener información más detallada sobre la arquitectura y la implementación del proyecto, consulte el archivo OVERVIEW.md .

📝 Licencia

Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.

🤝 Contribuyendo

¡Agradecemos sus contribuciones! Consulte el archivo CONTRIBUTING.md para obtener las directrices.

📜 Registro de cambios

Consulte el archivo CHANGELOG.md para obtener un historial de cambios en este proyecto.

🙏 Agradecimientos


Hecho con ❤️ por Pink Pixel

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/pinkpixel-dev/taskflow-mcp'

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