Jira集成服务器

一款强大的模型上下文协议(MCP)服务器,集成Jira与Cursor IDE,提供AI驱动的任务管理、冲刺跟踪和库漏洞分析功能。

  • by Darshancisco
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 Darshancisco/Appd_jira_context_mcp

使用说明

Jira上下文MCP服务器

一个强大的模型上下文协议(MCP)服务器,将Jira与Cursor IDE集成在一起,实现了AI驱动的问题管理、冲刺跟踪和库漏洞分析。

🚀 特性

  • Jira集成:获取问题详细信息、管理冲刺、跟踪进度
  • Sprint管理:查看活动冲刺、生成报告、分析待办事项
  • 图书馆漏洞分析:检查Maven/NPM包中的漏洞和升级建议
  • 数据库集成:直接从游标查询MySQL数据库
  • 智能URL解析器:粘贴任何Jira板/冲刺URL,获得即时洞察

📋 先决条件

  • Node.js 20.17.0或更高
  • Python 3 (用于Jira API大桥)
  • Python 包: requests, pyyaml, urllib3
    pip3 install requests pyyaml urllib3
    
  • 具有API访问权限的Jira帐户
  • Jira API代币(在此处生成)

⚙️ 安装

  1. 克隆仓库:

    git clone https://github.com/Darshancisco/Appd_jira_context_mcp.git
    cd Appd_jira_context_mcp
    
  2. 安装依赖项:

    npm install
    
  3. 安装Python依赖项:

    pip3 install requests pyyaml urllib3
    
  4. 创建 .env 文件:

    cp .env.example .env
    
  5. 配置您的 .env 文件:

    JIRA_BASE_URL=https://your-domain.atlassian.net
    JIRA_USERNAME=your-email@example.com
    JIRA_API_TOKEN=your-api-token-here
    HTTP_PORT=3000
    
  6. 构建项目:

    npm run build
    

🏃 运行服务器

启动MCP服务器:

npm start

服务器将于启动 http://localhost:3000/sse

🔌 连接到Cursor IDE

方法1:直接配置 mcp.json (推荐)

  1. 找到您的Cursor MCP配置文件:

    • macOS: ~/.cursor/mcp.json
    • 视窗: %APPDATA%\.cursor\mcp.json
    • Linux: ~/.cursor/mcp.json
  2. 添加MCP服务器配置:

    编辑 mcp.json 文件并添加以下配置:

    {
      "mcpServers": {  
        "jira-resolution": {
          "command": "node",
          "args": ["/absolute/path/to/Appd_jira_context_mcp/dist/index.js"],
          "cwd": "/absolute/path/to/Appd_jira_context_mcp",
          "env": {
            "JIRA_BASE_URL": "https://your-domain.atlassian.net",
            "JIRA_USERNAME": "your-email@example.com",
            "JIRA_API_TOKEN": "your-api-token-here",
            "DB_TYPE": "mysql",
            "DB_HOST": "localhost",
            "DB_PORT": "3306",
            "DB_USER": "root",
            "DB_PASSWORD": "your-database-password",
            "DB_NAME": "",
            "DB_SSL": "false"
          }
        }
      }
    }
    
  3. 替换占位符:

    • "/absolute/path/to/Appd_jira_context_mcp" → 克隆仓库的完整路径
    • "your-domain.atlassian.net" → 您的Jira实例URL
    • "your-email@example.com" → 您的Jira用户名/电子邮件
    • "your-api-token-here" → 您的Jira API代币
    • "your-database-password" → MySQL密码(如果使用数据库功能)
  4. 保存文件并重新启动Cursor IDE

  5. 验证连接:

    • 打开光标IDE
    • MCP服务器应自动连接
    • 您可以通过在聊天中键入命令进行验证

方法2:使用光标设置UI

  1. 打开光标IDE
  2. 首选 设置 → 特性 → 模型上下文协议
  3. 添加一个新的MCP服务器:
    • 名字:Jira上下文MCP
    • 统一资源定位符: http://localhost:3000/sse (要求服务器单独运行)
  4. 点击 连接

方法3:使用命令面板

  1. 打开命令选项板(Cmd+Shift+P / Ctrl+Shift+P)
  2. 类型 “连接到MCP服务器”
  3. 输入: http://localhost:3000/sse (要求服务器单独运行)

