使用说明

项目简介

Speck-It MCP 服务端旨在将 GitHub 的 Spec Kit 开发工作流集成到 Model Context Protocol (MCP) 服务中。它为代码智能体提供了一个后端,使其能够直接在项目工作区内自动生成功能规格、实施计划、任务清单和执行手册。所有生成的文档和状态都将存储在项目根目录下的 '.speck-it/' (或 '.spec-kit/') 目录中。

主要功能点

  • 规范生成: 通过 'generate_spec' 命令,根据项目章程生成详细的功能规范和澄清说明。
  • 实施计划: 通过 'generate_plan' 命令,基于已生成的规范,制定阶段性的实施指南。
  • 任务管理: 'manage_project_tasks' 命令提供全面的任务操作,包括创建、列出、更新、验证前提、获取下一步任务和获取项目状态。
  • 任务执行: 'generate_tasks' 生成任务清单;'list_tasks' 查看任务;'update_task'、'next_task' 和 'complete_task' 追踪和管理任务进度。
  • 治理与配置: 'set_constitution' 设置项目章程;'get_constitution' 获取章程内容;'set_feature_root' 注册项目根目录以确保产物正确存储;'finalize_feature' 标记功能开发完成。
  • 自动化更新: 自动更新任务状态,以反映章程设定、功能根目录注册、规范生成、计划创建和任务生成等工作流里程碑。

安装步骤

  1. 安装依赖: 在项目根目录下运行以下命令,使用 'uv' 工具同步并安装所有必要的依赖项:
    uv sync
  2. 运行MCP服务器: 使用 'uv' 运行主服务器脚本。服务器默认通过标准输入/输出 (stdio) 进行通信。
    uv run python main.py
    您的MCP兼容智能体(例如 Windsurf, Roo Code, Cline)需要配置以启动此命令。

服务器配置 (示例,非代码)

您的MCP客户端(例如 Windsurf, Roo Code, Cline)需要配置服务器的启动方式。以下是一个常见的JSON配置示例,您可以根据您的客户端的实际情况进行调整。请将 '<path-to-repo>' 替换为 'speck-it-mcp-server' 仓库的实际路径。

// MCP客户端的配置示例 (通常在客户端的配置文件中)
{
  "mcpServers": {
    "speck-it": { // 服务器的名称,用于客户端内部引用
      "command": "uv", // 启动服务器的命令
      "args": [ // 传递给命令的参数
        "run",
        "--with",
        "mcp[cli]",
        "mcp",
        "run",
        "<path-to-repo>/main.py" // 服务器主脚本的路径
      ],
      "disabledTools": [] // 如果有不需要使用的工具,可以在此列出
    }
  }
}

基本使用方法

  1. 连接智能体: 将您的MCP兼容智能体配置指向上述运行命令。如果智能体在项目目录之外执行,请通过参数提供项目根目录,或者调用 'set_feature_root' 工具来注册。
  2. 设置项目章程: 首先,使用 'set_constitution' 工具定义项目的基本原则和指南。例如:
    // 智能体调用MCP工具
    tool_code: set_constitution(content="Strictly use Python for backend, React for frontend, apply TDD principles.")
  3. 注册功能根目录: 使用 'set_feature_root' 注册当前项目的工作目录,确保所有产物(如规范、计划)存储在正确的位置。例如:
    tool_code: set_feature_root(feature_id="my-new-feature", root="/path/to/my/project")
  4. 生成功能规范: 调用 'generate_spec' 根据功能描述创建详细的规格文档。例如:
    tool_code: generate_spec(feature_name="用户管理模块", description="实现用户注册、登录、信息查询和修改功能。")
  5. 生成实施计划和任务: 依次调用 'generate_plan' 和 'generate_tasks' 来生成实施计划和详细的 TDD 任务清单。
    tool_code: generate_plan(feature_id="my-new-feature", tech_context="Language: Python, Frontend: React, Storage: PostgreSQL")
    tool_code: generate_tasks(feature_id="my-new-feature")
  6. 管理和执行任务: 使用 'list_tasks' 查看任务,'next_task' 获取下一个待执行任务,'update_task' 或 'complete_task' 更新任务状态和添加备注。
    tool_code: list_tasks(feature_id="my-new-feature")
    tool_code: next_task(feature_id="my-new-feature")
    tool_code: complete_task(feature_id="my-new-feature", task_id="T001", note="Initial scaffolding complete.")
  7. 获取项目状态和工作流指导: 使用 'manage_project_tasks(action="get_status")' 查看项目整体进度,'get_workflow_guide' 获取详细的工作流指南。

信息

分类

开发者工具