使用说明
项目简介
本项目 'mcp-for-devs' 提供了一个基于 Model Context Protocol (MCP) 的简单服务器和客户端示例,旨在帮助开发者快速理解和上手 MCP 协议。它展示了如何使用 FastMCP 框架构建 MCP 服务器,并提供了一个简单的 'hello_world' 工具作为示例。你可以通过 Docker Compose 快速启动和体验 MCP 客户端与服务器的交互过程。
主要功能点
- MCP 服务器实现: 使用 FastMCP 框架搭建,符合 MCP 协议规范。
- 工具注册与执行: 演示了如何在 MCP 服务器上注册和暴露工具 ('hello_world'),并允许客户端调用执行。
- 客户端交互: 提供 Python 客户端示例,展示如何连接 MCP 服务器、列出可用工具以及调用工具。
- Docker 容器化: 服务器和客户端均提供 Dockerfile,方便容器化部署和运行。
- SSE 传输协议: 使用 Server-Sent Events (SSE) 作为 MCP 客户端与服务器之间的通信协议。
安装步骤
- 安装 Docker 和 Docker Compose: 确保你的机器上已安装 Docker 和 Docker Compose。
- 克隆仓库: 将 'mcp-for-devs' 仓库克隆到本地:
git clone https://github.com/pvanand07/mcp-for-devs.git cd mcp-for-devs
服务器配置
本示例的 MCP 服务器已经通过 Docker Compose 进行了配置,开箱即用。对于 MCP 客户端而言,需要配置连接到 MCP 服务器的相关信息。以下是连接到本示例 MCP 服务器的客户端配置信息示例(JSON 格式):
{ "serverName": "fastmcp-sse-server", "transport": "sse", "url": "http://127.0.0.1:3001/sse" }
配置信息参数说明:
- 'serverName': MCP 服务器的名称,本示例中为 'fastmcp-sse-server',在 'server/fastmcp.py' 中定义。
- 'transport': 使用的传输协议,本示例中使用 'sse' (Server-Sent Events)。
- 'url': MCP 服务器的 SSE 端点 URL。由于 Docker Compose 配置了端口映射,客户端需要连接到主机的 '3001' 端口,并访问 '/sse' 路径。
注意: 实际的 MCP 客户端可能需要更详细的配置,例如身份验证信息等,具体取决于 MCP 服务器的实现和安全策略。本示例为了简化演示,没有启用身份验证。
基本使用方法
-
启动应用: 在仓库根目录下,使用 Docker Compose 启动服务器和客户端:
docker compose up --build此命令会构建 Docker 镜像并启动容器。服务器将在后台运行,客户端将连接到服务器并执行预设的操作。
-
查看客户端日志: 查看客户端容器的日志输出,了解客户端与服务器的交互过程:
docker compose logs client你将看到客户端连接到 MCP 服务器,列出可用的 'hello_world' 工具,并调用该工具的输出结果。
-
停止应用: 停止并移除容器:
docker compose down
通过以上步骤,你可以快速体验本示例 MCP 服务器的功能,并基于此进行进一步的开发和探索。
信息
分类
开发者工具