备注:建议使用方法1(mcp.json),因为它会自动启动服务器,不需要运行 npm start 单独。

🛠️ 可用工具

连接后,您可以在Cursor中使用这些工具:

Jira问题管理

  • get_issue -获取Jira问题的详细信息
  • get_assigned_issues -将问题分配给您
  • get_issues_by_type -按类型筛选问题(Bug、Story、Epic等)
  • get_projects -列出所有可用的Jira项目
  • get_issue_types -列出所有问题类型

Sprint和董事会管理

  • analyze_jira_url -解析任何Jira URL(board/sprint/issue)
  • get_boards -列出所有敏捷板
  • get_sprints -冲刺板
  • get_sprint_issues -在冲刺中解决所有问题
  • get_backlog -获取积压问题
  • get_sprint_report -生成全面的冲刺报告

库漏洞工具

  • check_maven_library -检查Maven库是否存在漏洞
  • check_npm_library -检查NPM包是否存在漏洞
  • analyze_dependencies -分析项目依赖关系
  • recommend_upgrade -获取智能升级建议
  • get_github_release_notes -获取库升级的发行说明
  • find_library_usage -查找库在代码库中的使用位置

数据库工具

  • list_databases -列出所有MySQL数据库
  • list_db_tables -列出数据库中的表
  • get_table_schema -获取表结构
  • query_database -执行SQL查询
  • search_table -跨表列搜索

💡 示例用法

分析你的Sprint板

Analyze my sprint board: https://jira.corp.appdynamics.com/secure/RapidBoard.jspa?rapidView=2823

检查库漏洞

Check if org.springframework:spring-core version 5.3.0 has any vulnerabilities

获取分配的问题

Show me all issues assigned to me in project ABC

Sprint报告

Generate sprint report for board 2823

📁 项目结构

.
├── src/
│   ├── index.ts              # Application entry point
│   ├── server.ts             # MCP server implementation
│   ├── cli.ts                # CLI interface
│   ├── services/             # Core services
│   │   ├── jira.ts           # Jira API integration
│   │   ├── libraryManager.ts # Library vulnerability analysis
│   │   ├── DatabaseService.ts # MySQL integration
│   │   └── ...
│   ├── types/                # TypeScript type definitions
│   └── utils/                # Utility functions
├── dist/                     # Compiled JavaScript (generated)
├── package.json              # Dependencies
├── tsconfig.json             # TypeScript config
└── .env                      # Environment variables (create this)

🔧 发展

在开发模式下运行:

npm run dev

构建:

npm run build

类型检查:

npm run type-check

🐛 故障排除

服务器无法启动

  • 确保Node.js版本为20.17.0或更高版本: node --version
  • 确保已安装Python 3: python3 --version
  • 安装Python包: pip3 install requests pyyaml urllib3
  • 检查端口3000是否可用
  • 验证 .env 文件配置正确(如果使用方法2/3)
  • 跑 npm run build 以确保 dist/ 文件夹存在
  • 确保 jira_python_bridge.py 存在于项目根目录中

无法在游标中连接

  • 如果使用 mcp.json:确保路径绝对正确
  • 如果使用 HTTP模式:确保服务器正在运行(npm start)
  • 验证URL是否为 http://localhost:3000/sse
  • 检查Cursor的MCP连接设置
  • 修改后重新启动Cursor IDE mcp.json

Jira API错误

  • 验证您的API令牌是否有效
  • 确保 JIRA_BASE_URL 匹配您的Jira实例
  • 检查您的Jira帐户是否具有必要的权限
  • 确保您的凭据中没有多余的空格

MCP服务器未显示工具

  • 跑 npm run build 编译TypeScript
  • 检查控制台是否有错误消息
  • 验证所有环境变量是否设置正确

🔒 安全说明

重要:The mcp.json 文件包含敏感凭据(API令牌、数据库密码)。

  • 保持你的 mcp.json 文件安全,从不将其提交到版本控制
  • 这 mcp.json 文件存储在本地计算机上
  • 只有您有权访问这些凭据
  • 生成具有最低所需权限的API令牌

📄 许可证

MIT许可证

👤 作者

达尔山·哈努曼塔帕

🙏 致谢

为AppDynamics工程团队构建,以简化Jira工作流与Cursor IDE的集成。