MCP Agile Flow

by smian0
Verified

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Supports testing functionality with pytest as shown in the development workflow, with commands for running different test suites.

  • Provides tools for Python project management with features like project structure organization and IDE integration.

Flujo ágil de MCP

Un sistema integral para gestionar flujos de trabajo de desarrollo ágil asistidos por IA con una API moderna basada en recursos utilizando FastMCP.

Estado

Migración completa : La migración del servidor heredado a la implementación de FastMCP se ha completado. Se han eliminado todo el código y las pruebas heredadas.

Descripción general

El proyecto MCP Agile Flow utiliza un enfoque basado en recursos con FastMCP del SDK oficial de MCP, centrándose en:

  • Diseño de API RESTful : URI de recursos limpios e intuitivos para el acceso a datos
  • Arquitectura centrada en los recursos : optimizada para la recuperación de datos y la representación del estado
  • Herramientas orientadas a la acción : herramientas utilizadas únicamente para operaciones que modifican el estado

Características principales

  • Documentación ágil : genere y mantenga documentación completa de IA
  • Estructura del proyecto : organice su proyecto con archivos y directorios generados por IA
  • Integración IDE : Integración directa con varios IDE de IA (Cursor, Windsurf, Cline)
  • Gestión del flujo de trabajo : seguimiento de historias y progreso ágiles
  • Estructura de API intuitiva : recursos organizados en una jerarquía RESTful
  • Integración simplificada : mapeo directo a URI de recursos
  • Rendimiento mejorado : optimizado para patrones de acceso a datos

Empezando

Para utilizar MCP Agile Flow:

  1. Instalar el paquete:
    pip install mcp-agile-flow
  2. Importa en tu código:
    from mcp_agile_flow import call_tool, call_tool_sync # Use async interface result = await call_tool("get-project-settings", {}) # Or use sync interface result = call_tool_sync("get-project-settings", {})

Configuración del cliente MCP

Importante: Se requiere actualización de configuración

Si ya había configurado MCP Agile Flow, debe actualizar su configuración. El módulo fastmcp_server.py se ha eliminado como parte de la limpieza de código y la funcionalidad se ha consolidado en el paquete principal.

Actualice la configuración de su cliente MCP desde:

{ "name": "mcp-agile-flow", "server": { "type": "module", "module": "mcp_agile_flow.fastmcp_server", "entry_point": "run" } }

A:

{ "name": "mcp-agile-flow", "server": { "type": "module", "module": "mcp_agile_flow", "entry_point": "main" } }

Para los usuarios de Cursor, actualice también el archivo mcp.json (normalmente en ~/.cursor/mcp.json):

"mcp-agile-flow": { "command": "/path/to/python", "args": [ "-m", "mcp_agile_flow" // Updated from "mcp_agile_flow.fastmcp_server" ], "autoApprove": [ // ... ] }

Uso de la línea de comandos

También puedes ejecutar el servidor directamente desde la línea de comandos:

# Using Python (logs disabled by default) python -m mcp_agile_flow # Enable normal logging python -m mcp_agile_flow --verbose # Debug mode (most verbose logging) python -m mcp_agile_flow --debug

Herramientas disponibles

El flujo ágil MCP proporciona varias herramientas:

  • get-project-settings : obtiene la configuración del proyecto, incluidas las rutas y las variables de entorno
  • initialize-ide : inicializa la estructura del directorio del proyecto para IDE específicos
  • initialize-ide-rules : inicializa archivos de reglas de IA para IDE específicos
  • prime-context : analizar la documentación del proyecto y generar comprensión contextual
  • migrate-mcp-config : migrar la configuración de MCP entre diferentes IDE
  • think : Registrar un pensamiento para un razonamiento complejo y un análisis paso a paso
  • get-thoughts : recupera todos los pensamientos registrados en la sesión actual
  • clear-thoughts : borra todos los pensamientos registrados de la sesión actual
  • get-thought-stats : Obtenga estadísticas sobre los pensamientos registrados en la sesión actual
  • process-natural-language : Procesar comandos de lenguaje natural y dirigirlos a las herramientas adecuadas

Comandos de lenguaje natural

MCP Agile Flow admite comandos en lenguaje natural, lo que facilita la interacción con las herramientas sin tener que recordar los nombres exactos de los comandos. Simplemente use frases conversacionales y el sistema detectará automáticamente su intención y la asignará a las herramientas adecuadas con los parámetros correctos.

Tipos de comandos admitidos

Comandos de migración

Para migrar la configuración de MCP entre diferentes IDE:

  • Migrar la configuración de MCP a Claude-desktop
  • Migrar la configuración de Cursor a Claude-desktop
  • Copiar la configuración de MCP a Windsurf
  • "Transferir configuración a cline"
  • "Mover la configuración de MCP del cursor a la ubicación"

Si no se especifica el IDE de origen, el valor predeterminado es "cursor".

Nota : Los nombres de IDE válidos son: "cursor", "windsurf-next", "windsurf", "cline", "roo" y "claude-desktop".

Comandos de inicialización

Para inicializar un proyecto con reglas para un IDE específico:

  • "Inicializa el IDE de Claude"
  • "Reglas de configuración para windsurf"
  • "crear IDE para cline"
  • "inicializar reglas para el copiloto"

Comandos de configuración del proyecto

Para obtener configuraciones completas del proyecto:

  • "obtener la configuración del proyecto"
  • "mostrar configuración"
  • "configuración del proyecto"

Comandos de análisis de contexto

Para analizar la documentación del proyecto:

  • "contexto principal"
  • "Analizar el contexto del proyecto"
  • "construir contexto"

Comandos de pensamiento

Para registrar un pensamiento:

  • "Piensa en [tu pensamiento aquí]"

Ejemplos de uso

A continuación se muestran algunos ejemplos de cómo utilizar estos comandos:

from mcp_agile_flow import process_natural_language # Migrate configuration from Cursor to Claude result = process_natural_language("migrate mcp config to claude-desktop") # Initialize rules for Windsurf result = process_natural_language("initialize ide for windsurf") # Get project settings result = process_natural_language("get project settings") # Prime the context result = process_natural_language("prime context") # Record a thought result = process_natural_language("think about how to improve code quality")

Uso desde la línea de comandos

También puede utilizar comandos de lenguaje natural con la CLI de MCP Agile Flow:

python -m mcp_agile_flow process-natural-language "migrate mcp config to claude-desktop"

Manejo de errores

Si el sistema no puede reconocer un comando, devolverá un mensaje de error explicando que no se detectó ningún comando y sugiriendo utilizar una redacción más específica.

Extendiendo comandos

La detección de comandos en lenguaje natural se implementa en utils.py mediante expresiones regulares. Para añadir compatibilidad con nuevos patrones de comando, añada los patrones de expresiones regulares adecuados a la función detect_mcp_command .

Desarrollo

Para prepararse para el desarrollo:

  1. Clonar el repositorio:
    git clone https://github.com/yourusername/mcp-agile-flow.git cd mcp-agile-flow
  2. Crear un entorno virtual:
    python -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate
  3. Instalar dependencias de desarrollo:
    pip install -e ".[dev]"
  4. Ejecutar pruebas:
    pytest
  5. Comandos Makefile comunes:
    make test # Run all tests make test-nl-commands # Test natural language command functionality make test-core # Run core tests only make coverage # Generate coverage report make clean # Clean build artifacts make clean-all # Clean everything including venv make clean-archived # Remove archived legacy files

Licencia

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

ID: 3alxggxsx6