返回市场
Jira-MCP-服务器

Jira-MCP-服务器

作者:George556257 星标更新:2025-09-09

项目介绍

Jira MCP 服务器

smithery 徽章 MCP Claude Cursor

通过自然语言与 Jira 进行交互,获取项目信息并进行修改。结合 Claude Desktop 和自定义的 README 文件(包含项目信息),可以委派项目经理任务(例如,根据团队成员及其专长分配新问题)。

使用 Model Context Protocol 构建。

<a href="https://glama.ai/mcp/servers/lblw6pvk7i"> <img width="380" height="200" src="https://gips2.baidu.com/it/u=2112205136,779516378&fm=3081&app=3081&f=PNG?w=760&h=400" alt="Jira Server MCP 服务器" /> </a>

该服务器支持:

  • 项目创建和配置
  • 问题和子任务管理
  • 问题关联和依赖关系
  • 自动化问题工作流

配置

所需环境变量:

可选环境变量:

  • JIRA_API_VERSION: 使用的 Jira API 版本(默认: "3")

对于基本认证(默认):

  • JIRA_EMAIL: 您的 Jira 账户电子邮件(在使用基本认证时需要)

对于个人访问令牌 (PAT) 认证:

  • 设置 JIRA_AUTH_TYPE=bearer 并提供您的 PAT 作为 JIRA_API_TOKEN
  • 使用 PAT 时不需要 JIRA_EMAIL

个人访问令牌设置

个人访问令牌 (PATs) 是推荐的 Jira Cloud 认证方法,因为它们比 API 令牌提供了更好的安全性。要创建一个 PAT:

  1. 前往您的 Jira 实例设置
  2. 导航到 个人访问令牌(通常位于 安全账户设置 下)
  3. 点击 创建令牌
  4. 给您的令牌一个描述性名称(例如,“Jira MCP 服务器”)
  5. 设置适当的范围/权限(通常您需要对项目和问题具有读写访问权限)
  6. 复制生成的令牌并将其用作您的 JIRA_API_TOKEN
  7. 在配置中设置 JIRA_AUTH_TYPE=bearer

注意: 并非所有 Jira 实例都支持 PATs。如果您的实例不支持 PATs,请使用常规 API 令牌的基本认证方法。

可用工具

1. 用户管理

// 通过电子邮件获取用户的账户ID
{
  email: "user@example.com";
}

2. 问题类型管理

// 列出所有可用的问题类型
// 返回:id, name, description, 子任务状态
// 不需要参数

3. 问题链接类型

// 列出所有可用的问题链接类型
// 返回:id, name, 内向/外向描述
// 不需要参数

4. 问题管理

获取问题

// 获取项目中的所有问题
{
  projectKey: "PROJECT"
}

// 使用 JQL 过滤获取问题
{
  projectKey: "PROJECT",
  jql: "status = 'In Progress' AND assignee = currentUser()"
}

// 获取分配给用户的问题
{
  projectKey: "PROJECT",
  jql: "assignee = 'user@example.com' ORDER BY created DESC"
}

创建问题

// 创建标准问题
{
  projectKey: "PROJECT",
  summary: "问题标题",
  issueType: "任务",  // 或 "故事", "错误" 等
  description: "详细描述",
  assignee: "accountId",  // 从 get_user 工具获取
  labels: ["前端", "紧急"],
  components: ["UI", "API"],
  priority: "高"
}

// 创建子任务
{
  parent: "PROJECT-123",
  projectKey: "PROJECT",
  summary: "子任务标题",
  issueType: "子任务",
  description: "子任务详情",
  assignee: "accountId"
}

更新问题

// 更新问题字段
{
  issueKey: "PROJECT-123",
  summary: "更新后的标题",
  description: "新的描述",
  assignee: "accountId",
  status: "正在进行",
  priority: "高"
}

问题依赖关系

// 创建问题链接
{
  linkType: "阻止",  // 从 list_link_types 获取
  inwardIssueKey: "PROJECT-124",  // 被阻止的问题
  outwardIssueKey: "PROJECT-123"  // 阻止的问题
}

删除问题

// 删除单个问题
{
  issueKey: "PROJECT-123"
}

// 删除带有子任务的问题
{
  issueKey: "PROJECT-123",
  deleteSubtasks: true
}

// 删除多个问题
{
  issueKeys: ["PROJECT-123", "PROJECT-124"]
}

