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代币(在此处生成)
⚙️ 安装
- 克隆仓库:
git clone https://github.com/Darshancisco/Appd_jira_context_mcp.git
cd Appd_jira_context_mcp- 安装依赖项:
npm install- 安装Python依赖项:
pip3 install requests pyyaml urllib3- 创建
.env文件:
cp .env.example .env- 配置您的
.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- 构建项目:
npm run build🏃 运行服务器
启动MCP服务器:
npm start服务器将于启动 http://localhost:3000/sse
🔌 连接到Cursor IDE
方法1:直接配置 mcp.json (推荐)
- 找到您的Cursor MCP配置文件:
- macOS: ~/.cursor/mcp.json - 视窗: %APPDATA%\.cursor\mcp.json - Linux: ~/.cursor/mcp.json
- 添加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"
}
}
}
}- 替换占位符:
- "/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密码(如果使用数据库功能)
- 保存文件并重新启动Cursor IDE
- 验证连接:
- 打开光标IDE - MCP服务器应自动连接 - 您可以通过在聊天中键入命令进行验证
方法2:使用光标设置UI
- 打开光标IDE
- 首选 设置 → 特性 → 模型上下文协议
- 添加一个新的MCP服务器:
- 名字:Jira上下文MCP - 统一资源定位符: http://localhost:3000/sse (要求服务器单独运行)
- 点击 连接
方法3:使用命令面板
- 打开命令选项板(
Cmd+Shift+P/Ctrl+Shift+P) - 类型 “连接到MCP服务器”
- 输入:
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 ABCSprint报告
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许可证
👤 作者
达尔山·哈努曼塔帕
- 电子邮件:darshan.hanumanthappa@gmail.com
- github: @达尔尚西斯科
🙏 致谢
为AppDynamics工程团队构建,以简化Jira工作流与Cursor IDE的集成。
