Jira集成服务

Jira Extended MCP Server是一款专注于Jira Cloud集成的轻量级MCP服务器,支持批量操作、丰富的文本编辑、冲刺和发布管理等功能,适用于AI代理和开发团队。

  • by Juhwan01
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Juhwan01/jira-extended-mcp-server

使用说明

Jira Extended MCP Server

Full-featured Jira Cloud integration for AI agents
27 tools · Bulk ops · Rich text · Sprints · Releases · Issue links

Quick Start · Use Cases · Tools · Configuration

한국어 | English


建造于 Moobean团队 --一个轻量级的、仅支持Jira的MCP服务器,专注于用最少的设置完成任务。

是什么让这与众不同

  • 只有Jira,零膨胀 --没有汇流,没有额外的模块。一 uvx 命令,你就可以跑了。
  • Wiki标记支持 -使用Jira REST API v2,因此 *bold*, h2. Title, * bullet 只需工作。没有ADF JSON的麻烦。
  • 批量操作 --在一次通话中创建多达50个问题或转换多个问题。
  • 完整的发布生命周期 --创建、更新、删除版本并将问题分配给版本。
  • 问题链接 --阻止、关联、复制、克隆——支持创建、查询和删除。

比较

注: 功能数据基于截至2026年3月的每个项目的README和文档。自那以后,功能可能发生了变化。

吉拉mcp mcp澳大利亚 Atlassian Rovo MCP Jira扩展
范围 仅限Jira Jira+汇流 Jira+汇流+指南针 仅限Jira
发出CRUD 只读 完整CRUD 完整CRUD
批量创建 - 支持 支持 50个问题/电话
批量过渡 - - - 支持
父/子任务 - 支持 支持 受支持
fixVersions - 支持 支持 受支持
startDate/dueDate - 支持 支持 受支持
问题链接 - 支持 - 受支持
发布管理 - - - 4工具
Sprint管理 - 支持 - 受支持
富格文本 - Markdown→ ADF ADF Wiki标记(v2 API)
设置 npm pip/Docker OAuth(云托管) uvx 俏皮话
Jira工具总数 2 ~30(Jira部分) ~25(Jira的部分) 27
语言 TypeScript Python 远程(SaaS) Python

用例

用自然语言问你的AI代理:

问题管理

在KAN项目中创建一个名为“用户认证系统”的史诗,开始日期为4月1日,到期日期为4年30日

“在KAN-42下创建5个故事:登录、注册、密码重置、社交登录、2FA”

“显示KAN项目中的所有‘进行中’问题”

批量操作

“将本次冲刺中的所有10个积压问题转换为‘完成’”

“显示v2.0版本中包含的问题列表”

释放与精神

“在KAN项目中创建v2.1.0版本,发布日期为5月15日”

“将KAN-50和KAN-51移动到当前的主动冲刺”

问题链接

“将KAN-10链接为阻止KAN-20”

富文本(Wiki标记)

“在描述中使用h2标题和项目符号列表创建问题”

快速开始

先决条件

  • uv (Python包管理器——如果需要,会自动安装Python)
  • Jira API代币

第一步:安装uv

uv 是一个Python包管理器。如果你没有:

# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# Windows (PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

步骤2:获取Jira API代币

  1. 首选https://id.atlassian.com/manage-profile/security/api-tokens
  2. 点击 创建API令牌
  3. 复制令牌——下一步您将需要它

步骤3:配置您的AI客户端

选择添加配置的位置:

范围 文件 效果
全球 (推荐) ~/.claude.json 适用于所有项目
仅限项目 .mcp.json 在项目根目录中 仅在该项目中
Claude Code

最简单的命令:

# macOS / Linux
claude mcp add jira-extended -s user \
  -e JIRA_URL=https://your-instance.atlassian.net \
  -e JIRA_EMAIL=your-email@example.com \
  -e JIRA_API_TOKEN=your-token \
  -- uvx jira-extended-mcp

# Windows — use uvx.exe (not uvx) to avoid .cmd wrapper issues
claude mcp add jira-extended -s user \
  -e JIRA_URL=https://your-instance.atlassian.net \
  -e JIRA_EMAIL=your-email@example.com \
  -e JIRA_API_TOKEN=your-token \
  -- uvx.exe jira-extended-mcp

