G7 JIRA MCP
一个基于FastMCP框架的JIRA集成插件,用于查询JIRA问题详情、列表及进行基本操作,支持JIRA附件管理。
主要功能
- 查询JIRA问题详情和问题列表
- 创建和更新JIRA问题
- 获取项目列表和详情
- 管理和下载JIRA问题附件
- 自动将附件保存到项目根目录的
.jira-mcp/{issue_key}/子目录 - 按问题ID组织的子目录结构
- 支持下载单个或所有附件
- 智能下载机制:附件地址跳转到 SSO 时自动完成 CAS 登录后下载(需要能登录 SSO 的个人域账号,整批附件只登录一次)
- 自动将附件保存到项目根目录的
- 评论管理功能
- 获取问题的所有评论
- 添加新评论到问题
- 工时管理功能
- 添加工时记录到问题
- 支持多种时间格式(如 1h、30m、2h 30m、1d、1w)
- 根据JIRA ID查询GitLab Merge Request
- 从DevLake服务获取与JIRA关联的MR信息
- 支持完整ID或部分ID搜索
- 返回MR详情、代码变更统计等信息
- 调试工具
- debug_issue_fields:查看JIRA问题的完整字段结构
配置
方式一:直接使用(推荐)
使用 uvx 方式,无需手动安装,自动下载和管理包:
claude mcp add jira-mcp -- uvx g7-jira-mcp --transport stdio \
--env JIRA_USERNAME=your_username \
--env JIRA_PASSWORD=your_password
方式二:先安装后使用
适合需要离线使用或希望固定版本的用户:
# 1. 安装包(推荐使用阿里云镜像加速)
pip install g7-jira-mcp -i https://mirrors.aliyun.com/pypi/simple
# 2. 添加到 Claude Code
claude mcp add jira-mcp -- g7-jira-mcp --transport stdio \
--env JIRA_USERNAME=your_username \
--env JIRA_PASSWORD=your_password
查看和管理
# 查看已添加的 MCP 服务器
claude mcp list
# 删除 MCP 服务器
claude mcp remove jira-mcp
Cursor / 其他 IDE 配置
如果使用 Cursor 或其他支持 MCP 的 IDE,在配置文件(如 .cursor/mcp.json)中添加:
{
"mcpServers": {
"g7-jira-mcp": {
"command": "uvx",
"args": [
"--from=g7-jira-mcp",
"g7-jira-mcp",
"--transport",
"stdio"
],
"env": {
"JIRA_USERNAME": "your_username",
"JIRA_PASSWORD": "your_password"
}
}
}
}
提示:
JIRA_SERVER_URL已有默认值,无需配置。如需修改,添加到env中即可。
Streamable HTTP 部署(接入智能体平台等远程客户端)
以 HTTP 服务运行,供只支持 Streamable HTTP 的第三方平台调用。端点为 http://<host>:<port>/mcp,使用无状态模式(每个请求独立,不依赖会话)。
G7E6_ENV=prod \
G7E6_CLIENT_ID=<client_id> \
G7E6_CLIENT_SECRET=<client_secret> \
JIRA_ENABLED_TOOLS=get_issue,search_issues,get_issue_comments,get_merge_requests_by_jira_id \
g7-jira-mcp --transport streamable-http --host 0.0.0.0 --port 8000
| 环境变量 | 说明 |
|---|---|
MCP_SERVER_HOST / MCP_SERVER_PORT |
监听地址和端口,默认 127.0.0.1:8000,也可用 --host / --port |
MCP_JSON_RESPONSE |
true 时直接返回 JSON,默认返回 SSE 流 |
JIRA_ENABLED_TOOLS |
工具白名单(逗号分隔),设置后只加载列出的工具,优先于 --full |
G7E6_ENV |
智能体平台环境:prod(默认)或 test,决定内置的 parse 接口和 Keycloak 地址(见下表) |
G7E6_CLIENT_ID / G7E6_CLIENT_SECRET |
对应环境 Keycloak 中的 client 凭证(必填,测试和正式环境各一套) |
G7E6_USERINFO_PARSE_URL / G7E6_KEYCLOAK_TOKEN_URL |
可选,覆盖内置地址 |
G7E6_USER_TOKEN_HEADER |
平台透传用户 JWT 的请求头,默认 g7e6-user-token |
G7E6_USERINFO_CACHE_TTL |
用户信息缓存秒数,默认 300,不超过 JWT 自身有效期 |
G7E6_ENV |
parse 接口 | Keycloak |
|---|---|---|
prod |
https://ai-agent.chinawayltd.com/v1/api/mgt/openapi/userinfo/parse |
https://keycloak.chinawayltd.com/realms/litellm-proxy |
test |
https://ai-agent.test.chinawayltd.com/v1/api/mgt/openapi/userinfo/parse |
https://keycloak.test.chinawayltd.com/realms/litellm-proxy |
HTTP 传输下每次 tools/call 都必须携带有效的用户 JWT,校验通过才执行,否则返回工具错误;initialize、tools/list 不需要。G7E6_CLIENT_ID / G7E6_CLIENT_SECRET 未配置时服务照常启动,但所有工具调用都会被拒绝,启动日志会列出缺少的配置。校验通过的调用会记录 [audit] user=<username> tool=<tool> 日志。stdio 传输不校验用户身份。
注意:
- JIRA 仍以
JIRA_USERNAME配置的服务账号访问,用户身份只用于准入和审计,不做 JIRA 权限隔离,建议只开放只读工具。 - 附件工具会把文件保存到服务端本地目录,远程客户端拿不到,HTTP 部署不建议开放。
- 生产环境应在前面配置 HTTPS。
快速开始
配置完成后,即可在 Claude Code 或支持 MCP 的 IDE 中使用自然语言操作 JIRA:
查询问题详情
查看 JIRA 问题 ERP-161 的详情
搜索问题
搜索所有处于"进行中"状态的 JIRA 问题
管理附件
下载 JIRA 问题 ERP-161 的所有附件
管理评论
为 ERP-161 添加评论"已修复此问题"
添加工时
为 ERP-161 添加 1 小时工时
查询关联 MR
查询 ERP-161 关联的 GitLab Merge Request
MCP提供的工具
本MCP服务器提供以下工具:
| 工具名称 | 描述 | 示例 |
|---|---|---|
| get_issue | 获取JIRA问题详情 | ERP-123 |
| search_issues | 搜索JIRA问题列表 | project = ERP AND status = "In Progress" |
| create_issue | 创建JIRA问题 | 创建一个标题为"修复登录问题"的任务 |
| update_issue | 更新JIRA问题 | 将ERP-123的状态改为"已完成" |
| get_projects | 获取JIRA项目列表 | 列出所有可访问的项目 |
| get_project | 获取项目详情 | 获取ERP项目的详细信息 |
| get_issue_attachments | 获取问题的所有附件 | 列出ERP-123的所有附件 |
| download_all_attachments | 下载问题的所有附件 | 下载ERP-123的全部附件 |
| get_attachment_by_filename | 获取特定附件 | 从ERP-123获取名为"截图.png"的附件 |
| get_issue_comments | 获取问题的所有评论 | 列出ERP-123的所有评论 |
| add_comment | 添加评论到问题 | 为ERP-123添加评论"已修复" |
| add_worklog | 添加工时记录到问题 | 为ERP-123添加1小时工时 |
| get_merge_requests_by_jira_id | 根据JIRA ID查询GitLab MR | 查询ERP-123关联的所有MR |
| get_transitions | 获取问题的可用状态转换 | 获取ERP-123的可用状态转换 |
| transition_issue | 执行问题状态转换 | 将ERP-123转为已开始处理 |
| debug_issue_fields | 查看问题的完整字段结构 | 调试ERP-123的所有字段 |
许可证
MIT
Metadata
Release files for g7-jira-mcp 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| g7_jira_mcp-0.3.0.tar.gz | 60.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| g7_jira_mcp-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 89.7 kB
Release files / g7_jira_mcp-0.3.0.tar.gz
| Download URL | g7_jira_mcp-0.3.0.tar.gz |
|---|---|
| Size | 60.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f96cb922ada7f5e13e0f9c60f96dec8e7199fa0f70d72102de87d71dc6d85da3
|
|
BLAKE2b-256 checksum How to use checksums |
7480ab57cc5939ba707f05675a32599e9308751c6aa9729c326cc1bde052973e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.11
|
Release files / g7_jira_mcp-0.3.0-py3-none-any.whl
| Download URL | g7_jira_mcp-0.3.0-py3-none-any.whl |
|---|---|
| Size | 29.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
20d441d5b33e609a1b7c44e87ce9c376ca0fc7be6265f4ae3a06faee240c633f
|
|
BLAKE2b-256 checksum How to use checksums |
6f9f2d12511ac32f0fc9b28071968f02736dc84b2aea21d010809ef37fcbba0d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.11
|