Jira MCP工具集
一组通过模型上下文协议与Jira交互的工具集合,提供核心功能,如获取和分析问题,还带有引导式的Issue Creation Wizard(问题创建向导)。
服务介绍
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)。使用 getState 和 getStatus 来监控进度,并使用 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 文件。