-s user 全球安装。对于仅项目安装,省略它。

或者手动编辑配置文件:

在文本编辑器中打开文件:

# macOS / Linux
code ~/.claude.json    # or: nano ~/.claude.json

# Windows
notepad %USERPROFILE%\.claude.json

添加此内容(如果文件不存在,则创建该文件):

{
  "mcpServers": {
    "jira-extended": {
      "command": "uvx",
      "args": ["jira-extended-mcp"],
      "env": {
        "JIRA_URL": "https://your-instance.atlassian.net",
        "JIRA_EMAIL": "your-email@example.com",
        "JIRA_API_TOKEN": "your-api-token"
      }
    }
  }
}

Windows用户: 使用 "command": "uvx.exe" 而不是 "command": "uvx"The uvx.cmd Windows上的包装器会中断MCP stdio传输。

Claude Desktop

在文本编辑器中打开配置文件:

# macOS
code ~/Library/Application\ Support/Claude/claude_desktop_config.json

# Windows
notepad %APPDATA%\Claude\claude_desktop_config.json

添加或合并到文件中:

{
  "mcpServers": {
    "jira-extended": {
      "command": "uvx",
      "args": ["jira-extended-mcp"],
      "env": {
        "JIRA_URL": "https://your-instance.atlassian.net",
        "JIRA_EMAIL": "your-email@example.com",
        "JIRA_API_TOKEN": "your-api-token"
      }
    }
  }
}

如果文件已经有其他MCP服务器,请添加 "jira-extended": {...} 现有内部的块 "mcpServers" 对象。

Windows用户: 使用 "command": "uvx.exe" 而不是 "command": "uvx".

VS Code (GitHub Copilot)

创建 .vscode/mcp.json 在项目根目录中:

mkdir -p .vscode
code .vscode/mcp.json
{
  "servers": {
    "jira-extended": {
      "command": "uvx",
      "args": ["jira-extended-mcp"],
      "env": {
        "JIRA_URL": "https://your-instance.atlassian.net",
        "JIRA_EMAIL": "your-email@example.com",
        "JIRA_API_TOKEN": "your-api-token"
      }
    }
  }
}

启用MCP: 设置>聊天>MCP 必须检查。在代理模式下工作。

Windows用户: 使用 "command": "uvx.exe" 而不是 "command": "uvx".

Cursor

打开配置文件:

# macOS / Linux
code ~/.cursor/mcp.json

# Windows
notepad %USERPROFILE%\.cursor\mcp.json
{
  "mcpServers": {
    "jira-extended": {
      "command": "uvx",
      "args": ["jira-extended-mcp"],
      "env": {
        "JIRA_URL": "https://your-instance.atlassian.net",
        "JIRA_EMAIL": "your-email@example.com",
        "JIRA_API_TOKEN": "your-api-token"
      }
    }
  }
}

Windows用户: 使用 "command": "uvx.exe" 而不是 "command": "uvx".

From source (development)
git clone https://github.com/moobean-team/jira-extended-mcp-server.git
cd jira-extended-mcp-server
uv pip install -e .

然后使用 "command": "jira-extended-mcp" 而不是 "command": "uvx" 在您的配置中。

步骤4:重新启动并验证

重启你的AI客户端,然后问:

“显示我的Jira项目”

如果你看到你的项目列表,你就准备好了。

配置

环境变量

变量 必填 默认 描述
JIRA_URL 是 -- Jira Cloud实例URL
JIRA_EMAIL 是 -- Atlassian帐户电子邮件
JIRA_API_TOKEN 是 -- API令牌
JIRA_START_DATE_FIELD 没有 customfield_10015 开始日期的自定义字段ID

查找您的开始日期字段ID

开始日期字段ID因Jira实例而异。使用 get_createmeta 您的项目查看可用字段的工具,或:

curl -s -u email:token https://your-instance.atlassian.net/rest/api/2/field \
  | python -m json.tool | grep -i "start"

富文本(Wiki标记)

此服务器使用Jira REST API v2,它接受 Jira wiki标记 用于描述和注释字段的字符串。Jira会自动将它们呈现为富文本。

