[ PROMPT_NODE_24764 ]
快速入门
[ SKILL_DOCUMENTATION ]
# 快速入门
欢迎!本指南将帮助您快速设置 FastMCP,运行您的第一个 MCP 服务器,并将服务器部署到 Prefect Horizon。
如果您尚未安装 FastMCP,请按照安装说明进行操作。
## 创建 FastMCP 服务器
FastMCP 服务器是工具、资源和其他 MCP 组件的集合。要创建服务器,请先实例化 `FastMCP` 类。
创建一个名为 `my_server.py` 的新文件并添加以下代码:
python my_server.py}
from fastmcp import FastMCP
mcp = FastMCP("My MCP Server")
就是这样!您已经创建了一个 FastMCP 服务器,尽管它现在还很简陋。让我们添加一个工具让它变得更有趣。
## 添加工具
要添加一个返回简单问候语的工具,请编写一个函数并使用 `@mcp.tool` 装饰它,将其注册到服务器:
python my_server.py}
from fastmcp import FastMCP
mcp = FastMCP("My MCP Server")
@mcp.tool
def greet(name: str) -> str:
return f"Hello, {name}!"
## 运行服务器
运行 FastMCP 服务器最简单的方法是调用其 `run()` 方法。您可以选择不同的传输方式,例如用于本地服务器的 `stdio`,或用于远程访问的 `http`:
python my_server.py (stdio) {9, 10}}
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()
python my_server.py (HTTP) {9, 10}}
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(transport="http", port=8000)
这使我们能够使用 `python my_server.py` 运行服务器。`stdio` 传输是将 MCP 服务器连接到客户端的传统方式,而 `http` 传输则支持远程连接。
> **提示:** 为什么我们需要 `if __name__ == "__main__":` 代码块?
建议使用 `__main__` 代码块以保持一致性和兼容性,确保您的服务器能与所有将您的服务器文件作为脚本执行的 MCP 客户端兼容。仅使用 FastMCP CLI 运行服务器的用户可以省略它,因为 CLI 会直接导入服务器对象。
### 使用 FastMCP CLI
您也可以使用 `fastmcp run` 命令来启动服务器。请注意,FastMCP CLI **不会**执行您服务器文件的 `__main__` 代码块。相反,它会导入您的服务器对象,并使用您提供的任何传输方式和选项来运行它。
For