J

Jira MCP工具集

@tbreeding/jira-mcp
0 Stars 48 次浏览 tbreeding 更新于 2026-08-23

一组通过模型上下文协议与Jira交互的工具集合,提供核心功能,如获取和分析问题,还带有引导式的Issue Creation Wizard(问题创建向导)。

该服务暂未提供标准配置,请参考 README 手动接入

服务介绍

Jira MCP 服务器

这是一系列通过模型上下文协议 (MCP) 与 Jira 交互的工具集合,提供了核心的 Jira 功能以及统一的、有引导的问题创建和更新向导。

安装

要将此安装到客户端中:

{
  "mcpServers": {
    "JiraMCP_Published": {
      "command": "npx",
      "args": [
        "@timbreeding/jira-mcp-server@latest",
        "--jira-base-url=https://example.atlassian.net",
        "--jira-username=someJiraUserEmail@domain.com",
        "--jira-api-token=<your jira token>"
      ],
      "env": {
        "DEBUG": "true",
        "LOG_FILE_PATH": "" // Some full path. If blank, it will not write logs to a file.
      }
    }
  }
}

使用

...

配置

环境变量

在本地运行时,您可以将 DEBUG 和 LOG_FILE_PATH 放入您的 .env 文件中。

可用工具

该应用程序通过模型上下文协议提供以下工具:

核心 Jira 工具

  • getJiraIssue: 通过其 key 获取 Jira 问题。
  • analyzeJiraIssue: 对 Jira 问题进行全面分析。
  • jiraGet: 从任何 Jira API GET 端点获取数据。
  • getIssuesByJql: 使用 JQL 查询搜索 Jira 问题。

问题创建向导工具

这些工具为创建新的 Jira 问题提供了一个逐步的、有指导的过程。向导在整个创建流程中保持状态,通常涉及以下阶段:启动流程、选择项目 (getProjects)、选择问题类型 (getIssueTypes)、检索并填充必要的字段 (getFields, updateFields)、可选地分析问题细节,最后确认并创建问题 (createIssue)。使用 getStategetStatus 来监控进度,并使用 resetState 重新开始。

  • issueCreation_getState: 获取向导的当前内部状态。
  • issueCreation_getStatus: 获取向导的高级状态。
  • issueCreation_initiateState: 初始化一个新的向导状态。
  • issueCreation_resetState: 重置向导状态。
  • issueCreation_updateState: 更新向导状态(项目、问题类型、字段、步骤)。
  • issueCreation_createIssue: 使用向导的状态创建 Jira 问题。
  • issueCreation_getProjects: 检索可用的 Jira 项目。
  • issueCreation_getIssueTypes: 获取所选项目的可用问题类型。
  • issueCreation_getFields: 检索选定项目/问题类型所需的字段。
  • issueCreation_updateFields: 更新向导状态中的特定字段值。
  • issueCreation_setAnalysisComplete: 设置分析完成标志。
  • issueCreation_setUserConfirmation: 在创建前设置用户确认标志。
  • issueCreation_analyzeIssue: 在向导上下文中分析问题详情。

问题更新向导工具(统一更新工作流)

这些工具为更新任何 Jira 问题——无论是新创建的还是已经存在的——提供了一个统一且强大的机制。所有更新现在都使用单一的一致工作流:

  • issueUpdateWizard_loadIssueIntoState: 通过 key 获取 Jira 问题,并将其加载到状态管理器中以进行统一更新工作流。
  • issueUpdateWizard_updateIssueFromState: 使用当前状态(字段、项目、类型等)更新任何已加载的问题。

关键原则:

  • 所有问题更新(新问题或现有问题)都遵循相同的模式:将问题加载到状态中,修改字段,然后通过 API 更新。
  • 新问题和现有问题更新之间没有代码重复。
  • 最小化、明确且健壮的错误处理。
  • 更新操作的单元测试覆盖率100%。

开发

运行测试

已配置 Jest 用于测试。要运行测试套件:

npm test

代码质量检查

要同时运行类型检查、代码格式检查和测试:

npm run check-codebase

使用 MCP Inspector 运行

对于使用 Model Context Protocol Inspector 的本地开发和测试,你可以启动应用程序并通过 -e 标志传递所需的环境变量:

npx @modelcontextprotocol/inspector -e JIRA_BASE_URL=https://your-domain.atlassian.net -e JIRA_USERNAME=your-email@example.com -e JIRA_API_TOKEN=your-api-token -e DEBUG=true node build/index.js

(如果使用 build/index.js,请确保先构建项目)

许可证

本项目根据 MIT 许可证发布 - 详情请参阅 LICENSE 文件。

相关 MCP 服务