使用说明
MCP服务器
用于Slack、Jira、Confluence和发布协调的模型上下文协议服务器。专为QA工作流程和每日发布状态报告而构建。
快速开始
# 1. Install
git clone <repo> && cd mcp-servers
npm install
# 2. Configure credentials (see below)
cp env.example .env
# Edit .env with your tokens
# 3. Build & verify
npm run build
./test-servers.sh
凭据设置
所有服务器都从以下位置加载凭据 .env 在项目根中。切勿将凭据放入 mcp.json.
Jira&汇流
JIRA_BASE_URL=https://yourorg.atlassian.net
JIRA_EMAIL=your-email@company.com
JIRA_API_TOKEN=your-api-token
CONFLUENCE_BASE_URL=https://yourorg.atlassian.net
CONFLUENCE_EMAIL=your-email@company.com
CONFLUENCE_API_TOKEN=your-api-token
获取API令牌:https://id.atlassian.com/manage-profile/security/api-tokens
Slack(XOXC/XOXD会话认证)
SLACK_MCP_XOXC_TOKEN=xoxc-your-session-token
SLACK_MCP_XOXD_TOKEN=xoxd-your-cookie-value
提取令牌:
- 在浏览器中打开Slack,登录
- DevTools(F12)→ 应用 → Cookie →
https://app.slack.com - 找到
d曲奇→ 这是 XOXD (开始于xoxd-) - 网络 tab → 重新加载→ find
api.slack.com请求 - 在标题中,查找
Authorization: Bearer xoxc-...→ 这是 Xoxc
看 松弛/README.md 详细说明。
MCP配置文件
该项目包括用于不同目的的多个MCP配置文件:
| 文件 | 目的 |
|---|---|
.vscode/mcp.json |
VS Code Claude扩展-编辑路径并重新启动VS Code |
.mcp.json |
Claude桌面应用程序配置 |
mcp_config.json |
使用npm脚本命令引用配置 |
VS代码设置:
cp .vscode/mcp.json.example .vscode/mcp.json
# Update paths in mcp.json to your project location
# Restart VS Code after changes
文档
每台服务器都有自己的README,其中包含工具、CLI测试和故障排除:
| 服务器 | 用途 | 文档 |
|---|---|---|
| Slack | 通道消息、自动测试分析、阻塞问题检测 | 松弛/README.md |
| Jira | 测试状态、工单查询、团队筛选 | jira/README.md |
| 汇流 | 页面搜索、文章阅读/写作 | 汇流/README.md |
| 发布协调员 | 将Jira+Slack编排成发布报告 | 发布协调员/README.md |
| 共享 | 常见实用程序(环境加载、错误、类型) | 共享/README.md |
Slack深潜文档
Slack服务器是最复杂的,并且有其他文档:
| 文件 | 目的 |
|---|---|
| 建筑.md | 文件结构、数据流、修改模式 |
| 快速引用.md | 复制粘贴代码片段 |
| 安全.md | 身份验证安全、威胁模型 |
| 测试_文档.md | 测试覆盖率、Jest设置 |
工具快速参考
| 任务 | 工具 | 服务器 |
|---|---|---|
| 完整发布状态报告 | get_comprehensive_release_overview |
发布协调员 |
| 查找阻塞问题 | get_blocking_issues |
松弛 |
| 检查自动测试结果 | get_auto_test_status |
松弛 |
| 获取测试经理的决定 | get_test_manager_update |
松弛 |
| 按状态统计门票 | get_testing_summary |
吉拉 |
| 在QA/测试中列出工单 | get_testing_remaining |
吉拉 |
| 使用JQL搜索Jira | search_issues |
吉拉 |
| 阅读Confluence页面 | read_article |
汇流处 |
| 搜索汇流 | search_pages |
汇流处 |
| 发布到Slack | send_message |
松弛(仅限于#qa发布状态) |
| 调试机器人消息 | find_bot_messages |
松弛 |
| 获取完整的消息详细信息 | get_message_details |
松弛 |
架构不变量
这些是有意的约束,未经明确请求不得更改:
| 约束 | 位置 | 原因 |
|---|---|---|
Slack仅写入 #qa-release-status |
slack/src/auth/slack-auth.ts |
防止意外发帖 |
| 默认情况下不排除测试标签 | jira/src/server.ts |
匹配测试板 |
| 团队查询映射是硬编码的 | jira/src/server.ts |
业务逻辑 |
| Slack降价(非标准) | 所有Slack输出 | *bold* 不 **bold**, <url|text> 不 [text](url) |
ESM进口需求 .js 扩展 |
所有TypeScript | ES模块必需 |
正在运行的服务器
npm run dev # All servers with auto-reload
npm run start # All servers production mode
npm run start:slack # Individual server
npm run start:jira
npm run start:confluence
npm run start:release-coordinator
故障排除
| 错误 | 修复 |
|---|---|
Missing X configuration |
检查 .env 具有必需的变量 |
401 Unauthorized |
API令牌过期或无效 |
Cannot find module |
快跑 npm run build |
Write access restricted |
Slack只允许写入#qa发布状态 |
| ESM/需要错误 | 导入必须使用 .js 扩展 |
VS代码MCP缓存
重建服务器后,VS Code会缓存旧实例。MCP工具将使用旧代码,直到您重新启动VS代码(Cmd+Shift+P→ “重新加载窗口”)。
项目结构
├── README.md # This file
├── .env # Credentials (gitignored)
├── env.example # Credential template
├── mcp_config.json # MCP server definitions
├── mcp-servers/
│ ├── slack/ # Slack MCP server
│ │ ├── README.md # Slack docs
│ │ ├── docs/ # Deep-dive documentation
│ │ └── src/
│ ├── jira/ # Jira MCP server
│ │ ├── README.md
│ │ └── src/
│ ├── confluence/ # Confluence MCP server
│ │ ├── README.md
│ │ └── src/
│ ├── release-coordinator/ # Orchestration server
│ │ ├── README.md
│ │ └── src/
│ └── shared/ # Shared utilities
│ ├── README.md
│ └── src/
└── scripts/ # Automation (cron jobs)
└── README.md