字段格式

描述字段

描述字段支持 Markdown 样式的格式:

  • 使用空行分隔段落
  • 使用 "- " 表示项目符号
  • 使用 "1. " 表示编号列表
  • 使用以冒号结尾的标题(后跟空行)

示例:

任务概述:

此任务涉及实现新功能:
- 实现功能A
- 测试功能B

步骤:
1. 设计组件
2. 实现逻辑
3. 添加测试

验收标准:
- 所有测试通过
- 文档更新

错误处理

服务器提供详细的错误消息:

  • 无效的问题键
  • 缺少必需的字段
  • 权限问题
  • API 请求速率限制

安装说明

  1. 克隆仓库:

    git clone https://github.com/George5562/Jira-MCP-Server.git
    cd Jira-MCP-Server
    
  2. 安装依赖项:

    npm install
    
  3. 配置环境变量: 在根目录下创建一个 .env 文件:

    对于基本认证(默认):

    JIRA_HOST=your-instance.atlassian.net
    JIRA_EMAIL=your-email@example.com
    JIRA_API_TOKEN=your-api-token
    JIRA_AUTH_TYPE=basic
    

    对于个人访问令牌 (PAT) 认证:

    JIRA_HOST=your-instance.atlassian.net
    JIRA_API_TOKEN=your-personal-access-token
    JIRA_AUTH_TYPE=bearer
    
  4. 构建项目:

    npm run build
    
  5. 启动服务器:

    npm start
    

配置 Claude Desktop

要将此 MCP 服务器与 Claude Desktop 结合使用:

  1. 查找您的 Claude Desktop 配置文件:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%/Claude/claude_desktop_config.json
    • Linux: ~/.config/Claude/claude_desktop_config.json
  2. 将 Jira MCP 服务器添加到您的配置中:

    对于基本认证(默认):

    {
      "mcpServers": {
        "jira-server": {
          "name": "jira-server",
          "command": "/path/to/node",
          "args": ["/path/to/jira-server/build/index.js"],
          "cwd": "/path/to/jira-server",
          "env": {
            "JIRA_HOST": "your-jira-instance.atlassian.net",
            "JIRA_EMAIL": "your-email@example.com",
            "JIRA_API_TOKEN": "your-api-token",
            "JIRA_AUTH_TYPE": "basic"
          }
        }
      }
    }
    

    对于个人访问令牌 (PAT) 认证:

    {
      "mcpServers": {
        "jira-server": {
          "name": "jira-server",
          "command": "/path/to/node",
          "args": ["/path/to/jira-server/build/index.js"],
          "cwd": "/path/to/jira-server",
          "env": {
            "JIRA_HOST": "your-jira-instance.atlassian.net",
            "JIRA_API_TOKEN": "your-personal-access-token",
            "JIRA_AUTH_TYPE": "bearer"
          }
        }
      }
    }
    

    替换 /path/to/jira-server 为您克隆的仓库的绝对路径。 替换 /path/to/node 为您 Node.js 可执行文件的绝对路径(您通常可以通过运行 which nodewhere node 在终端中找到它)。 推荐使用直接路径到 Node.js 可执行文件和构建的 JavaScript 文件(在运行 npm run build 后的 build/index.js)以确保可靠性。

  3. 重启 Claude Desktop 以应用更改。

配置 Cursor

