Databricks MCP 服务模板(mcp-server-hello-world)

使用说明(简明易懂,便于开发者快速上手)

  • 项目简介

    • 该仓库含有一个标准的 MCP 服务器实现模板,核心通过 FastMCP 将 MCP 的工具、资源等能力暴露为 HTTP 接口,便于 LLM 客户端通过 JSON-RPC 风格的 MCP 请求与服务器交互。
    • 服务器通过一个简单的工具注册模块 register_tools 的方式暴露工具,并提供一个 HTTP 应用与 MCP 路由并存的组合应用,便于部署在常见的服务器环境中。
  • 主要功能点

    • 工具注册与暴露:通过 server/tools.py 中的 load_tools 注册健康检查、获取当前用户等工具,供 MCP 客户端调用。
    • MCP HTTP 应用:将 MCP 服务转换为可通过 HTTP 访问的 MCP 路由集合,客户端可通过 /mcp 入口进行工具调用、资源读取等请求。
    • FastAPI 与 FastMCP 集成:结合 FastAPI 路由与 MCP 的专用路由,提供统一入口。
    • 简易鉴权与环境上下文捕获:通过中间件与上下文捕获实现请求头信息的上下文注入,为后续对接 Databricks App 提供基础能力。
    • 启动入口简单:通过 uv run custom-mcp-server 启动,端口及其它参数通过命令行传入。
    • 测试与示例:仓库中包含针对 MCP 的集成测试用例,便于验证工具注册和调用能力。
  • 安装步骤

    • 确保运行环境为 Python3,并安装本模板所需依赖(如 fastmcp、databricks-sdk 等,具体依赖在实际运行环境中安装)。
    • 将项目代码拉取到本地或服务器环境中。
    • 安装 Python 依赖后,在项目根目录执行启动命令。
  • 服务器配置(给 MCP 客户端使用的配置信息,JSON 格式,供客户端在连接时读取) { "server_name": "custom-mcp-server", "command": "uv", "args": ["run", "custom-mcp-server"] } 注:

    • server_name 对应本仓库的 MCP 服务器实例名称,启动入口为 server/main.py 中定义的入口。
    • command 与 args 为启动该 MCP 服务器的命令及参数,客户端在建立连接时不需要依赖该信息,但可用于自动化部署脚本中。
  • 基本使用方法

    • 启动服务器:在支持 Python 的环境中执行上述启动命令,服务器启动后将提供 /mcp 路由对外服务。
    • 客户端交互:使用 Databricks MCP 客户端对服务器进行 list_tools、call_tool 等操作,确保服务器已就绪并能正确返回 MCP 格式的响应。
    • 开发扩展:如需增加新的工具,只需在 server/tools.py 的 load_tools 中添加新的工具定义并在工具注册阶段暴露给 MCP 客户端。

服务器信息