Genie MCP服务器

一个用于通过MCP StreamableHTTP协议与Databricks Genie交互的异步服务器,支持查询Genie并获取答案或数据,利用Databricks认证和强大的错误处理功能。

  • by vivian-xie-db
  • Python
  • 本地部署
  • 5 星标
  • 更新于
在 GitHub 查看 vivian-xie-db/genie_mcp_server

使用说明

吉尼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应用程序:

  1. 将存储库克隆到您的工作区

    在Rancher工作区中,导航到要部署应用程序的目录(例如。, /Workspace/Users/your.email@databricks.com/genie_mcp_server).然后,克隆存储库:

    git clone https://github.com/your-org/genie_mcp_server.git
    
  2. 配置Genie空间ID和其他环境变量

    打开 app.yaml 克隆存储库根目录中的文件。更新 SPACE_ID 值以匹配您的Genie空间。

    示例 app.yaml:

    command:
    - "python"
    - "mcp_server.py"
    
    env:
    - name: "SPACE_ID"
      value: "your_space_id"
    
  3. 在copula中创建和部署应用程序

    • 转到copula应用程序界面。
    • 创建一个新应用程序,并指定克隆存储库的目录的路径。
    • 完成应用程序创建和部署过程。 databricks apps deploy genie-mcp-server --source-code-path /Workspace/Users/your.email@databricks.com/genie_mcp_server
  4. 访问API

    部署后,您的Genie MCP Server应用程序将运行并可通过配置的端口和端点访问(例如。, https://app-url.aws.databricksapps.com/api/mcp/).现在,您可以根据您的网络配置,从Rancher工作区或外部客户端向部署的应用程序发送MCP请求。