使用说明
Jira MCP服务器
📚 教育项目通知
此存储库是作为学习练习和教育项目创建的。 虽然功能正常, 请注意,Atlassian提供 官方MCP服务器 对于Jira集成, 这可能更适合生产使用。
用于与Jira server实例集成的MCP(模型上下文协议)服务器。
特性
- 使用组件和标签创建新问题
- 阅读/搜索现有问题
- 更新问题字段、状态、组件和标签
- 管理对问题的评论(添加、编辑、删除)
- 获取当前用户信息
- JQL(Jira查询语言)支持
设置
-
安装依赖项:
npm install -
选项A:添加到克劳德代码MCP配置:
claude mcp add jira-server \ node /path/to/jira-mcp-server/server.js \ --env JIRA_BASE_URL=https://your-jira-server.com \ --env JIRA_API_TOKEN=your-api-token \ --scope user替换:
/path/to/jira-mcp-server/此目录的实际路径https://your-jira-server.com使用您的实际Jira服务器URL(例如。,https://jira.acme.com, https://acme-jira.example.com)your-api-token使用您的API令牌
-
选项B:添加到光标MCP配置:
将此添加到光标设置(光标→ 设置→ 特性→ 模型上下文协议):
{ "mcpServers": { "jira-server": { "command": "node", "args": ["/path/to/jira-mcp-server/server.js"], "env": { "JIRA_BASE_URL": "https://your-jira-server.com", "JIRA_API_TOKEN": "your-api-token" } } } }替换与上述相同的占位符。添加此配置后:
- 重新启动游标
- 打开新聊天并验证工具是否可用
- 如果您看到“无工具或提示”,请检查Cursor输出面板中的MCP日志
-
选项C:在本地运行服务器进行测试:
JIRA_BASE_URL=https://your-jira-server.com \ JIRA_API_TOKEN=your-api-token \ npm start
你能做什么
该服务器使您的AI助手能够通过自然语言处理所有Jira核心操作:
- 创建和更新问题 -“创建关于登录表单的错误”或“更新PROJ-123以进行中并添加集群服务组件”
- 搜索和检索问题 -“显示分配给我的打开的Bug”或“获取PROJ-456的详细信息”
- 管理评论 -“在PROJ-123中添加关于正在部署的修复程序的注释”、“编辑注释123456”或“删除错误的注释”
- 获取用户信息 -“我以谁的身份登录?”
您的人工智能助手将自动处理技术细节-无需学习Jira的查询语言或API参数。
使用示例
在Claude Code中配置后,您可以使用自然语言与Jira交互:
创建问题:
“在MYPROJ项目中创建一个新错误,摘要为“修复登录错误” 以及具有高优先级的描述“用户无法使用特殊字符登录”
搜索问题:
“搜索项目MYPROJ中的所有未解决问题”或“使用JQL查找问题:项目=MYPROJ,受让人=currentUser()”
更新问题:
更新问题MYPROJ-123,将状态设置为“进行中”,添加组件“前端”,并添加标签“紧急”
管理评论:
“在MYPROJ-123上添加一条评论,说‘现在正在处理’” “编辑评论123456,改为‘已更新:仍在处理中’” “删除评论789012-它是错误发布的”
获取用户信息:
“我以谁的身份登录?”或“获取我当前的用户信息”
MCP服务器将使用以下工具参数自动将这些请求转换为适当的Jira API调用:
刀具参数参考:
- 创建_发行:
{"project": "MYPROJ", "summary": "Fix login bug", "issueType": "Bug", "priority": "High"} - 搜索问题:
{"jql": "project = MYPROJ AND status = 'Open'", "maxResults": 25} - update_issue:
{"issueKey": "MYPROJ-123", "summary": "Updated summary", "status": "In Progress", "components": ["frontend"], "labels": ["urgent"]} - 添加注释:
{"issueKey": "MYPROJ-123", "body": "Working on this now"} - 编辑注释:
{"issueKey": "MYPROJ-123", "commentId": "123456", "body": "Updated comment"} - 删除注释:
{"issueKey": "MYPROJ-123", "commentId": "789012"} - 获取_注释:
{"issueKey": "MYPROJ-123"} - get_current_user:不需要参数
安全
重要提示: 此服务器需要API凭据才能访问您的Jira实例。请遵循以下安全最佳实践:
- 永远不要将API令牌提交到版本控制 -始终使用环境变量
- 使用最低权限访问 -使用最低权限创建API令牌
- 定期旋转令牌 -定期生成新的API令牌
- 保护您的环境 -确保您的
.env文件和环境变量得到了适当的保护 - 审查令牌范围 -仅授予对所需项目和操作的访问权限
需求
- Node.js:18.0.0或更高版本
- Jira服务器:与Jira服务器实例兼容(不兼容Jira Cloud)
- API代币:用于身份验证的有效Jira API令牌
故障排除
连接问题
- 连接被拒绝:检查你的
JIRA_BASE_URL正确且可访问 - SSL/TLS错误:验证Jira服务器的SSL证书配置
- 超时错误:检查Jira服务器的网络连接
身份验证问题
- 401未经授权:验证您的
JIRA_API_TOKEN有效且未过期 - 403禁止:请检查您的API令牌是否有足够的权限执行请求的操作
- 无效凭证:确保正确复制了API令牌(没有额外的空格或字符)
常见设置问题
- 未找到模块:运行
npm install安装依赖项 - 权限不足:检查server.js文件的文件权限
- 未加载环境变量:确保在shell或MCP配置中正确设置了环境变量
光标特定问题
- “无工具或提示”错误:
- 验证MCP配置中的文件路径是否绝对正确
- 检查Cursor的输出面板是否有MCP服务器错误
- 确保Node.js在您的PATH中并且可以从Cursor访问
- 在配置更改后尝试重新启动Cursor
- MCP服务器未启动:
- 检查所有文件路径是否使用正斜杠(即使在Windows上)
- 验证配置中是否正确设置了环境变量
- 手动测试服务器:
node /path/to/server.js查看任何启动错误
获取帮助
- 检查Jira服务器日志以获取详细的错误消息
- 在Jira管理面板中验证API令牌权限
- 对于Cursor用户:检查Cursor中的MCP输出面板,了解详细的错误日志
- 检查 详细文件 用于高级故障排除
贡献
欢迎投稿!请看 贡献.md 了解如何为该项目做出贡献的详细指南。
许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。
备注
- 此服务器使用Jira REST API v2
- 身份验证使用API令牌
- 支持Jira服务器(非特定于云的功能)
- 所有响应均以JSON文本形式返回
