使用说明
项目简介
Hummingbird MCP示例服务器是一个基础的MCP(Model Context Protocol)服务器实现,旨在演示如何使用Swift语言和相关库(Hummingbird, swift-sdk, SSEKit)构建一个符合MCP协议的服务端应用。它展示了MCP服务器的核心功能,例如资源托管、工具注册和Prompt模板定义,并通过SSE(Server-Sent Events)协议与MCP客户端进行通信。请注意,这是一个非常基础的示例,并非生产级别的推荐实现。
主要功能点
- 资源管理 (Resources): 虽然示例中可能未明确展示复杂的资源管理,但作为MCP服务器,它应支持资源的托管和访问,这是MCP的核心功能之一。
- 工具执行 (Tools): MCP服务器允许注册和执行工具,以便LLM客户端可以调用外部功能。此示例应包含工具注册和调用的基本框架。
- Prompt模板 (Prompts): 服务器应支持定义和渲染Prompt模板,以定制与LLM的交互方式。
- SSE传输协议: 使用SSEKit库实现基于Server-Sent Events的通信,允许客户端通过HTTP连接接收服务器推送的更新和响应。
- MCP Inspector兼容: 示例设计为可以与官方的MCP Inspector工具配合使用,方便开发者测试和调试MCP服务。
安装步骤
- 环境准备: 确保已安装 Swift 运行环境。
- 克隆仓库: 从 GitHub 克隆 'hummingbird-mcp' 仓库到本地。
git clone https://github.com/stallent/hummingbird-mcp.git cd hummingbird-mcp - 编译和运行: 使用 Swift Package Manager 构建并运行服务器。
swift run HummingbirdMCP
服务器配置
MCP客户端需要配置以下信息才能连接到此服务器。请注意,这里的配置是客户端需要的,服务器本身配置主要体现在代码中 'MCPServer.start()' 函数内部。
{ "serverName": "Hummingbird MCP Server", "transport": { "type": "sse", "uri": "http://127.0.0.1:8080/mcp/sse" }, "command": "swift", "args": [ "run", "HummingbirdMCP" ], "description": "Hummingbird MCP 示例服务器,使用 SSE 传输协议", "capabilities": [ "resources", "tools", "prompts" ] }
配置参数说明:
- 'serverName': 服务器的名称,可以自定义,例如 "Hummingbird MCP Server"。
- 'transport.type': 传输协议类型,这里是 "sse" (Server-Sent Events)。
- 'transport.uri': SSE 连接的 URI,默认为 'http://127.0.0.1:8080/mcp/sse',与示例代码配置一致。
- 'command': 启动服务器的命令,对于 Swift 项目,通常是 'swift'。
- 'args': 启动命令的参数,这里使用 'run HummingbirdMCP' 来运行可执行文件。
- 'description': 服务器的简要描述,方便客户端用户了解服务器用途。
- 'capabilities': 服务器声明支持的 MCP 功能,例如 "resources", "tools", "prompts"。客户端可以根据这些能力来决定如何与服务器交互。
基本使用方法
- 启动服务器: 在终端中运行 'swift run HummingbirdMCP' 命令启动服务器。
- 启动 MCP Inspector: 打开另一个终端,运行 'npx @modelcontextprotocol/inspector' 启动 MCP Inspector 工具。
- 配置 Inspector: 在 MCP Inspector 中,选择 "SSE" 传输类型,并配置连接 URL 为 'http://127.0.0.1:8080/mcp/sse'。
- 连接服务器: 点击 MCP Inspector 中的 "Connect" 按钮,连接到 Hummingbird MCP 示例服务器。
- 测试功能: 通过 MCP Inspector 界面,可以尝试浏览服务器提供的资源、调用注册的工具或测试 Prompt 模板功能(如果示例服务器实现了这些功能)。
信息
分类
开发者工具