Confluence搜索服务器

一个为Atlassian Confluence提供搜索功能的MCP服务器,使AI助手和其他MCP客户端能够从Confluence实例中搜索和检索信息。

  • by jonigl
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 jonigl/confluence-mcp-server

使用说明

Confluence MCP 服务器

一个模型上下文协议(MCP)服务器,为Atlassian Confluence提供搜索功能。该服务器使AI助手和其他MCP客户端能够从您的Confluence实例中搜索和检索信息。

特点/特性

  • Confluence 搜索使用Confluence查询语言(CQL)搜索页面
  • HTTP传输使用FastMCP的HTTP传输实现轻松集成
  • 云支持与Confluence云实例配合使用
  • 简单设置通过环境变量轻松配置
  • 可配置结果控制返回的搜索结果数量

先决条件

  • Python 3.10 或更高版本
  • 一个Confluence Cloud实例
  • Confluence API 凭证(电子邮件 + API 令牌)

设置

1. 安装依赖项

这个项目使用 uv 用于依赖管理:

uv sync

2. 配置凭据

创建一个 .env 项目根目录中的文件:

cp .env.example .env

编辑 .env 文件并添加您的Confluence凭据:

CONFLUENCE_URL=https://your-domain.atlassian.net
CONFLUENCE_USERNAME=your-email@example.com
CONFLUENCE_API_TOKEN=your-api-token
# Optional: Maximum number of search results to return (default: 10)
CONFLUENCE_MAX_RESULTS=10
# Optional: Network configuration for the MCP HTTP transport
# Port the server listens on (default: 3000)
MCP_PORT=3000
# Base path the MCP server is mounted on (default: /mcp)
MCP_PATH=/mcp
# Optional: Instructions for the MCP server. If omitted a default will be used.
MCP_INSTRUCTIONS=Search Confluence for pages matching query terms.

环境变量

变量 必需 默认值 描述
CONFLUENCE_URL 是 - 您的 Confluence 实例 URL
CONFLUENCE_USERNAME 是 - 您的Confluence电子邮件地址
CONFLUENCE_API_TOKEN 是的,您的Confluence API令牌
CONFLUENCE_MAX_RESULTS 编号 10 返回的搜索结果最大数量(1-100)
MCP_PORT 编号 3000 MCP HTTP 传输监听的端口
MCP_PATH 编号 /mcp MCP服务器挂载的基础路径(必须以...开头 /)
MCP_INSTRUCTIONS 编号 默认消息 传递给MCP服务器的指令,用于描述工具行为和结果格式化方式

如何获取API令牌

  1. 登录到 Atlassian账户设置
  2. 点击“创建API令牌”
  3. 给它贴上标签(例如,“MCP 服务器”)
  4. 将生成的令牌复制到您的 .env 文件

用法

启动服务器

使用默认设置运行服务器(端口3000,路径/mcp):

uv run confluence-mcp-server

或者直接运行:

uv run python main.py

服务器将在 http://0.0.0.0:3000/mcp 您可以通过环境变量自定义主机/端口/路径。例如,要在8080端口上运行并挂载到 /api/mcp:

MCP_PORT=8080 MCP_PATH=/api/mcp uv run python main.py

然后服务器将在 http://0.0.0.0:8080/api/mcp

可用工具

search_confluence

在 Confluence 中搜索与查询词匹配的页面。

参数:

  • query (字符串):在Confluence页面中搜索的关键词

示例:

{
  "query": "project documentation"
}

返回值: 一个格式化的匹配页面列表(最多 CONFLUENCE_MAX_RESULTS) 与:

  • 页面标题
  • 空格键
  • 页面类型
  • 页面的直接URL

与MCP客户端的集成

Claude Desktop(可译为“Claude桌面版”或保持原样,根据上下文判断是否需要具体翻译)

添加到您的Claude桌面配置中:

{
  "mcpServers": {
    "confluence": {
      "command": "uv",
      "args": ["run", "confluence-mcp-server"],
      "env": {
        "CONFLUENCE_URL": "https://your-domain.atlassian.net",
        "CONFLUENCE_USERNAME": "your-email@example.com",
        "CONFLUENCE_API_TOKEN": "your-api-token",
        "CONFLUENCE_MAX_RESULTS": "50"
      }
    }
  }
}

其他MCP客户端

连接到位于(某处的)HTTP 端点 http://localhost:3000/mcp

发展

测试

你可以使用MCP Inspector或任何HTTP客户端来测试服务器:

curl -X POST http://localhost:3000/mcp \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
      "name": "search_confluence",
      "arguments": {
        "query": "test"
      }
    }
  }'

许可证

麻省理工学院(MIT)

做出贡献

欢迎贡献!请随时提交拉取请求。