看板任务管理工具

一个基于看板的AI驱动开发任务管理工具,提供任务规划、执行跟踪和Web UI监控功能。

  • by eyalzh
  • TypeScript
  • 本地部署
  • 41 星标
  • 更新于
在 GitHub 查看 eyalzh/kanban-mcp

使用说明

MCP看板任务管理

MCP工具集,为AI驱动的开发提供基于看板的任务管理状态。这类似于其他任务管理MCP工具,具有基于看板的任务管理系统的额外结构、规则和可见性。

主要思想是指导AI代理在计划会话和执行会话中将其工作记录并保存为看板中的任务。

亮点

  • 立柱容量/在制品限制
  • 嵌入式数据库(SQLite)
  • 用于观察工作流进度和手动修改任务的Web UI
  • 启动和恢复工作流的预定义提示

用法

使用MCP提示启动项目或在项目上取得进展。 或者,让LLM助理通过创建看板来记录其计划。为了在后续会议中取得进展,请助理找到一个特定的看板并继续工作。

安装

克隆此仓库,然后运行:

npm ci --prefix shared/db
npm ci --prefix mcp-server
npm run build --prefix shared/db
npm run build --prefix mcp-server

然后将MCP服务器配置添加到MCP客户端(例如Claude Desktop):

"mcpServers": {
    "kanban-mcp": {
        "command": "node",
        "args": [
            "/path/to/repo/mcp-server/dist/server.js"
        ],
        "env": {
            "MCP_KANBAN_DB_FOLDER_PATH": "/path/to/db"
        }
    }
}

替换 /path/to/repo 带有克隆仓库的位置。

替换 /path/to/db 该文件夹将包含DB文件。这可以是任何具有读/写权限的文件夹。如果它不存在,它将被创建。

使用Docker安装

构建Docker镜像:

docker build -t mcp/mcp-kanban .

然后将MCP服务器配置添加到MCP客户端(例如Claude Desktop):

"mcpServers": {
    "kanban-mcp": {
        "command": "docker",
        "args": [
            "run",
            "--rm",
            "-i",
            "-v",
            "/path/to/db:/mcp",
            "mcp/mcp-kanban"
        ]
    }
}

替换 /path/to/db 该文件夹将包含DB文件。这可以是任何具有读/写权限的文件夹。如果它不存在,它将被创建。

使用web UI

构建web用户界面和web服务器:

npm ci --prefix shared/db
npm run build --prefix shared/db

npm ci --prefix web-ui
npm ci --prefix web-server
npm run build --prefix web-ui
npm run build --prefix web-server

运行web服务器:

MCP_KANBAN_DB_FOLDER_PATH=/path/to/db npm run start --prefix web-server

打开浏览器http://localhost:8221

API

工具

  • 创建看板

    • 创建一个新的看板来计划和跟踪你的任务。
    • 输入:
      • name (string):董事会名称
      • projectGoal (string):项目的目标。
  • 将任务添加到板

    • 在看板的着陆栏(待办事项)中添加新任务。
    • 输入:
      • boardId (string):要添加任务的板的ID
      • title (string):任务的标题
      • content (string):markdown格式的任务内容
  • 移动任务

    • 将任务从一列移动到另一列,同时遵守WIP限制。
    • 输入:
      • taskId (string):要移动的任务的ID
      • targetColumnId (string):要将任务移动到的列的ID
      • reason (string,可选):移动任务的原因
  • 删除任务

    • 删除任务。
    • 输入:
      • taskId (string):要删除的任务的ID
  • 获取董事会信息

    • 获取看板的完整信息,包括列和任务。
    • 输入:
      • boardId (string):要获取信息的板的ID
    • 返回有关板的详细信息,包括列和任务。
  • 获取任务信息

    • 获取任务的完整信息,包括其内容。
    • 输入:
      • taskId (string):要获取信息的任务的ID
    • 返回有关任务的详细信息,包括其内容。
  • 列表板

    • 列出数据库中的所有看板。
    • 输入:无
    • 返回数据库中所有板的列表,包括它们的名称、创建时间和目标。

鼓励

  • 创建基于看板的项目

    • 为项目创建一个看板,提出问题将项目划分为任务,并将其添加到看板中。
    • 输入:
      • description (string):项目描述
  • 项目中的制造进展

    • 通过定位看板、选择下一个任务并继续工作,在现有项目上取得进展。
    • 输入:
      • description (string):项目描述