使用说明
带Gmail工具的FastMCP服务器
这个项目演示了一个简单的FastMCP服务器,它有两个可用的工具: greet 基本问候和a功能 send_email 利用Google Gmail API发送电子邮件的功能。
项目描述
这 server.py 该脚本使用FastMCP框架设置微服务通信协议(MCP)服务器。它公开了两个远程过程调用(RPC)工具:
greet(name: str):一个返回问候字符串的简单工具。send_email(to_email: str, subject: str, body: str):一个更高级的工具,连接到Google Gmail API,向指定收件人发送电子邮件。它为您处理OAuth2身份验证流,需要一次性设置。
先决条件
在运行服务器并使用之前 send_email 工具,您必须完成以下步骤来设置Google Gmail API:
-
谷歌云项目
转到 谷歌云控制台 并创建一个新项目。 -
启用Gmail API
在新项目中,导航到 API和服务→ 图书馆,然后搜索并启用Gmail API。 -
创建OAuth 2.0凭据
- 首选 API和服务→ 凭证
- 点击 +创建凭据 并选择 OAuth客户端ID
- 选择 桌面应用程序 作为应用程序类型
- 命名您的客户并单击 创建
-
下载
credentials.json
弹出窗口将显示您的客户端ID和密码。点击 下载JSON 按钮并将文件另存为credentials.json在与您的目录相同的目录中server.py脚本。
安装
您可以使用以下任一方式安装所需的库 uv (推荐)或 pip.
使用紫外线(推荐)
首先,确保 uv 已安装在您的系统上。然后运行:
uv add fastmcp
uv add google-api-python-client google-auth-httplib2 google-auth-oauthlib
你说得对,谢谢你理解。这是正确渲染的 降价 版本,而不会混淆代码块:
使用pip
或者,使用pip安装软件包:
pip install mcp
pip install fastmcp google-api-python-client google-auth-httplib2 google-auth-oauthlib
用法
步骤1:初始身份验证
在使用以下命令运行服务器之前 fastmcp dev,执行一次性身份验证以生成 token.json 文件。此文件安全地存储您的凭据。
运行脚本:
python server.py
这将打开一个浏览器窗口,引导您完成谷歌的身份验证过程。在成功登录之后, token.json 将在您的目录中创建。
步骤2:运行服务器
一旦你有了 token.json 文件,您可以启动FastMCP开发服务器:
fastmcp dev server.py
您应该看到一条消息,指示服务器正在运行并且工具已注册。
步骤3:使用客户端
您可以使用客户端脚本与服务器的工具进行交互。
例子:
# client.py
from fastmcp import connect
async def main():
conn = await connect("http://localhost:8000")
# Call greet tool
greeting = await conn.call("greet", {"name": "Alice"})
print("Greet response:", greeting)
# Call send_email tool
result = await conn.call("send_email", {
"to_email": "example@example.com",
"subject": "Test Email",
"body": "Hello from FastMCP!"
})
print("Send email response:", result)
import asyncio
asyncio.run(main())