课 1
2025-07-03 06:56
FastMCP 和模型上下文协议简介
FastMCP 和模型上下文协议介绍
什么是模型上下文协议 (MCP)?
模型上下文协议 (MCP) 是一种革命性的标准化方法,旨在为大型语言模型 (LLM) 提供上下文和工具。MCP 通常被称为“AI 的 USB-C 接口”,它为 LLM 连接外部资源和功能提供了一个统一的界面。
您可以将 MCP 视为专为 LLM 交互设计的 API。MCP 服务器可以:
- 通过资源公开数据(类似于用于加载信息的 GET 端点)
- 通过工具提供功能(类似于用于执行操作的 POST 端点)
- 通过提示定义交互模式(LLM 对话的可重用模板)
- 安全高效地管理连接
为什么选择 FastMCP?
从头开始构建 MCP 服务器需要大量的样板代码——服务器设置、协议处理程序、内容类型管理和错误处理。FastMCP 通过提供一个高级的 Pythonic 接口消除了这种复杂性,让您可以专注于构建出色的功能。
FastMCP 2.0 是当前积极维护的版本,它远远超出了基本的协议实现。它提供:
🚀 快速开发:高级接口意味着更少的代码和更快的开发速度 🍀 简单 API:只需最少的样板代码即可构建 MCP 服务器 🐍 Pythonic 设计:对 Python 开发者而言手感自然 🔍 完整平台:从开发到生产的全面工具包
FastMCP 特性
核心能力
- 轻松创建服务器:只需几行代码即可创建 MCP 服务器
- 基于装饰器的设计:使用简单的装饰器将函数转换为 MCP 工具
- 支持多种传输方式:STDIO、HTTP 和 SSE 传输
- 类型安全:通过 Python 类型提示自动生成 schema
- 异步支持:完全支持同步和异步函数
高级特性
- 服务器组合:将多个服务器组合挂载
- 代理服务器:为现有 MCP 服务创建中间服务器
- 身份验证:内置安全性,适用于生产部署
- OpenAPI 集成:从现有 REST API 生成服务器
- 客户端库:全面的客户端支持,用于测试和集成
一个简单示例
来看看使用 FastMCP 创建一个基本 MCP 服务器有多容易:
from fastmcp import FastMCP
# 创建一个服务器实例
mcp = FastMCP("演示服务器 🚀")
@mcp.tool
def add_numbers(a: int, b: int) -> int:
"""将两个数字相加。"""
return a + b
@mcp.tool
def greet_user(name: str) -> str:
"""向用户问好。"""
return f"你好,{name}!欢迎来到 FastMCP!"
if __name__ == "__main__":
mcp.run()
就是这样!这会创建一个功能齐全的 MCP 服务器,其中包含两个可供任何 MCP 客户端调用的工具。
后续步骤
在接下来的章节中,我们将深入探讨: - 设置您的 FastMCP 开发环境 - 创建复杂的工具和资源 - 构建生产就绪的服务器 - 与 Claude Code 和其他 MCP 客户端集成 - 高级模式和最佳实践
FastMCP 让 Python 开发者能够轻松使用强大的模型上下文协议,从而以最少的精力构建复杂的 AI 驱动应用程序。