语法 呈现为
*bold* 大胆
_italic_ 斜体
h2. Section Title H2航向
* item 1\n* item 2 项目符号列表
# item 1\n# item 2 编号列表
{code}print("hi"){code} 代码块
[Link Text|https://url] 超链接
|col1|col2|\n|a|b| 表格

完整参考: Jira Wiki标记

可用工具

Issue CRUD (6 tools)
工具 说明
create_issue 使用完整的字段支持创建问题——父字段、fixVersions、startDate、dueDate、故事点、组件、自定义字段
create_issues_bulk 在单个API调用中批量创建多达50个问题
get_issue 使用格式化输出获取问题详细信息
update_issue 更新任何问题字段(仅发送更改的字段)
delete_issue 删除子任务处理问题
search_issues 带分页和可配置字段的JQL搜索
Transitions (3 tools)
工具 说明
get_transitions 列出问题的可用状态转换
transition_issue 按名称或ID更改问题状态,并可选择注释
bulk_transition 同时过渡多个问题
Issue Links (3 tools)
工具 说明
link_issues 在问题(块、关联、重复、克隆)之间创建链接
get_issue_links 获取包含链接类型详细信息的问题的所有链接
delete_issue_link 按ID删除链接
Release Management (4 tools)
工具 说明
get_versions 列出项目版本/发布
create_version 创建具有开始/发布日期的新版本
update_version 更新发布详细信息,标记为已发布/已存档
delete_version 删除带有问题重新分配选项的版本
Sprint Management (2 tools)
工具 说明
get_sprints 列出板的冲刺(按活动/未来/关闭筛选)
move_to_sprint 将问题转移到目标冲刺
Comments & Worklogs (3 tools)
工具 说明
add_comment 向问题添加评论(支持wiki标记)
get_comments 获取包含作者和时间戳的问题注释
add_worklog 以人性化格式记录工作时间(“2小时30分钟”、“1天”)
Project & Metadata (6 tools)
工具 说明
get_projects 列出所有可访问的项目
get_project 获取项目详细信息
get_boards 列表板(scrum/看板/简单)
get_current_user 获取经过身份验证的用户信息
search_users 按姓名/电子邮件搜索用户
get_createmeta 获取每个项目的可用问题类型和字段

建筑

src/jira_extended_mcp/
├── server.py    # FastMCP server + 27 tool definitions
├── client.py    # Async Jira REST client (httpx + rate limit retry)
├── adf.py       # ADF fallback helpers (v3 response parsing)
└── __init__.py

关键设计决策:

决定 为什么
REST API v2 对于问题/评论 v2接受富文本的wiki标记字符串。v3需要ADF JSON,可以剥离格式
REST API v3 对于元数据 版本、项目、用户没有文本字段——v3很好
敏捷API 对于冲刺/板 冲刺操作只能通过 /rest/agile/1.0/
快速MCP寿命 httpx.AsyncClient 跨工具调用汇集,而不是按请求汇集
结构化错误 错误返回 {error, status} 这样法学硕士才能得到可操作的反馈
可配置的开始日期字段 JIRA_START_DATE_FIELD env-var处理特定于实例的自定义字段ID

发展

git clone https://github.com/moobean-team/jira-extended-mcp-server.git
cd jira-extended-mcp-server
uv pip install -e .

# Run directly
jira-extended-mcp

# Or via module
python -m jira_extended_mcp.server

故障排除

"Missing required env vars"

确保 JIRA_URL, JIRA_EMAIL,以及 JIRA_API_TOKEN 在MCP配置中设置 env 块。服务器在启动时检查这些。

"Transition not found"

Jira转换是特定于工作流的。使用 get_transitions 首先查看问题当前状态的可用转换。转换名称不区分大小写。

Start date not saving

您的Jira实例可能使用不同的自定义字段ID。使用 get_createmeta 要找到正确的字段,请设置 JIRA_START_DATE_FIELD 有人是。

Rate limited (429)

服务器使用自动重试最多3次 Retry-After 头球对于有50多个问题的批量操作,考虑拆分为多个调用。

Description shows as plain text

此服务器使用Jira REST API v2,它接受wiki标记。使用Jira wiki语法(*bold*, h2. Title, * bullet)而不是Markdown。

许可证

麻省理工学院 ©Moobean团队