要将此 Jira MCP 服务器与 Cursor 结合使用:

  1. 确保服务器已构建:Jira-MCP-Server 目录中运行 npm run build 以创建必要的 build/index.js 文件。

  2. 定位或创建 Cursor 的 MCP 配置文件:

    • 对于项目特定配置:.cursor/mcp.json 在项目的根目录中。
    • 对于全局配置(所有项目):~/.cursor/mcp.json 在您的主目录中。
  3. 将 Jira MCP 服务器配置添加到 mcp.json 中:

    对于基本认证(默认):

    {
      "mcpServers": {
        "jira-mcp-server": {
          "command": "node", // 或提供 Node.js 可执行文件的绝对路径
          "args": [
            "/path/to/your/Jira-MCP-Server/build/index.js" // 服务器构建索引.js 的绝对路径
          ],
          "cwd": "/path/to/your/Jira-MCP-Server", // Jira-MCP-Server 目录的绝对路径
          "env": {
            "JIRA_HOST": "your-jira-instance.atlassian.net",
            "JIRA_EMAIL": "your-email@example.com", // 您的 Jira 电子邮件
            "JIRA_API_TOKEN": "your-api-token", // 您的 Jira API 令牌
            "JIRA_AUTH_TYPE": "basic"
          }
        }
        // 您可以在这里添加其他 MCP 服务器配置
      }
    }
    

    对于个人访问令牌 (PAT) 认证:

    {
      "mcpServers": {
        "jira-mcp-server": {
          "command": "node", // 或提供 Node.js 可执行文件的绝对路径
          "args": [
            "/path/to/your/Jira-MCP-Server/build/index.js" // 服务器构建索引.js 的绝对路径
          ],
          "cwd": "/path/to/your/Jira-MCP-Server", // Jira-MCP-Server 目录的绝对路径
          "env": {
            "JIRA_HOST": "your-jira-instance.atlassian.net",
            "JIRA_API_TOKEN": "your-personal-access-token", // 您的 Jira PAT
            "JIRA_AUTH_TYPE": "bearer"
          }
        }
        // 您可以在这里添加其他 MCP 服务器配置
      }
    }
    
    • 替换 /path/to/your/Jira-MCP-Server 为您克隆的 Jira-MCP-Server 仓库的正确绝对路径。
    • 如果 node 不在您的系统 PATH 中或您更喜欢绝对路径,请替换 "node" 为 Node.js 可执行文件的完整路径(例如,/usr/local/bin/nodeC:\Program Files\nodejs\node.exe)。
    • 确保在 env 部分正确填写您的 Jira 实例详细信息和 API 令牌。
  4. 重启 Cursor 以应用更改。

使用 Cursor 规则进行 Jira 上下文

为了使与 Jira 的交互更加顺畅,您可以在 Cursor 的规则中定义默认的 Jira 项目和用户标识符。这有助于 Cursor 的 AI 理解上下文,而无需在每个提示中指定。

创建或编辑您的 Cursor 规则文件(例如,在项目 .cursor/rules.json 或全局 ~/.cursor/rules.json 中(确切的文件和方法可能因规则而异,请参阅 Cursor 文档中的“规则”或“上下文管理”)。添加条目如:

作为 AI 助手,当被问及 Jira 任务时:
- 假设主要的 Jira 项目键是 'YOUR_PROJECT_KEY_HERE'。
- 假设 '我的分配的任务' 或分配给 '我' 的任务是指 Jira 用户电子邮件 'your_jira_email@example.com'(或您的 Jira 账户 ID)。
您可以然后在 JQL 查询中使用这些,例如:project = YOUR_PROJECT_KEY_HERE AND assignee = 'your_jira_email@example.com'。

替换 YOUR_PROJECT_KEY_HEREyour_jira_email@example.com 为您的实际详细信息。

示例使用在 Cursor 聊天中

一旦配置完成(特别是使用 Cursor 规则进行上下文),您可以询问 Cursor:

"使用 Jira MCP,列出我分配的任务。然后,基于这些任务,制定实施计划和工作时间表。"

如果您没有设置规则,或者需要指定不同的项目或用户,则需要更具体:

"使用 Jira MCP,列出分配给 'user@example.com' 的任务在项目 'PROJECT_KEY' 中。然后,基于这些任务,制定实施计划和工作时间表。"

Cursor 的 AI 将使用 Jira MCP 服务器来获取任务,然后继续进行规划和调度请求。

通过 Smithery 安装

要通过 Smithery 自动安装 Jira MCP Server 用于 Claude Desktop:

npx -y @smithery/cli install @George5562/Jira-MCP-Server --client claude

手动安装

  1. 克隆仓库:

    git clone https://github.com/George5562/Jira-MCP-Server.git
    cd Jira-MCP-Server
    
  2. 安装依赖项:

    npm install
    
  3. 配置环境变量: 在根目录下创建一个 .env 文件:

    对于基本认证(默认):

    JIRA_HOST=your-instance.atlassian.net
    JIRA_EMAIL=your-email@example.com
    JIRA_API_TOKEN=your-api-token
    JIRA_AUTH_TYPE=basic
    

    对于个人访问令牌 (PAT) 认证:

    JIRA_HOST=your-instance.atlassian.net
    JIRA_API_TOKEN=your-personal-access-token
    JIRA_AUTH_TYPE=bearer
    
  4. 构建项目:

    npm run build
    
  5. 启动服务器:

    npm start
    

参考资料