Model Context Protocol (MCP) 服务器用于 Atlassian 产品(Confluence 和 Jira)。此集成支持 Confluence 和 Jira 的云部署以及服务器/数据中心部署。
让您的AI助手执行以下操作:
https://github.com/user-attachments/assets/35303504-14c6-4ae4-913b-7c25ea511c3e
<details> <summary>Confluence 演示</summary>https://github.com/user-attachments/assets/7fe9c488-ad0c-4876-9b54-120b666bb785
</details>| 产品 | 部署类型 | 支持状态 |
|---|---|---|
| Confluence | 云 | ✅ 完全支持 |
| Confluence | 服务器/数据中心 | ✅ 支持(版本 6.0+) |
| Jira | 云 | ✅ 完全支持 |
| Jira | 服务器/数据中心 | ✅ 支持(版本 8.14+) |
MCP Atlassian 支持三种认证方法:
[!NOTE] OAuth 2.0 设置较为复杂,但提供了增强的安全功能。对于大多数用户来说,API Token 认证(方法A)更简单且足够使用。
http://localhost:8080/callback)docker run --rm -i \
-p 8080:8080 \
-v "${HOME}/.mcp-atlassian:/home/app/.mcp-atlassian" \
ghcr.io/sooperset/mcp-atlassian:latest --oauth-setup -v
Client ID、Secret、URI 和 Scope.env 或IDE配置中:
ATLASSIAN_OAUTH_CLOUD_ID(来自向导)ATLASSIAN_OAUTH_CLIENT_IDATLASSIAN_OAUTH_CLIENT_SECRETATLASSIAN_OAUTH_REDIRECT_URIATLASSIAN_OAUTH_SCOPE<details> <summary>替代方案:使用预存在的OAuth访问令牌(BYOT)</summary>[!IMPORTANT] 对于上述标准OAuth流程,请在您的范围中包含
offline_access(例如:read:jira-work write:jira-work offline_access)。这允许服务器自动刷新访问令牌。
如果您正在运行作为更大系统一部分的mcp-atlassian,该系统外部管理Atlassian OAuth 2.0访问令牌(例如,通过中央身份提供者或另一个应用程序),您可以直接为此MCP服务器提供访问令牌。这种方法绕过了交互式设置向导和服务器内部的令牌管理(包括刷新能力)。
要求:
ATLASSIAN_OAUTH_CLOUD_ID用于您的Atlassian实例。配置: 要使用此方法,请设置以下环境变量(或在启动服务器时使用相应的命令行标志):
ATLASSIAN_OAUTH_CLOUD_ID:您的Atlassian Cloud ID。(CLI:--oauth-cloud-id)ATLASSIAN_OAUTH_ACCESS_TOKEN:您预存在的OAuth 2.0访问令牌。(CLI:--oauth-access-token)重要注意事项:
ATLASSIAN_OAUTH_CLIENT_ID,ATLASSIAN_OAUTH_CLIENT_SECRET,ATLASSIAN_OAUTH_REDIRECT_URI,ATLASSIAN_OAUTH_SCOPE)不使用,并且在配置BYOT时可以省略。--oauth-setup向导不适用,不应用于此方法。-v "${HOME}/.mcp-atlassian:/home/app/.mcp-atlassian"),因为没有令牌由该服务器存储或管理。此选项在OAuth凭证管理集中化或由其他基础设施组件处理的情况下非常有用。
</details>[!TIP] 多云OAuth支持:如果您正在构建一个多租户应用程序,其中用户提供自己的OAuth令牌,请参阅多云OAuth支持部分以进行最小配置设置。
MCP Atlassian 作为Docker镜像分发。这是推荐的运行服务器的方式,特别是对于IDE集成。确保已安装Docker。
# 拉取预构建镜像
docker pull ghcr.io/sooperset/mcp-atlassian:latest
MCP Atlassian 设计为通过IDE集成与AI助手一起使用。
[!TIP] 对于Claude Desktop:定位并编辑配置文件:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json- Linux:
~/.config/Claude/claude_desktop_config.json对于Cursor:打开设置 → MCP → + 添加新的全局MCP服务器
有两种主要方式来配置Docker容器:
--env-file 标志(如折叠部分所示)[!NOTE] 常见环境变量包括:
CONFLUENCE_SPACES_FILTER:按空间键过滤(例如:"DEV,TEAM,DOC")JIRA_PROJECTS_FILTER:按项目键过滤(例如:"PROJ,DEV,SUPPORT")READ_ONLY_MODE:设置为 "true" 以禁用写操作MCP_VERBOSE:设置为 "true" 以获取更详细的日志MCP_LOGGING_STDOUT:设置为 "true" 以将日志输出到stdout而不是stderrENABLED_TOOLS:启用工具名称的逗号分隔列表(例如:"confluence_search,jira_get_issue")查看 .env.example 文件以获取所有可用选项。
方法1(直接传递变量):
{
"mcpServers": {
"mcp-atlassian": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e", "CONFLUENCE_URL",
"-e", "CONFLUENCE_USERNAME",
"-e", "CONFLUENCE_API_TOKEN",
"-e", "JIRA_URL",
"-e", "JIRA_USERNAME",
"-e", "JIRA_API_TOKEN",
"ghcr.io/sooperset/mcp-atlassian:latest"
],
"env": {
"CONFLUENCE_URL": "https://your-company.atlassian.net/wiki",
"CONFLUENCE_USERNAME": "your.email@company.com",
"CONFLUENCE_API_TOKEN": "your_confluence_api_token",
"JIRA_URL": "https://your-company.atlassian.net",
"JIRA_USERNAME": "your.email@company.com",
"JIRA_API_TOKEN": "your_jira_api_token"
}
}
}
}
<details>
<summary>替代方案:使用环境文件</summary>
{
"mcpServers": {
"mcp-atlassian": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"--env-file",
"/path/to/your/mcp-atlassian.env",
"ghcr.io/sooperset/mcp-atlassian:latest"
]
}
}
}
</details>
<details>
<summary>服务器/数据中心配置</summary>
对于服务器/数据中心部署,使用直接变量传递:
{
"mcpServers": {
"mcp-atlassian": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e", "CONFLUENCE_URL",
"-e", "CONFLUENCE_PERSONAL_TOKEN",
"-e", "CONFLUENCE_SSL_VERIFY",
"-e", "JIRA_URL",
"-e", "JIRA_PERSONAL_TOKEN",
"-e", "JIRA_SSL_VERIFY",
"ghcr.io/sooperset/mcp-atlassian:latest"
],
"env": {
"CONFLUENCE_URL": "https://confluence.your-company.com",
"CONFLUENCE_PERSONAL_TOKEN": "your_confluence_pat",
"CONFLUENCE_SSL_VERIFY": "false",
"JIRA_URL": "https://jira.your-company.com",
"JIRA_PERSONAL_TOKEN": "your_jira_pat",
"JIRA_SSL_VERIFY": "false"
}
}
}
}
</details> <details> <summary>OAuth 2.0 配置(仅限云)</summary> <a name="oauth-20-configuration-example-cloud-only"></a>[!NOTE] 只有在使用自签名证书时才将
CONFLUENCE_SSL_VERIFY和JIRA_SSL_VERIFY设置为 "false"。
这些示例展示了如何在IDE(如Cursor或Claude Desktop)中配置 mcp-atlassian,当使用OAuth 2.0进行Atlassian云时。
标准OAuth 2.0 流程示例(使用设置向导):
此配置适用于使用服务器内置OAuth客户端并已完成OAuth设置向导的情况。
{
"mcpServers": {
"mcp-atlassian": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-v", "<path_to_your_home>/.mcp-atlassian:/home/app/.mcp-atlassian",
"-e", "JIRA_URL",
"-e", "CONFLUENCE_URL",
"-e", "ATLASSIAN_OAUTH_CLIENT_ID",
"-e", "ATLASSIAN_OAUTH_CLIENT_SECRET",
"-e", "ATLASSIAN_OAUTH_REDIRECT_URI",
"-e", "ATLASSIAN_OAUTH_SCOPE",
"-e", "ATLASSIAN_OAUTH_CLOUD_ID",
"ghcr.io/sooperset/mcp-atlassian:latest"
],
"env": {
"JIRA_URL": "https://your-company.atlassian.net",
"CONFLUENCE_URL": "https://your-company.atlassian.net/wiki",
"ATLASSIAN_OAUTH_CLIENT_ID": "YOUR_OAUTH_APP_CLIENT_ID",
"ATLASSIAN_OAUTH_CLIENT_SECRET": "YOUR_OAUTH_APP_CLIENT_SECRET",
"ATLASSIAN_OAUTH_REDIRECT_URI": "http://localhost:8080/callback",
"ATLASSIAN_OAUTH_SCOPE": "read:jira-work write:jira-work read:confluence-content.all write:confluence-content offline_access",
"ATLASSIAN_OAUTH_CLOUD_ID": "YOUR_CLOUD_ID_FROM_SETUP_WIZARD"
}
}
}
}
[!NOTE]
- 对于标准流程:
ATLASSIAN_OAUTH_CLOUD_ID是从--oauth-setup向导输出中获得的,或者您知道的实例ID。- 其他
ATLASSIAN_OAUTH_*客户端变量来自您在Atlassian开发者控制台中的OAuth应用。- 您的云实例的
JIRA_URL和CONFLUENCE_URL总是需要的。- 卷挂载(
-v .../.mcp-atlassian:/home/app/.mcp-atlassian)对于持久保存向导获得的OAuth令牌至关重要,使自动刷新成为可能。
预存在访问令牌示例(BYOT - 自带令牌):
此配置适用于您提供自己外部管理的OAuth 2.0访问令牌的情况。
{
"mcpServers": {
"mcp-atlassian": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e", "JIRA_URL",
"-e", "CONFLUENCE_URL",
"-e", "ATLASSIAN_OAUTH_CLOUD_ID",
"-e", "ATLASSIAN_OAUTH_ACCESS_TOKEN",
"ghcr.io/sooperset/mcp-atlassian:latest"
],
"env": {
"JIRA_URL": "https://your-company.atlassian.net",
"CONFLUENCE_URL": "https://your-company.atlassian.net/wiki",
"ATLASSIAN_OAUTH_CLOUD_ID": "YOUR_KNOWN_CLOUD_ID",
"ATLASSIAN_OAUTH_ACCESS_TOKEN": "YOUR_PRE_EXISTING_OAUTH_ACCESS_TOKEN"
}
}
}
}
</details> <details> <summary>代理配置</summary>[!NOTE]
- 对于BYOT方法:
- 您主要需要
JIRA_URL,CONFLUENCE_URL,ATLASSIAN_OAUTH_CLOUD_ID和ATLASSIAN_OAUTH_ACCESS_TOKEN。- 标准OAuth客户端变量(
ATLASSIAN_OAUTH_CLIENT_ID,CLIENT_SECRET,REDIRECT_URI,SCOPE)不使用。- 令牌生命周期(例如,在令牌过期前刷新令牌并重新启动mcp-atlassian)是您的责任,因为服务器不会刷新BYOT令牌。
MCP Atlassian 支持通过标准HTTP/HTTPS/SOCKS代理路由API请求。使用环境变量进行配置:
HTTP_PROXY,HTTPS_PROXY,NO_PROXY,SOCKS_PROXY。JIRA_HTTPS_PROXY,CONFLUENCE_NO_PROXY)。将相关的代理变量添加到您的MCP配置的 args(使用 -e)和 env 部分:
{
"mcpServers": {
"mcp-atlassian": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e", "... 已存在的Confluence/Jira变量",
"-e", "HTTP_PROXY",
"-e", "HTTPS_PROXY",
"-e", "NO_PROXY",
"ghcr.io/sooperset/mcp-atlassian:latest"
],
"env": {
"... 已存在的Confluence/Jira变量": "...",
"HTTP_PROXY": "http://proxy.internal:8080",
"HTTPS_PROXY": "http://proxy.internal:8080",
"NO_PROXY": "localhost,.your-company.com"
}
}
}
}
代理URL中的凭据在日志中被屏蔽。如果设置了 NO_PROXY,则匹配主机的请求将被尊重。
MCP Atlassian 支持向所有API请求添加自定义HTTP头部。此功能在企业环境中特别有用,其中需要额外的头部来进行安全、认证或路由目的。
自定义头部使用逗号分隔的键值对