一个基于模型上下文协议(MCP)的服务器,提供给AI助手以结构化方式访问看板功能。该服务器基于KnBn CLI工具,通过MCP工具和资源暴露看板操作。
KnBn MCP Server使AI助手能够通过标准化的MCP协议与看板进行程序化的交互。它提供了三种主要的交互方法:
npm install knbn-mcp
{
"mcpServers": {
"knbn": {
"command": "npx",
"args": ["knbn-mcp"]
}
}
}
git clone https://github.com/mattbalmer/knbn-mcp.git
cd knbn-mcp
npm install
npm run build
npm test
服务器提供了组织好的工具类别:
list_boards - 列出所有.knbn看板文件get_board - 获取完整的看板内容create_board - 创建具有名称和描述的新看板migrate - 将看板文件迁移到最新版本create_task - 创建具有标题、描述、优先级和故事点数的任务get_task - 根据ID获取任务详情list_tasks - 列出/过滤任务,按列、标签、优先级或冲刺update_task - 更新任务属性update_tasks_batch - 高效地更新多个任务create_column - 在指定位置添加新列list_columns - 列出所有列,可选任务计数update_column - 重命名现有列remove_column - 删除列add_label - 创建具有名称和颜色的标签list_labels - 列出所有可用标签update_label - 修改标签名称或颜色remove_label - 从看板中删除标签add_sprint - 创建具有日期、容量和描述的冲刺list_sprints - 列出按状态筛选的冲刺update_sprint - 修改冲刺属性remove_sprint - 删除冲刺通过结构化的URIs访问看板数据:
knbn://boards - 所有看板文件的列表knbn://board/{filename} - 完整的看板数据knbn://board/{filename}/summary - 带有指标的看板摘要knbn://board/{filename}/tasks - 来自看板的所有任务// 创建一个新的看板
await mcpClient.callTool("create_board", {
name: "Project Alpha",
description: "Project Alpha的开发看板",
filename: "alpha.knbn"
});
// 创建一个任务
await mcpClient.callTool("create_task", {
title: "实现认证",
description: "添加登录和注册功能",
column: "待办事项",
priority: 1,
storyPoints: 5,
labels: ["后端", "安全"],
filename: "alpha.knbn"
});
// 将任务移动到不同的列
await mcpClient.callTool("update_task", {
id: 1,
column: "进行中",
filename: "alpha.knbn"
});
// 获取看板摘要
const summary = await mcpClient.readResource("knbn://board/alpha.knbn/summary");
npm run build - 将TypeScript编译成JavaScriptnpm test - 运行Jest测试npm run test:watch - 在监视模式下运行测试npm run test:coverage - 生成覆盖率报告src/
├── server.ts # 主MCP服务器入口点
├── patch.ts # MCP SDK扩展
├── tools/ # 按领域组织的MCP工具
│ ├── board/ # 看板管理工具
│ ├── tasks/ # 任务管理工具
│ ├── columns/ # 列管理工具
│ ├── labels/ # 标签管理工具
│ └── sprints/ # 冲刺管理工具
└── resources/ # 用于数据访问的MCP资源
└── board-resource.ts
测试位于tests/,示例文件在tests/fixtures/。运行测试套件:
npm test
生成覆盖率报告:
npm run test:coverage
看板数据存储在.knbn文件中,采用结构化格式。MCP服务器自动处理所有文件操作,但您也可以直接使用KnBn CLI与这些文件互动。
MIT许可证 - 查看LICENSE以获取详细信息。