使用说明
Wiki MCP服务器
用于Confluence wiki集成的模型上下文协议(MCP)服务器,部署在copula Apps上。
特性
- 🔍 搜索汇流 -按查询文本搜索wiki页面
- 📄 获取页面内容 -从Confluence页面检索完整内容
- 📚 列出空间 -浏览可用的Confluence空间
先决条件
- 启用了应用程序的copula工作区
- 具有API访问权限的汇流帐户
- 已配置copula命令行界面
- Python 3.11+
设置
1.克隆存储库
git clone <your-repo-url>
cd wiki_mcp_server
2.配置Confluence凭据
复制模板文件:
cp app.yaml.template app.yaml
更新 app.yaml 使用您的实际凭据:
- 汇流URL:您的Confluence实例URL(例如。,
https://your-company.atlassian.net) - conference_邮件:您的Confluence/Jira电子邮件地址
- CONFLUENCE_API_TOKEN配置文件:生成时间https://id.atlassian.com/manage-profile/security/api-tokens
3.配置部署设置(可选)
部署脚本使用合理的默认值,但可以使用环境变量进行自定义:
默认行为
默认情况下,脚本将:
- 自动检测您的copula用户名
- 将文件同步到:
/Workspace/Users/<your-username>/mcp_servers/wiki_mcp_server - 使用应用程序名称进行部署:
mcp-wiki-server
自定义应用程序名称
export APP_NAME="my-custom-wiki-mcp-server"
自定义工作区路径
要更改文件在Rancher工作区中的同步位置,请执行以下操作:
# Option 1: Set the full workspace path
export WORKSPACE_PATH="/Workspace/Users/your.email@company.com/custom_folder/wiki_mcp"
# Option 2: Set just the base path (will append username and default subfolder)
export WORKSPACE_BASE_PATH="/Workspace/Shared/mcp_servers"
示例:
# Sync to a specific personal folder
export WORKSPACE_PATH="/Workspace/Users/kunal.gaurav@databricks.com/Generative_AI/mcp/Wiki_mcp_server"
./deployment.sh
# Sync to a shared team folder
export WORKSPACE_PATH="/Workspace/Shared/team_projects/wiki_mcp"
./deployment.sh
# Use a custom app name
export APP_NAME="prod-wiki-mcp-server"
./deployment.sh
使用配置文件(推荐)
创建持久配置文件:
# Copy the example config
cp deployment-config.example.sh deployment-config.sh
# Edit with your settings
nano deployment-config.sh
# Source and deploy
source deployment-config.sh && ./deployment.sh
直接编辑deployment.sh
您还可以编辑 deployment.sh 并更改顶部的默认值:
# Edit these lines in deployment.sh
APP_NAME="${APP_NAME:-mcp-wiki-server}"
WORKSPACE_BASE_PATH="${WORKSPACE_BASE_PATH:-/Workspace/Users}"
4.部署到copula应用程序
使脚本可执行并运行:
chmod +x deployment.sh
./deployment.sh
脚本将:
- 自动检测您的copula用户名
- 显示配置(应用程序名称、工作区路径)
- 要求确认
- 将代码同步到copula工作区
- 创建copula应用程序(如果它不存在)
- 使用您的Confluence凭据进行部署
5.测试部署
测试脚本会自动检测您的应用程序名称和URL:
# Install test dependencies (first time only)
uv pip install databricks-mcp databricks-sdk
# Run tests (auto-detects app name from deployment.sh)
python test.py
# Or specify a custom app name
python test.py --app-name my-custom-app
测试将:
- 自动检测来自的应用程序名称
deployment.sh - 查询AppDCLI以获取应用程序URL
- 测试所有3个MCP工具(列出空间、搜索、获取内容)
可用的MCP工具
1. search_confluence
按查询文本搜索Confluence页面。
参数:
query(必填):搜索查询文本space_key(可选):将搜索限制在特定空间limit(可选):最大结果(默认值:10)
例子:
result = mcp_client.call_tool(
"search_confluence",
{"query": "API documentation", "limit": 5}
)
2. get_wiki_content
从Confluence页面获取完整内容。
参数:
page_id(必填):汇流页ID或URLformat(可选):“存储”(HTML)或“视图”(渲染)。默认值:“存储”
例子:
result = mcp_client.call_tool(
"get_wiki_content",
{"page_id": "123456789", "format": "storage"}
)
3. list_confluence_spaces
列出所有可用的汇流空间。
参数:
limit(可选):返回的最大空间(默认值:25)
例子:
result = mcp_client.call_tool(
"list_confluence_spaces",
{"limit": 10}
)
部署快速参考
环境变量
| 变量 | 描述 | 默认值 |
|---|---|---|
APP_NAME |
您的copula应用程序的名称 | mcp-wiki-server |
WORKSPACE_PATH |
copula工作区中的完整路径 | /Workspace/Users/<username>/mcp_servers/wiki_mcp_server |
WORKSPACE_BASE_PATH |
基本工作区路径(自动附加用户/文件夹) | /Workspace/Users |
常见部署命令
# Standard deployment (uses defaults)
./deployment.sh
# Deploy with custom app name
APP_NAME="my-wiki-mcp" ./deployment.sh
# Deploy to specific workspace path
WORKSPACE_PATH="/Workspace/Users/you@company.com/my_apps/wiki_mcp" ./deployment.sh
# Deploy to shared folder
WORKSPACE_PATH="/Workspace/Shared/team_mcps/wiki_server" ./deployment.sh
# Check app status
databricks apps get mcp-wiki-server
# View app logs
databricks apps logs mcp-wiki-server
# Redeploy after changes
./deployment.sh
# Delete the app
databricks apps delete mcp-wiki-server
测试命令
# Run tests (auto-detects app from deployment.sh)
python test.py
# Test specific app
python test.py --app-name my-custom-app
# One-liner: Deploy and test
./deployment.sh && python test.py
# Get just the app URL
databricks apps get mcp-wiki-server --output json | jq -r '.url'
工作区路径示例
个人工作空间:
/Workspace/Users/kunal.gaurav@databricks.com/mcp_servers/wiki_mcp_server
/Workspace/Users/kunal.gaurav@databricks.com/Generative_AI/mcp/Wiki_mcp_server
/Workspace/Users/kunal.gaurav@databricks.com/projects/confluence_mcp
共享工作区:
/Workspace/Shared/mcp_servers/wiki
/Workspace/Shared/team_apps/confluence_integration
/Workspace/Shared/ai_tools/wiki_mcp
发展
局部测试
安装依赖项:
uv pip install -r requirements.txt
本地测试汇流连接:
python confluence_cred.py
项目结构
wiki_mcp_server/
├── app.py # Main MCP server implementation
├── main.py # Entry point
├── app.yaml # Databricks App config (not in Git)
├── app.yaml.template # Template for app.yaml
├── requirements.txt # Python dependencies
├── deployment.sh # Deployment script
├── test.py # Test client
└── README.md # This file
安全说明
⚠️ 重要:从不承诺 app.yaml 或将具有实际凭据的文件导入Git!
以下文件已从Git中排除(请参见 .gitignore):
app.yaml-包含您的实际凭据confluence_cred.py-带有凭据的本地测试脚本.env-环境变量
仅模板文件(app.yaml.template, .env.template)应该承诺。
故障排除
403禁止的错误
如果应用程序尝试访问Confluence时出现403个错误:
- 验证凭据 -确保您的API令牌有效
- 检查IP分配列表 -您的Confluence实例可能会通过IP限制访问
- 从copula笔记本进行测试 -验证ViewModel是否可以访问Confluence
- 联系IT -您可能需要允许列出copula应用程序的IP范围
应用程序无法启动
检查部署日志:
databricks apps logs <app-name>
常见问题:
- 缺少或无效的环境变量
- 依赖项安装不正确
- 端口冲突
许可证
[您的许可证在这里]
贡献
[您的投稿指南请点击此处]