Jira Sprint报告生成工具

自动化Jira史诗报告,提取仪表板数据并生成包含GPT辅助叙述的Sprint就绪Excel工作簿,提供CLI工具集和Express服务器。

  • by Escanor4323
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 Escanor4323/jira-sprint-mcp

使用说明

Jira Sprint MCP服务器

自动化Jira史诗报告,提取仪表板,并生成包含GPT辅助叙述的冲刺就绪Excel工作簿。为Jira API公开和webhook引入提供CLI工具集和Express服务器。

先决条件

  • Node.js 18+
  • 使用REST API访问的Jira云帐户
  • OpenAI API密钥(用于GPT摘要);可选但推荐
  • 已配置Jira用户的Atlassian API令牌

安装

npm install

环境变量

复制 .env.example 到 .env 并填写值:

JIRA_BASE_URL=https://<your-domain>.atlassian.net
JIRA_EMAIL=you@example.com
JIRA_API_TOKEN=<jira-api-token>
OPENAI_API_KEY=<openai-api-key>
PROJECT_KEY=<default-project-key>
# Optional
CORS_ORIGIN=http://localhost:3000
PORT=4000

如果令牌被提交,请立即替换。Git推送保护标记了初始 .env历史已经改写,但强烈建议轮换证书。

脚本

  • npm run dev –使用ts节点运行CLI命令
  • npm run build –编译TypeScript dist
  • npm start –启动HTTP服务器(需要先启动 npm run build)
  • npm run typecheck –验证类型而不发出JS

CLI使用情况

通过调用 npm run dev -- <command> 或运行编译后的JS dist/index.js.命令支持可选 --out 以持久化JSON有效载荷。

Jira发现命令

  • whoami –通过获取经过身份验证的Jira用户来验证凭据
  • dashboards –列出可见的仪表板
  • epics –获取史诗 PROJECT_KEY;接受 --fields, --max, --start
  • tasks –获取Jira任务问题 PROJECT_KEY
  • issues --jql "..." –运行任意JQL搜索;接受 --fields,分页选项
  • worklog <issueKey> –提取单个问题的工作日志
  • epic-issues <epic> -检索儿童问题;支持 --summary, --tasks, --comments, --assignee

Sprint报告命令(核心价值)

  • fill-template <epic> -克隆冲刺模板Excel工作簿,用史诗任务丰富它,并填充名册、工作分配、截止日期和人工智能生成的叙述。
    • --out –目标XLSX路径(默认为 outputs/epic-<KEY>-filled.xlsx)
    • --max –限制提取的任务数(默认值为20)
    • --yes –如果文件存在,跳过覆盖提示
    • --noGPT –禁用GPT使用;回到确定性总结

为什么重要: Excel报告将Jira数据合成到领导层所需的sprint工件中。GPT生成的部分(平衡工作负载、截止日期策略、及时性、遵守性、返工叙述和成员绩效)将原始指标转化为可供审查的见解,将数小时的手动总结转化为一个命令。缺少或过时的报告阻碍了冲刺验收;保持它们的最新状态至关重要。

HTTP服务器

运行方式:

npm run build
npm start

端点(提供JSON):

  • GET /api/jira/myself –健康/身份验证检查
  • GET /api/jira/dashboards
  • GET /api/jira/issues?jql=...&fields=...
  • GET /api/jira/issues/:key/worklog
  • GET /api/jira/tasks/:taskId –长时间运行的后台任务信息
  • POST /webhook/jira –接收Jira webhooks(记录有效载荷,根据需要扩展)

如果Jira必须访问webhooks,则通过ngrok在本地公开。遵守费率限制;客户端在20秒后自动超时。

报告工作流

  1. 配置 .env 具有Jira/OpenAI信誉和默认值 PROJECT_KEY
  2. 跑 npm run dev -- fill-template <EPIC-KEY>
  3. 检查生成 outputs/epic-<KEY>-filled.xlsx
  4. 分发给利益相关者或上传到共享驱动器
  5. 可选择在版本控制下提交经过净化的快照(不含机密)

确保Jira中的评论和时间跟踪保持最新——人工智能摘要依赖于这些数据。考虑安排指挥站的站立,以捕捉最新进展。

Webhook集成路线图

  • POST /webhook/jira 当前记录事件;扩展以触发自动再生或推送通知。
  • 对于生产,持久化webhook事件(队列/DB),并在检测到更改时重建门模板。

故障排除

  • 身份验证失败:验证Jira令牌和基本URL;跑 npm run dev -- whoami
  • 缺少OpenAI密钥:use --noGPT 标记为绕过摘要,但优先恢复人工智能访问,因为领导力取决于叙事洞察力
  • 推送被秘密阻止:确保 .env 留在当地;意外暴露后旋转代币

贡献

  1. 分叉和克隆
  2. 创建特征分支
  3. 保持 .env 未履行承诺(.gitignore 覆盖它)`
  4. 提交带有工作流程影响背景的PR——专注于提高报告准确性或周转时间