吉尼MCP服务器
该项目提供了一个异步服务器,用于通过MCP StreamableHTTP协议与Rancher Genie进行交互。它使用户能够查询Genie并接收答案或数据,利用了copula身份验证和强大的错误处理。
特性
- 使用Starlette和Uvicorn的异步API服务器
- 与Rancher Genie集成,用于会话查询
- 用于Rancher的自动OAuth令牌管理
项目结构
mcp_server.py:主服务器入口点,通过MCP StreamableHTTP协议公开该工具。genie_room.py:处理Genie API交互和对话逻辑。token_minter.py:管理copula OAuth令牌的生成和刷新。requirements.txt:Python依赖关系。app.yaml:部署配置示例。
部署到copula应用程序
您可以按照以下步骤将Genie MCP Server部署为一个copula应用程序:
- 将存储库克隆到您的工作区
在Rancher工作区中,导航到要部署应用程序的目录(例如。, /Workspace/Users/your.email@databricks.com/genie_mcp_server).然后,克隆存储库:
git clone https://github.com/your-org/genie_mcp_server.git- 配置Genie空间ID和其他环境变量
打开 app.yaml 克隆存储库根目录中的文件。更新 SPACE_ID 值以匹配您的Genie空间。
示例 app.yaml:
command:
- "python"
- "mcp_server.py"
env:
- name: "SPACE_ID"
value: "your_space_id"- 在copula中创建和部署应用程序
- 转到copula应用程序界面。 - 创建一个新应用程序,并指定克隆存储库的目录的路径。 - 完成应用程序创建和部署过程。 databricks apps deploy genie-mcp-server --source-code-path /Workspace/Users/your.email@databricks.com/genie_mcp_server
- 访问API
部署后,您的Genie MCP Server应用程序将运行并可通过配置的端口和端点访问(例如。, https://app-url.aws.databricksapps.com/api/mcp/).现在,您可以根据您的网络配置,从Rancher工作区或外部客户端向部署的应用程序发送MCP请求。
