JIRA MCP 服务器
一个简单的 模型上下文协议(MCP) “氛围编码”(vibe-coded)服务器,用于将JIRA与AI编码助手集成。MCP是一种开放协议,它实现了大型语言模型(LLM)应用与外部数据源和工具之间的无缝集成。
最初为Cursor集成开发环境(IDE)设计的这个服务器,现在支持包括Claude Code和Codex CLI在内的多个AI编码助手。
当心!就连这份文件也几乎完全是由AI编码助手撰写的。
特点
- 通过密钥获取JIRA问题
- 使用JQL(JIRA查询语言)搜索问题
- 创建和更新问题(注:在高度定制的JIRA项目中可能存在限制)
- 在问题上添加评论
- 克隆问题(有助于绕过强制自定义字段的限制,但在复杂项目配置中可能有限制)
- 可配置字段选择
- 分页支持
- 详细的错误处理和日志记录
- 记录工作日志
用户工作流
搜索和过滤流程
graph LR
A[Start Search] -->|Enter JQL| B[Search Query]
B -->|Apply Filters| C[Results]
C -->|Select Fields| D[Customized View]
D -->|Pagination| E[More Results]
subgraph Search Options
F[JQL Query]
G[Field Selection]
H[Result Limit]
I[Start Position]
end
B -->|Uses| F
C -->|Uses| G
C -->|Uses| H
C -->|Uses| I问题克隆流程
graph LR
A[Find Source Issue] -->|Copy Key| B[Clone Issue]
B -->|Customize Fields| C[Modified Clone]
C -->|Create| D[New Issue]
subgraph Clone Options
E[Change Project]
F[Modify Fields]
G[Copy Attachments]
H[Add Source Link]
end
B -->|Can Use| E
B -->|Can Use| F
B -->|Can Use| G
B -->|Can Use| H要了解详细的技术架构和系统工作流程,包括问题生命周期和认证流程,请参阅 ARCHITECTURE.md(文件名可译为“架构.md”,但通常文件名保持原样不翻译,所以直接为“ARCHITECTURE.md”)。
关于MCP
这台服务器实现了 模型上下文协议 该规范使得AI编码助手能够与JIRA数据实现无缝交互。该协议标准化了大型语言模型(LLM)应用程序与外部数据源和工具之间的通信方式。
🚀 快速集成
用于AI助手集成见 AI_INTEGRATION.md(文件名可译为“人工智能集成说明.md”或保持原样,根据上下文决定是否需要翻译文件名) 以下是完整的设置指南:
- 🤖 表示机器人。 克劳德·科德 - 现代MCP集成
- 🎯(目标/瞄准) Cursor 集成开发环境(IDE) - 原始集成(多种设置选项)
- 🧠 表示“大脑”或“思考”的意思。 Codex CLI(可译为“Codex 命令行界面”或根据具体上下文简化为“Codex CLI工具”) - 请参阅Codex CLI部分 AI_INTEGRATION.md 翻译为中文是:“AI集成.md”(注:.md通常表示Markdown文件格式,但在中文语境下,我们通常直接保留文件扩展名,不翻译其含义)。不过,如果需要更自然的表达,可以翻译为“AI集成说明文档.md”或“AI集成指南.md”,具体取决于文件的实际内容和用途
设置
- 创建一个虚拟环境:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- 安装依赖项:
pip install -r requirements.txt- 配置环境变量:
创建一个 .env 与以下文件一起:
JIRA_URL=your_jira_url
JIRA_USERNAME=your_username
JIRA_API_TOKEN=your_api_token使用方法
运行服务器:
./run-jira-mcp.sh发展
该项目采用模块化结构:
src/
├── core/ # Core JIRA client implementation
│ ├── __init__.py
│ ├── client.py # JiraClient class
│ └── config.py # Configuration management
├── models/ # Pydantic models for validation
│ ├── __init__.py
│ ├── comment.py # Comment-related models
│ ├── issue.py # Issue-related models
│ └── worklog.py # Worklog-related models
└── operations/ # MCP operation implementations
├── __init__.py
├── comments.py # Comment operations
├── issues.py # Issue operations
├── projects.py # Project operations
└── worklog.py # Worklog operations关键组件
- 模型 (
src/models/)
- IssueType, IssueArgs - 问题创建/更新模型 - IssueTransitionArgs - 问题状态转移模型 - CloneIssueArgs - 问题克隆模型 - CommentArgs, GetCommentsArgs - 注释模型 - LogWorkArgs - 工作日志模型
- 核心 (
src/core/)
- JiraClient 主JIRA API客户端 - JiraConfig - 配置管理 - 错误处理和日志记录
- 操作 (
src/operations/)
- 问题管理(获取、搜索、创建、更新、克隆) - 评论处理(添加,获取) - 工作日志记录 - 项目列表
该项目遵循概述在(某处/某文件中)的实施计划 IMPLEMENTATION_PLAN.md。
当前版本:v0.4
- ✅ 基本的JIRA集成
- ✅ 支持JQL的搜索功能
- ✅ 问题管理(创建、更新、克隆),针对高度定制化项目设有限制
- ✅ 评论功能
- ✅ 工作日志记录
相关链接
- 模型上下文协议 - 主要的MCP项目
- MCP Python SDK - 我们用来实现这个服务器的SDK
- MCP 文档 - 协议文档和规范
许可证
麻省理工学院(MIT)
安全考虑因素
此工具主要设计用于个人工作流程自动化及个人开发者使用。请注意以下安全事项:
⚠️ 使用建议
- 个人/开发用途非常适合管理其JIRA工作流程的独立开发者
- 小团队使用适用于有适当安全措施的可信赖团队环境
- 不建议用于:
- 以当前形式进行生产部署 - 多租户环境 - 面向公众的服务 - 处理敏感/受监管数据
🔒 安全要求
如果您选择使用此工具,请确保:
- 您的JIRA实例使用HTTPS
- 您正在使用API令牌(而非密码)进行身份验证
- 你的
.env文件已妥善保存且未提交到版本控制系统 - 您了解运行具有JIRA访问权限的第三方工具所存在的风险
🛡️ 最佳实践
- 定期轮换您的API令牌
- 监控您的JIRA审计日志,以发现异常活动
- 使用该工具的最新版本
- 在将代码用于您的环境之前,请进行审查
📝 关于企业使用的说明
此工具目前尚未针对企业安全需求进行加固。如果您需要企业部署的解决方案,请考虑:
- 实施额外的安全控制措施
- 进行安全审查
- 将安全改进贡献给项目
- 使用官方的企业级替代方案
如有关于安全的问题或要报告漏洞,请提交一个议题或直接联系维护者。
