关于 Atlassian Confluence Data Center MCP Server (Go)
面向使用 Atlassian Confluence Data Center 的团队的 Go MCP 服务,支持 CQL 搜索和内容读取,也可创建及更新页面与博客文章。
主要功能
- 01使用 CQL 搜索内容
- 02按 ID 获取内容
- 03创建页面和博客文章
- 04更新现有内容
- 05列出并搜索空间
适用场景
- 01通过 CQL 查询查找 Confluence 页面
- 02使用内容 ID 获取页面
- 03创建或修改页面及博客文章
- 04按名称或描述浏览空间
MCP 相关
向 MCP 客户端提供 Confluence Data Center 搜索、读取、内容管理和空间列表工具,并使用 Bearer Token 进行身份验证。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Atlassian Confluence Data Center MCP 服务(Go)
这是一个使用 Go 实现的 Model Context Protocol(MCP)服务,用于与 Atlassian Confluence Data Center 版本交互。此服务支持 AI 助手和其他 MCP 客户端以编程方式读取、搜索、创建和更新 Confluence 内容。
注意:这是原 TypeScript 实现的 Go 重写版本。特别感谢 b1ff/atlassian-dc-mcp 提供启发本项目的原始实现。
功能
- 搜索和检索:使用 CQL(Confluence 查询语言)搜索内容,并通过 ID 检索内容
- 内容管理:创建页面和博客文章,更新现有内容
- 空间管理:列出和搜索 Confluence 空间
- 安全身份验证:支持 Bearer 令牌身份验证
- 高性能:使用 Go 构建,快速高效
- 零依赖:外部依赖极少,并尽可能使用标准库
工具
此服务提供以下 MCP 工具:
confluence_get_content
通过 ID 从 Confluence Data Center 版本实例中获取 Confluence 内容。
参数:
contentId(string,必填):Confluence Data Center 内容 IDexpand(string,可选):以逗号分隔的要展开的属性列表
confluence_search_content
使用 CQL 在 Confluence Data Center 版本实例中搜索内容。
参数:
cql(string,必填):用于 Confluence Data Center 的 Confluence 查询语言(CQL)搜索字符串limit(number,可选):要返回的最大结果数(默认值:25)start(number,可选):要返回的结果的起始索引expand(string,可选):以逗号分隔的要展开的属性列表
confluence_create_content
在 Confluence Data Center 版本实例中创建内容。
参数:
title(string,必填):新内容的标题spaceKey(string,必填):要创建内容的空间键content(string,必填):采用 Confluence 存储格式的页面内容type(string,可选):内容类型(页面或博客文章)parentId(string,可选):父内容的 ID
confluence_update_content
更新 Confluence Data Center 版本实例中的现有内容。
参数:
contentId(string,必填):要更新的内容 IDversion(number,可选):新版本号(默认为当前版本号 + 1)title(string,可选):内容的新标题content(string,可选):采用存储格式的新内容versionComment(string,可选):新版本的备注
confluence_list_spaces
列出并搜索 Confluence Data Center 版本实例中的空间。
参数:
searchText(string,可选):要在空间名称或描述中搜索的文本(省略时返回所有空间)limit(number,可选):要返回的最大空间数start(number,可选):要返回的结果的起始索引expand(string,可选):以逗号分隔的要展开的属性列表
使用模式(MCP 配置)
如果不确定该选择哪个选项:
- 如果你不使用 Go,请使用预构建二进制文件
- 如果你是 Go 开发者,请使用 go install
此 MCP 服务支持三种使用方式。 请根据你希望的安装和运行方式选择一种。
选项 1:使用预构建二进制文件(推荐非 Go 用户)
安装
从
Releases 页面
下载适合的二进制文件,并将其放到系统中的某个位置(例如 /usr/local/bin)。
chmod +x atlassian-confluence-dc-go-mcp
MCP 配置
{
"mcpServers": {
"confluence": {
"command": "/usr/local/bin/atlassian-confluence-dc-go-mcp",
"env": {
"CONFLUENCE_API_TOKEN": "your-api-token",
"CONFLUENCE_BASE_URL": "https://confluence.example.com"
}
}
}
}
选项 2:使用 go install(推荐 Go 用户使用)
安装
go install github.com/anudeepd/atlassian-confluence-dc-go-mcp@latest
确保 $GOBIN(或 ~/go/bin)已加入 PATH。
export PATH="$HOME/go/bin:$PATH"
MCP 配置
由于二进制文件已位于 PATH 中,只需使用命令名称:
{
"mcpServers": {
"confluence": {
"command": "atlassian-confluence-dc-go-mcp",
"env": {
"CONFLUENCE_API_TOKEN": "your-api-token",
"CONFLUENCE_BASE_URL": "https://confluence.example.com"
}
}
}
}
选项 3:从源代码运行(开发 / 贡献)
直接运行
git clone https://github.com/anudeepd/atlassian-confluence-dc-go-mcp.git
cd atlassian-confluence-dc-go-mcp
go run .
MCP 配置(不推荐用于生产环境)
{
"mcpServers": {
"confluence-dev": {
"command": "go",
"args": ["run", "."],
"cwd": "/path/to/atlassian-confluence-dc-go-mcp",
"env": {
"CONFLUENCE_API_TOKEN": "your-api-token",
"CONFLUENCE_BASE_URL": "https://confluence.example.com"
}
}
}
}
配置
服务需要设置以下环境变量:
必需变量
CONFLUENCE_API_TOKEN:Confluence API 令牌(Bearer 令牌)CONFLUENCE_BASE_URL:Confluence 实例的基本 URL(例如https://confluence.example.com)
替代 URL 变量
也可以使用以下任一变量替代 CONFLUENCE_BASE_URL:
CONFLUENCE_API_BASE_PATH:完整的 API 路径CONFLUENCE_HOST:仅主机名(会自动添加https://前缀)
如果基本 URL 中没有 /rest/api,服务会自动添加该路径。
配置示例
export CONFLUENCE_API_TOKEN="your-api-token-here"
export CONFLUENCE_BASE_URL="https://confluence.example.com"
开发
运行测试
# Run all tests
go test -v
# Run tests with coverage
go test -v -cover
# Generate coverage report
go test -coverprofile=coverage.out
go tool cover -html=coverage.out
构建
# Build for current platform
go build .
# Build for multiple platforms
./build.sh
build.sh 脚本会为以下平台创建二进制文件:
- Linux(amd64、arm64)
- macOS(amd64、arm64)
- Windows(amd64、arm64)
使用较旧版本的 Go 构建
如果你使用的是较旧版本的 Go(例如 1.24)且无法升级,可以修改 go.mod 文件:
-
克隆仓库:
git clone https://github.com/anudeepd/atlassian-confluence-dc-go-mcp.git cd atlassian-confluence-dc-go-mcp -
编辑
go.mod中的 Go 版本:go mod edit -go=1.24 -
整理模块:
go mod tidy -
构建项目:
go build .
项目结构
.
├── main.go # Main server implementation
├── main_test.go # Comprehensive test suite
├── go.mod # Go module dependencies
├── go.sum # Dependency checksums
├── build.sh # Multi-platform build script
└── README.md # This file
API 参考
Confluence REST API
此服务使用 Confluence Data Center REST API v1。有关 API 端点和 CQL 语法的更多信息,请参阅:
贡献
欢迎贡献!欢迎提交 Pull Request。
- Fork 此仓库
- 创建功能分支(
git checkout -b feature/amazing-feature) - 提交更改(
git commit -m 'Add some amazing feature') - 推送到该分支(
git push origin feature/amazing-feature) - 创建 Pull Request
许可证
本项目采用 MIT License 授权,详情请参阅 LICENSE 文件。
致谢
- 原始 TypeScript 实现:b1ff/atlassian-dc-mcp
- MCP Go SDK:mark3labs/mcp-go
- Model Context Protocol:Anthropic MCP
支持
如有问题、疑问或贡献,请在 GitHub 上提交 issue。
更新日志
v1.0.2
- 添加了使用较旧版本 Go 构建的文档
v1.0.1 [已弃用]
- 修复了
go.mod中错误的模块路径 - 注意:此版本因配置问题已弃用。请使用 v1.0.2 或更高版本。
v1.0.0(初始版本)[已弃用]
- 将 TypeScript 实现完整改写为 Go
- 支持所有 Confluence 核心操作
- 支持多平台构建
- 符合 MCP 协议
- 注意:此版本因模块配置错误已弃用。请使用 v1.0.2 或更高版本。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。