项目简介
'FastestMCP' 是一个功能强大的命令行工具和 Python 库,旨在极大简化 Model Context Protocol (MCP) 服务器和客户端的开发。它允许开发者通过简单的命令行指令或极少量 Python 代码,快速生成符合 MCP 架构、功能完备且生产就绪的 MCP 应用后端。这些后端能够托管并管理资源、注册并执行工具、定义和渲染 Prompt 模板,并支持多种传输协议,以标准化的方式向 LLM 客户端提供上下文信息和功能。
主要功能点
- 智能代码生成器: 通过简洁的命令行界面 (CLI),可以快速生成 MCP 服务器或客户端的样板代码,支持多种复杂度和定制选项。
- 多级别开发模式: 提供从零配置 (Level 1) 到完全控制 (Level 3/5) 的开发模式,开发者可根据项目需求选择最合适的抽象层次。
- 模块化组件支持: 能够按需生成和注册核心 MCP 组件,包括:
- 工具 (Tools):允许 LLM 客户端调用外部功能。
- 资源 (Resources):提供数据访问和管理能力。
- Prompt 模板 (Prompts):支持可定制的 LLM 交互模式。
- 通知 (Notifications) 和 订阅 (Subscriptions):实现服务器与客户端之间的实时通信。
- 多种传输协议: 支持通过标准输入输出 (StdIo)、HTTP 和 SSE (Server-Sent Events) 等多种协议与客户端通信,灵活适应部署环境。
- 灵活项目结构: 提供单文件 (Mono) 或结构化 (Structured) 的项目布局选项,方便项目的维护和扩展。
- 端到端开发: 不仅生成服务器,也支持生成遵循 MCP 架构的客户端代码,加速端到端应用开发。
安装步骤
- 确保 Python 环境: 您的系统需要安装 Python 3.10 或更高版本。
- 安装 FastestMCP: 打开终端或命令行工具,运行以下命令:
如果您已经安装了 'uv' 工具,也可以使用:pip install fastestmcpuv pip install fastestmcp
服务器配置示例
请注意: MCP 客户端通常通过配置文件来连接服务器,无需用户手动修改代码。以下提供的是一个 MCP 客户端连接由 'FastestMCP' 生成的 MCP 服务器时所需的 配置信息示例(JSON 格式),供您参考:
{ "mcpServers": { "my_mcp_server": { "type": "stdio", "command": "python", "args": ["path/to/your_generated_server/main.py"], "description": "连接到名为 'my_mcp_server' 的 MCP 服务器,通过标准输入输出协议通信。启动命令为 'python path/to/your_generated_server/main.py'。" } } }
- 'my_mcp_server': 您为服务器指定的名称。
- 'type': 服务器使用的传输协议,例如 'stdio' (标准输入输出)、'http' 或 'sse'。
- 'command': 启动 MCP 服务器所需的可执行程序或脚本(例如 'python')。
- 'args': 启动命令的参数列表(例如 'main.py' 是服务器的主入口文件)。
重要提示:
- 请根据您实际生成的服务器的名称和文件路径,修改 'my_mcp_server' 的键和 'args' 中的路径。
- 如果您的服务器使用 'http' 传输协议,配置信息会包含 'url' 字段,指向服务器的 HTTP 地址。
基本使用方法
-
生成一个 MCP 服务器: 通过命令行工具,您可以快速生成不同配置的 MCP 服务器。例如,生成一个名为 'my_mcp_server' 的基本服务器,包含 3 个工具、2 个资源和 1 个 Prompt,采用 'stdio' 传输和结构化项目布局,并输出到当前目录:
fastestmcp server --name my_mcp_server --tools 3 --resources 2 --prompts 1 --transport stdio --structure structured --output .执行成功后,当前目录下会创建一个名为 'my_mcp_server' 的文件夹。
-
运行生成的服务器: 进入 'my_mcp_server' 文件夹,并运行服务器的主入口文件:
cd my_mcp_server python main.py服务器将通过 'stdio' 协议启动并监听来自 MCP 客户端的请求。
-
生成一个 MCP 客户端: 您也可以生成一个 MCP 客户端,用于连接服务器并执行操作。例如,生成一个名为 'my_mcp_client' 的客户端,用于连接 'stdio' 服务器,并采用结构化项目布局,输出到当前目录:
fastestmcp client --name my_mcp_client --apis 2 --integrations 1 --transport stdio --structure structured --output .执行成功后,当前目录下会创建一个名为 'my_mcp_client' 的文件夹。
-
运行生成的客户端: 进入 'my_mcp_client' 文件夹,并运行客户端的主入口文件:
cd my_mcp_client python main.py客户端将尝试连接之前启动的服务器,并执行一些示例性的 MCP 协议操作。
信息
分类
开发者工具