这是一个基于 TypeScript 的 MCP 服务器,主要用于与 Confluence 进行交互。它提供了执行 CQL 查询搜索页面以及获取 Confluence 页面内容等实用工具。
Confluence 通信服务器 MCP 服务器提供了一系列工具来实现与 Confluence 的交互,下面为你介绍其主要功能及使用方式。
execute_cql_search:用于运行 CQL 查询以搜索 Confluence 页面。get_page_content:用于获取 Confluence 页面的内容。npm install
npm run build
npm run watch
要与 Claude Desktop 一起使用,请添加服务器配置:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%/Claude/claude_desktop_config.json配置文件内容如下:
{
"mcpServers": {
"Confluence communication server": {
"command": "node",
"args": [
"/PROJECT_PATH/build/index.js"
],
"env": {
"CONFLUENCE_URL": "https://XXXXXXXX.atlassian.net/wiki",
"CONFLUENCE_API_MAIL": "Your email",
"CONFLUENCE_API_KEY": "KEY_FROM: https://id.atlassian.com/manage-profile/security/api-tokens"
}
}
}
}
由于 MCP 服务器通过 stdio 通信,调试可能具有挑战性。我们建议使用 MCP Inspector,它作为包脚本可用,运行以下命令:
npm run inspector
Inspector 将提供一个访问调试工具的 URL,你可以在浏览器中打开该 URL 进行调试。
以下是使用 execute_cql_search 和 get_page_content 工具的示例:
// 示例代码,假设已经有合适的导入和初始化
// 调用 execute_cql_search 工具
const searchResult = execute_cql_search('your_cql_query', 20);
console.log(searchResult);
// 调用 get_page_content 工具
const pageContent = get_page_content('your_page_id');
console.log(pageContent);
在实际项目中,你可以根据业务需求将这些工具集成到更复杂的逻辑中。例如,在获取搜索结果后,对结果进行筛选和处理:
// 示例代码,假设已经有合适的导入和初始化
const searchResult = execute_cql_search('your_cql_query', 30);
const filteredResult = searchResult.filter(item => item.someCondition);
const pageContents = [];
for (const item of filteredResult) {
const pageContent = get_page_content(item.pageId);
pageContents.push(pageContent);
}
console.log(pageContents);