smp-mcp-server
v1.0.22
Published
MCP Server for SMP (https://smp.nationalcloud.ae) bug/task management system
Maintainers
Readme
English | 中文
SMP MCP Server
一个用于 SMP(项目与任务管理平台)的 MCP(Model Context Protocol) 服务。让 Claude Code、Claude Desktop、Cursor 等 AI 客户端可以直接用自然语言查询和管理你的 SMP 项目、任务和 bug。
简介
smp-mcp-server 把你的 AI 助手连接到 SMP。配置完成后,你可以直接对助手说 "列出我所有未完成的 P0 bug"、"看一下任务 #45633 的详情" 或 "把任务 #45633 流转到 '待测试'",助手会自动帮你调用 SMP 接口。
服务会在首次使用时用你的 SMP 账号(邮箱 + 密码)自动登录并保持会话,会话过期后自动重新登录。
环境要求
- Node.js 18+(可使用
npx) - 一个有效的 SMP 账号
配置说明
认证通过环境变量驱动:
| 变量 | 是否必填 | 说明 | 默认值 |
|------|---------|------|--------|
| SMP_EMAIL | ✅ 必填 | SMP 登录邮箱 / 账号 | 无 |
| SMP_PASSWORD | ✅ 必填 | SMP 登录密码(明文,内部会自动 md5) | 无 |
| SMP_BASE_URL | 可选 | SMP 服务地址 | https://smp.nationalcloud.ae |
| SMP_TEAM_ID | 可选 | 团队 ID | 已知环境自动匹配(见下表) |
SMP_TEAM_ID 在使用已知环境时会自动填充:
| Base URL | Team ID |
|----------|---------|
| https://smp.nationalcloud.ae | 64761d93e7ca760054841d59 |
| https://smp.matrx.io | 63db65eb8a8fd4004ddfa3f2 |
如果你用的是上面两个环境之一,只需填
SMP_EMAIL+SMP_PASSWORD;其他自建环境必须额外提供SMP_TEAM_ID。
Claude Code(一条命令)
claude mcp add smp \
-e SMP_EMAIL=你的邮箱 \
-e SMP_PASSWORD=你的密码 \
-- npx -y smp-mcp-serverClaude Desktop / Cursor(编辑 JSON 配置)
{
"mcpServers": {
"smp": {
"command": "npx",
"args": ["-y", "smp-mcp-server"],
"env": {
"SMP_EMAIL": "你的邮箱",
"SMP_PASSWORD": "你的密码"
}
}
}
}自建环境请在 env 中补充 SMP_BASE_URL 和 SMP_TEAM_ID。
配置文件位置:
- Claude Desktop(macOS):
~/Library/Application Support/Claude/claude_desktop_config.json - Claude Desktop(Windows):
%APPDATA%\Claude\claude_desktop_config.json
修改后需重启客户端。
使用方法
配置完成后直接用自然语言和助手对话即可。底层会用到以下工具:
| 工具 | 功能 |
|------|------|
| smp_user_info | 获取当前用户的姓名、邮箱和 UID |
| smp_my_projects | 列出你参与的所有项目,按项目组分组 |
| smp_my_tasks | 查询分配给你的任务/bug(可按 state_type、keywords、priority 过滤) |
| smp_user_tasks | 跨所有项目查询分配给某个人的任务 |
| smp_project_tasks | 查询某个项目下的所有任务(可按 platform、priority、assignee、state_type、keywords 过滤) |
| smp_project_members | 列出某项目的所有成员及其 UID |
| smp_task_detail | 通过任务 ID 获取完整详情 |
| smp_find_task | 通过编号(如 45633 / #45633)查找任务并显示其可用状态 |
| smp_task_states | 列出某任务的所有可用状态 |
| smp_update_task_state | 把任务设置到指定的状态 ID |
| smp_transition_task | 按目标状态名自动流转任务,必要时逐步经过中间状态 |
| smp_add_comment | 给任务添加评论 / 备注 |
过滤参数说明
state_type:1=未开始,2=进行中,3=已完成,4=已关闭priority:优先级名称,如P0、P1、P2platform:web、android、ios、service、win、mac、metabase
示例指令
- "列出我所有未完成的 P0 任务。"
- "看一下任务 #45633 的详情。"
- "chuanguo 在 android 上有哪些任务?"
- "把任务 45633 流转到 '待测试'。"
- "给任务 #45633 加条评论:已在 staging 验证通过。"
License
MIT
