FastMCP In Action跑通第一个MCP之跟学python版

顾名思义,FastMCP就是提供MCP快速实现的框架,都MCP了, 我们也要跟上。

1.什么是MCP

模型上下文协议Model Context Protocol (MCP)是一种为您的LLM提供上下文和工具的新标准化方式,FastMCP使构建MCP服务器和客户端变得简单直观。创建工具,公开资源,定义提示,并使用干净的Python代码连接组件。

2.MCP提供哪些服务

  • 越来越多的预建集成列表,您的LLM可以直接插入其中
  • 为人工智能应用程序构建自定义集成的标准化方法
  • 每个人都可以自由实施和使用的开放协议
  • 在不同应用程序之间进行更改并带您的上下文的灵活性

3.MCP优点

  • 🚀快速:高级界面意味着更少的代码和更快的开发
  • 🍀简单:用最少的模板构建MCP服务器
  • 🐍Pythonic:对Python开发人员来说感觉很自然
  • 🔍完成:一个适用于所有MCP用例的综合平台,从开发到生产

4.MCP架构

  • MCP主机:协调和管理一个或多个MCP客户端的人工智能应用程序
  • MCP 客户端:维持与 MCP 服务器的连接并从 MCP 服务器获取上下文以供 MCP 主机使用的组件
  • MCP服务器:一个为MCP客户端提供上下文的程序

5.FastMCP 安装

顾名思义,FastMCP就是提供MCP快速实现的框架,这就是我们要跟进学习的。 github地址: github.com/jlowin/fast...

  • 安装要求: python版本>=3.10
  • 安装
bash 复制代码
# 可以用uv,也可以不用
uv pip install fastmcp
sql 复制代码
Uninstalling pip-25.1.1:
    Successfully uninstalled pip-25.1.1
Successfully installed pip-25.2
(cp313) livingbody@LivingbodydeMacBook-Pro workspace % fastmcp --version
2.11.2

6.FastMCP In Action

6.1 FastMCP Server

python 复制代码
from fastmcp import FastMCP
​
mcp = FastMCP("My MCP Server")
​
@mcp.tool
def greet(name: str) -> str:
   return f"Hello, {name}!"
​
if __name__ == "__main__":
   mcp.run()
arduino 复制代码
fastmcp run myserver.py

6.2 FastMCP Client

python 复制代码
import asyncio
from fastmcp import Client
​
client = Client("mcp_test.py")
​
async def call_tool(name: str):
   async with client:
       result = await client.call_tool("greet", {"name": name})
       print(result)
​
asyncio.run(call_tool("Livingbody"))
复制代码
python myclient.py

7. FastMCP基本组件

基本组件有3个:

  • tools 工具
  • resources 资源
  • prompts 提示词
相关推荐
猿究院-陆昱泽16 分钟前
Redis 五大核心数据结构知识点梳理
redis·后端·中间件
yuriy.wang43 分钟前
Spring IOC源码篇五 核心方法obtainFreshBeanFactory.doLoadBeanDefinitions
java·后端·spring
咖啡教室3 小时前
程序员应该掌握的网络命令telnet、ping和curl
运维·后端
你的人类朋友3 小时前
Let‘s Encrypt 免费获取 SSL、TLS 证书的原理
后端
老葱头蒸鸡3 小时前
(14)ASP.NET Core2.2 中的日志记录
后端·asp.net
李昊哲小课4 小时前
Spring Boot 基础教程
java·大数据·spring boot·后端
码事漫谈4 小时前
C++内存越界的幽灵:为什么代码运行正常,free时却崩溃了?
后端
Swift社区4 小时前
Spring Boot 3.x + Security + OpenFeign:如何避免内部服务调用被重复拦截?
java·spring boot·后端
90后的晨仔4 小时前
Mac 上配置多个 Gitee 账号的完整教程
前端·后端
码事漫谈4 小时前
AI智能体平台选型指南:从技术架构到商业落地的全景洞察
后端