这是一个模型上下文协议(MCP)服务器,它使大型语言模型(LLMs)能够与 Plane.so 进行交互,从而通过 Plane 的 API 来管理项目和问题。使用此服务器,像 Claude 这样的 LLM 可以直接与您的项目管理流程进行交互,同时保持用户控制和安全性。
<a href="https://glama.ai/mcp/servers/@kelvin6365/plane-mcp-server"> <img width="380" height="200" src="https://gips2.baidu.com/it/u=1082745500,3106878260&fm=3081&app=3081&f=PNG?w=760&h=400" /> </a>最快速的方法是使用 Smithery 直接安装服务器:
# 安装到桌面版 Claude
npx -y @smithery/cli install @kelvin6365/plane-mcp-server --client claude
此命令会自动设置 Plane MCP 服务器以便与 Claude 使用。安装后,您需要通过 Claude 设置配置服务器,包括您的 Plane API 密钥和工作区标识符。
有效客户端选项有:claude, cline, windsurf, roo-cline, witsy, enconvo, cursor
例如,安装到 Cursor:
npx -y @smithery/cli install @kelvin6365/plane-mcp-server --client cursor
如果您希望手动设置服务器,请遵循以下步骤:
git clone https://github.com/kelvin6365/plane-mcp-server.git
cd plane-mcp-server
npm install
npm run build
注意: 如果您使用了上述方案 1(Smithery),则可以跳过此部分。Smithery 会自动为您配置 MCP 服务器。
打开您的桌面版 Claude 配置文件:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json添加 Plane MCP 服务器配置:
{
"mcpServers": {
"plane": {
"command": "node",
"args": ["path/to/plane-mcp-server/build/index.js"],
"env": {
"PLANE_API_KEY": "your_plane_api_key_here",
"PLANE_WORKSPACE_SLUG": "your_workspace_slug_here"
}
}
}
}
注意: 工具名称使用连字符(如
list-projects),而不是下划线。服务器会自动将下划线转换为连字符以确保兼容性。
列出您 Plane 工作区中的所有项目。
参数:无
示例:
{}
获取特定项目的详细信息。
参数:
project_id: 要检索的项目的 ID示例:
{
"project_id": "01abc123-4567-89de-0123-456789abcdef"
}
在指定项目中创建新问题。
参数:
project_id: 应该创建问题的项目的 IDname: 问题的标题description_html: 问题的 HTML 描述(由 Plane API 要求)priority(可选): 问题的优先级("urgent", "high", "medium", "low", "none")state_id(可选): 此问题的状态 IDassignees(可选): 分配给此问题的用户 ID 数组注意:
assignees参数必须是一个用户 ID 字符串数组。常见的错误包括提供字典/对象而不是数组,或者不小心将整个问题数据嵌套在 assignees 字段内。服务器会尝试处理这些情况,但最好使用正确的格式。
示例:
{
"project_id": "01abc123-4567-89de-0123-456789abcdef",
"name": "实现新功能",
"description_html": "<p>我们需要实现新的报告功能</p>",
"priority": "high",
"assignees": ["user-id-1", "user-id-2"]
}
从指定项目中列出问题,并可选地进行过滤。
参数:
project_id: 要获取问题的项目的 IDstate_id(可选): 按状态 ID 过滤priority(可选): 按优先级过滤assignee_id(可选): 按分配人 ID 过滤limit(可选): 返回的最大问题数量(默认值:50)示例:
{
"project_id": "01abc123-4567-89de-0123-456789abcdef",
"priority": "high",
"limit": 10
}
获取特定问题的详细信息。
参数:
project_id: 包含问题的项目的 IDissue_id: 要检索的问题的 ID示例:
{
"project_id": "01abc123-4567-89de-0123-456789abcdef",
"issue_id": "01def456-7890-12gh-3456-789ijklmnopq"
}
更新项目中的现有问题。
参数:
project_id: 包含问题的项目的 IDissue_id: 要更新的问题的 IDname(可选): 问题的更新标题description_html(可选): 问题的 HTML 描述(由 Plane API 要求)priority(可选): 问题的更新优先级state_id(可选): 问题的更新状态 IDassignees(可选): 分配给此问题的用户 ID 数组的更新注意:
assignees参数必须是一个用户 ID 字符串数组,遵循与 create-issue 工具相同的格式指南。
示例:
{
"project_id": "01abc123-4567-89de-0123-456789abcdef",
"issue_id": "01def456-7890-12gh-3456-789ijklmnopq",
"priority": "urgent",
"description_html": "<p>更新描述,包含<strong>更多细节</strong></p>"
}
npm install --save-dev typescript @types/node
npm run dev
您可以使用 MCP Inspector 对服务器进行测试:
npx @modelcontextprotocol/inspector node dist/index.js
这里有一些示例交互,您可以在设置 Plane MCP 服务器后尝试与 Claude 进行:
Claude 将使用适当的工具与 Plane 进行交互,并在创建或修改任何问题之前请求您的批准。
git checkout -b feature/amazing-feature)git commit -m '添加一些精彩的功能')git push origin feature/amazing-feature)本项目根据 MIT 许可证发布 - 详情见 LICENSE 文件。
如果您遇到任何问题或有任何疑问: