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 客户端。