使用说明
JIRA MCP服务器
提供JIRA集成功能的模型上下文协议(MCP)服务器。该服务器允许AI助手使用自然语言搜索、查看、创建和更新JIRA问题。
特性
- 搜索问题:使用JQL(JIRA查询语言)搜索JIRA问题
- 获取问题详细信息:检索有关特定问题的详细信息
- 创建问题:使用可自定义字段创建新的JIRA问题
- 更新问题:更新现有问题,包括状态转换
安装
npm install
配置
服务器需要三个环境变量:
JIRA_URL:您的JIRA实例URL(例如。,https://your-domain.atlassian.net)JIRA_EMAIL:您的JIRA帐户电子邮件JIRA_API_TOKEN:您的JIRA API代币
获取JIRA API代币
- 登录到https://id.atlassian.com/manage-profile/security/api-tokens
- 点击“创建API令牌”
- 给它一个标签并复制令牌
Claude桌面设置
服务器同时支持这两种功能 标准 和 上海证券交易所 运输方式。对于Claude Desktop和其他生成进程的MCP客户端,会自动使用stdio模式。
将此添加到您的Claude Desktop配置文件中:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
视窗: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"jira": {
"command": "npx",
"args": ["-y", "jira-mcp-server"],
"env": {
"JIRA_URL": "https://your-domain.atlassian.net",
"JIRA_EMAIL": "your-email@example.com",
"JIRA_API_TOKEN": "your-api-token-here"
}
}
}
}
或者,如果在本地运行:
{
"mcpServers": {
"jira": {
"command": "node",
"args": ["O:\\projects\\jira-mcp\\index.js"],
"env": {
"JIRA_URL": "https://your-domain.atlassian.net",
"JIRA_EMAIL": "your-email@example.com",
"JIRA_API_TOKEN": "your-api-token-here"
}
}
}
}
服务器将自动检测到它是由MCP客户端运行的(stdin不是TTY),并使用stdio传输模式。
可用资源
MCP服务器将JIRA数据作为可以列出和读取的资源公开:
jira://search?jql={查询}
使用JQL查询搜索JIRA问题。
URI示例:
jira://search?jql=project=ST AND status=Openjira://search?jql=project=ST AND type=Task AND component in (BuildReq, ValidationReq) AND status=Open ORDER BY priority DESCjira://search?jql=assignee=currentUser() AND status!=Done
jira://issue/{issueKey}
获取有关特定问题的详细信息。
URI示例:
jira://issue/ST-123jira://issue/PROJ-456
可用工具
jira_search
使用JQL搜索JIRA问题。
参数:
jql(必填):JQL查询字符串maxResults(可选):返回的最大结果数(默认值:50)startAt(可选):分页的起始索引(默认值:0)fields(可选):要返回的字段名数组
例子:
Search for all open bugs in the PROJ project
jira_get_issue
获取有关特定问题的详细信息。
参数:
issueKey(必填):发布密钥(例如“PROJ-123”)fields(可选):要返回的字段名数组
例子:
Get details for issue PROJ-123
jira_create_issue
创建新的JIRA问题。
参数:
projectKey(必填):项目密钥summary(必填):发行标题issueType(必填):问题类型(例如,“任务”、“Bug”、“故事”)description(可选):问题描述priority(可选):优先级assignee(可选):受让人帐户IDlabels(可选):标签数组
例子:
Create a new bug in project PROJ with summary "Login page not working"
jira_update_issue
更新现有的JIRA问题。
参数:
issueKey(必填):发布密钥进行更新summary(可选):新摘要description(可选):新描述priority(可选):新优先级assignee(可选):新受让人帐户IDlabels(可选):新标签数组status(可选):新状态(触发转换)
例子:
Update issue PROJ-123 to set status to "In Progress"
用法示例
在Claude Desktop中配置服务器后,您可以使用以下自然语言命令:
- “搜索PROJ项目中正在进行的所有问题”
- “显示PROJ-123问题的详细信息”
- “在PROJ中创建一个标题为“更新文档”的新任务”
- “更新PROJ-456并将其状态设置为完成”
运输方式
服务器支持两种传输模式:
标准模式(MCP客户端的默认模式)
当服务器由MCP客户端(如Claude Desktop)生成时,它会自动检测到stdin不是TTY,并使用stdio传输。这是本地MCP集成的标准模式。
您还可以通过设置明确强制stdio模式:
MCP_TRANSPORT=stdio node index.js
SSE模式(HTTP服务器)
服务器还可以使用服务器发送事件(SSE)传输作为HTTP服务器运行。这允许任何支持通过HTTP进行SSE连接的MCP客户端使用它。
以SSE模式启动服务器
要在SSE模式下启动服务器(HTTP服务器),请设置 PORT 环境变量:
# Set environment variables
export JIRA_URL="https://your-domain.atlassian.net"
export JIRA_EMAIL="your-email@example.com"
export JIRA_API_TOKEN="your-api-token-here"
# Start the server in SSE mode
PORT=3000 npm start
或者明确设置传输模式:
MCP_TRANSPORT=sse PORT=3000 npm start
在以下情况下,服务器将自动使用SSE模式:
PORT环境变量已设置MCP_TRANSPORT=sse已设置- stdin是一个TTY(交互式运行)
SSE端点
运行后,服务器将公开:
- SSE连接:
GET http://localhost:3000/sse-MCP通信的主SSE端点 - 消息端点:
POST http://localhost:3000/message-用于向服务器发送消息的端点 - 健康检查:
GET http://localhost:3000/health-服务器运行状况
连接MCP客户端
要将MCP客户端连接到SSE服务器,请使用SSE端点URL:
http://localhost:3000/sse
测试服务器
您可以测试服务器是否正在运行:
# Health check
curl http://localhost:3000/health
# Response: {"status":"ok","server":"jira-mcp-server"}
发展
服务器遵循模型上下文协议规范,支持stdio和SSE传输:
- 标准运输:用于生成进程的本地MCP客户端(例如Claude Desktop)
- SSE运输:适用于基于HTTP的MCP客户端和web应用程序
传输模式会根据执行上下文自动检测,但可以通过 MCP_TRANSPORT 环境变量(stdio 或 sse).
许可证
麻省理工学院