FastMCP؛ سرور MCP با یه تابع پایتون
خلاصهٔ کاملتر
FastMCP یه فریمورک پایتونیه برای کار با Model Context Protocol یا همون MCP؛ پروتکلی که مدلهای زبانی رو به ابزارها و دادههای بیرونی وصل میکنه. تو معرفی پروژه اومده که ساخت یه اپلیکیشن MCP درستوحسابی سختتر از چیزیه که به نظر میرسه، و FastMCP همون بخش سخت رو خودش برمیداره: یه تابع پایتون رو بهعنوان ابزار معرفی میکنی و اسکیما، اعتبارسنجی و مستنداتش خودکار ساخته میشه.
نمونهٔ خود ریدمی کل ماجرا رو تو چند خط نشون میده:
from fastmcp import FastMCP
mcp = FastMCP("Demo 🚀")
@mcp.tool
def add(a: int, b: int) -> int:
"""Add two numbers"""
return a + bبا همون یه دکوراتور، تابع add تبدیل به ابزاری میشه که مدل میتونه صداش کنه؛ بقیهٔ کارها مثل مذاکرهٔ ترنسپورت، احراز هویت و چرخهٔ عمر پروتکل دست خود فریمورکه. پروژه سه ستون داره: Servers که توابع پایتونی رو به ابزار، ریسورس و پرامپت سازگار با MCP تبدیل میکنه، Clients که با پشتیبانی کامل پروتکل به هر سروری وصل میشه (محلی یا ریموت، برنامهنویسی یا از خط فرمان)، و Apps که به ابزارها رابط کاربری تعاملی میده تا مستقیم داخل خود گفتوگو رندر بشه.
نسخهٔ ۱.۰ همین پروژه سال ۲۰۲۴ داخل SDK رسمی پایتونِ MCP گنجونده شد و نسخهٔ مستقل و فعالش الان روزی یک میلیون بار دانلود میشه؛ به گفتهٔ تیم سازنده یه نسخهای از FastMCP پشت ۷۰٪ سرورهای MCP تو همهٔ زبانها میچرخه. برای نصب هم ابزار uv توصیه شده، و اگه بعد از ارتقا از نسخهٔ ۳.۲ یا قدیمیتر ایمپورت پکیج شکست خورد، باید یه بار نصب رو با فلگ --force-reinstall تکرار کنی.
تیم Prefect در کنار این فریمورک آزاد، محصول تجاری Prefect Horizon رو هم معرفی میکنه: یه گیتوی سازمانی برای اجرای سرورهای MCP با دیپلوی از گیتهاب، پیشنمایش برنچ و رولبک فوری، رجیستری خصوصی، SSO و RBAC در سطح ابزار، بهعلاوهٔ لاگ ممیزی و مشاهدهپذیری. یعنی ریدمی هم مستند فنی فریمورکه و هم ویترین محصول تجاری تیم سازندهست.
نکات کلیدی:
- FastMCP کار ساخت سرور، کلاینت و اپ برای پروتکل MCP رو تو پایتون ساده میکنه
- اسکیما، اعتبارسنجی، مستندات، ترنسپورت و احراز هویت خودکار مدیریت میشن
- سه ستون پروژه: Servers، Clients و Apps
- نسخهٔ ۱.۰ وارد SDK رسمی MCP شد و امروز پشت حدود ۷۰٪ سرورهای MCP دنیاست
- Prefect Horizon نسخهٔ سازمانی و تجاری اجراشون با SSO، RBAC و لاگ ممیزیه




