نحوه ساخت سرور MCP در پایتون با استفاده از FastAPI

من دیده ام که بسیاری از افراد با پروتکل جدید MCP که توسط Anthropic منتشر شده است ، مرعوب یا گیج شده اند ، که به منظور ایجاد ارتباط بین یک عامل AI و برنامه شما بدون یکپارچه و واضح طراحی شده است. اما ساختن چنین سرور برای برنامه Python شما به هیچ وجه پیچیده نیست.
قبل از پرش ، بگذارید من را متقاعد کنم که چرا لازم است.
چرا
- به نمایندگان AI اجازه می دهد تا با برنامه شما ادغام شوند
- پیچیدگی را از توسعه دهندگان انسانی به عوامل هوش مصنوعی تغییر می دهد ، و به طور بالقوه توسعه برنامه را ساده تر می کند
- فرآیند اتصال هوش مصنوعی را به ابزارها و منابع بیشمار داده ساده می کند
اگر MCP به استاندارد بعدی تبدیل شود ، شما چاره ای جز اتخاذ آن نخواهید داشت ، زیرا مردم از ادغام دستی به سمت هوش مصنوعی تغییر می کنند و همه چیز را برای آنها انجام می دهد.
حالا ممکن است بگویید ، “مشکلی نیست! این مسئله بزرگ است ، بیایید صبر کنیم و ببینیم.” اما هنگامی که می بینید چقدر تلاش کمی برای اتخاذ طول می کشد ، می خواهید از منحنی جلو بمانید.
چگونه
با قابلیت های مورد نظر یک سرور FastAPI ایجاد کنید
(اگر قبلاً یکی از آنها را دارید ، جلوتر بروید)
آموزش Fastapi First Steps مطمئناً بهتر از من خواهد بود ، اما در اینجا مهمترین آن است:
-
وابستگی ها را نصب کنید:
pip install uvicorn, fastapi
-
یک سرور FastAPI ایجاد کنید:
from fastapi import FastAPI app = FastAPI() @app.get("/") async def root(): return {"message": "MCP is super cool"}
-
برای هر عملکرد برنامه خود ، “عملیات مسیر” را بنویسید – تابعی که به یک مسیر خاص اختصاص داده شده است (در اینجا عملکرد ریشه را در زیر مسیر /مشاهده می کنید) ، انجام یک عملیات HTTP (دریافت ، ارسال ، قرار دادن ، حذف …).
-
برنامه خود را با استفاده از uvicorn اجرا کنید:
uvicorn main:app - reload
همین است! برنامه Fastapi شما در دسترس است http://127.0.0.1:8000
بشر حال بیایید آن را به سرور MCP ارتقا دهیم.
از Fastapi تا سرور MCP
-
ابزار منبع باز FastAPI-MCP را نصب کنید:
pip install fastapi-mcp
-
به کد FastAPI خود اضافه کنید:
from fastapi import FastAPI from fastapi_mcp import add_mcp_server # Your FastAPI app app = FastAPI() # Mount the MCP server to your app add_mcp_server( app, # Your FastAPI app mount_path="/mcp", # Where to mount the MCP server name="My API MCP", # Name for the MCP server )
همین است! سرور MCP به صورت خودکار تولید می شود و در دسترس است http://127.0.0.1:8000/mcp
بشر این آدرس است که می تواند در مکان نما تنظیم شود (یا هر نماینده هوش مصنوعی که از SSE پشتیبانی می کند ، شایعه می کند که پشتیبانی Cline برای MCP در راه است).
با استفاده از MCP
MCP خود را در مکان نما پیکربندی کنید:
- تنظیمات -> MCP -> اضافه کردن MCP جدید
-
این را در پرونده JSON که باز می شود ، جایگذاری کنید:
{ "mcpServers": { "My First MCP server": { "url": "http://127.0.0.1:8000/mcp" } } }
پیکربندی در Claude Desktop یک قدم دیگر (زیرا در حال حاضر فقط از STDIO پشتیبانی می کند) ، اما نگران نباشید – من به شما نشان خواهم داد که چگونه این کار را در یک پست متفاوت انجام دهید.
چه چیزی بعدی؟
پس از راه اندازی ، عوامل هوش مصنوعی اکنون می توانند از طریق یک پروتکل استاندارد با برنامه شما ارتباط برقرار کنند. شما می توانید سرور MCP خود را با اضافه کردن نقاط پایانی بیشتر که عملکردهای مختلف برنامه شما را در معرض دید قرار می دهد ، گسترش دهید.
به یاد داشته باشید ، هدف MCP ساده ساختن ادغام است – بنابراین آن را بیش از حد نکنید! با عملکرد اساسی شروع کنید و در صورت لزوم گسترش دهید.
زیبایی استفاده از FastAPI با کتابخانه FastAPI-MCP این است که شما ضمن اضافه کردن قابلیت MCP با حداقل کد اضافی ، تمام مزایای FastAPI (مانند اسناد خودکار و اعتبار سنجی نوع) را حفظ می کنید.
به من اطلاع دهید که آیا آن را امتحان کرده اید ، و فراموش نکنید که مخزن Fastapi-MCP را ستاره کنید!