自定义MCP服务器部署工具

该工具用于在Databricks Apps上创建和启动自定义MCP服务器,支持本地开发和云端部署。

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

使用说明

示例 - 在Databricks应用程序上自定义MCP服务器

此示例展示了如何在Databricks Apps上创建并启动一个自定义代理。 请注意,此示例未使用任何Databricks SDK,并且独立于 mcp 在该仓库的根目录中安装包。

先决条件

  • 已安装并配置了Databricks CLI
  • uv

本地开发

  • 跑 uv 同步:
uv sync
  • 在本地启动服务器。更改将触发重新加载:
uvicorn custom_server.app:app --reload

在Databricks Apps上部署自定义MCP服务器

在Databricks Apps上部署服务器有两种方法:使用 databricks apps 使用CLI或 databricks bundle CLI(命令行界面)。根据您的偏好,您可以选择任意一种方法。

两种方法都需要先配置Databricks认证:

export DATABRICKS_CONFIG_PROFILE=<your-profile-name> # e.g. custom-mcp-server
databricks auth login --profile "$DATABRICKS_CONFIG_PROFILE"

使用 databricks apps CLI(Command Line Interface)

使用(某种方法或工具)来部署服务器 databricks apps CLI(命令行界面),请按照以下步骤操作:

创建一个Databricks应用程序来托管您的MCP服务器:

databricks apps create mcp-custom-server

将源代码上传到Databricks并部署应用程序:

DATABRICKS_USERNAME=$(databricks current-user me | jq -r .userName)
databricks sync . "/Users/$DATABRICKS_USERNAME/my-mcp-server"
databricks apps deploy mcp-custom-server --source-code-path "/Workspace/Users/$DATABRICKS_USERNAME/my-mcp-server"

使用 databricks bundle CLI(Command Line Interface,命令行界面)

使用(指定的方法或工具)部署服务器 databricks bundle CLI,请按照以下步骤操作

更新 app.yaml 在本目录中使用以下命令的文件:

command: ["uvicorn", "custom_server.app:app"]
  • 在此目录中,运行以下命令以在Databricks Apps上部署并运行MCP服务器:
uv build --wheel
databricks bundle deploy
databricks bundle run custom-mcp-server

连接到MCP服务器

要连接到MCP服务器,请使用 Streamable HTTP 使用以下URL进行传输:

https://your-app-url.usually.ends.with.databricksapps.com/mcp/

为了进行身份验证,您可以使用 Bearer 从您的 Databricks 配置文件中获取令牌。 你可以通过运行以下命令来获取令牌:

databricks auth token -p <name-of-your-profile>

请注意,URL 应以 /mcp/ (包括末尾的斜杠),因为服务器需要这个才能正常工作。