Pings و timeouts (Pings & timeouts)
عنوان اصلی: Pings & timeouts
هدف یادگیری: استفاده از ping برای زنده نگه داشتن اتصال و enforce کردن timeout روی client.
Method ping سادهترین request در MCP است: بدون params، با response خالی. هر طرف میتواند طرف دیگر را ping کند. Clientها بهتر است یک timeout request پیشفرض داشته باشند (مثلاً ۳۰ ثانیه) و آن را وقتی notifications/progress میرسد reset کنند، با یک سقف مطلق (مثلاً ۱۰ دقیقه) تا یک server بدفعل با progress fake نتواند client را برای همیشه bind کند.
مثال عملی — JSON خام
{ "jsonrpc": "2.0", "id": 99, "method": "ping" }
{ "jsonrpc": "2.0", "id": 99, "result": {} }
اشتباهات رایج
- هیچ timeout نداشتن. client میتواند برای همیشه hang شود.
- reset نکردن timeout روی progress. requestهای طولانی legitimate قطع میشوند.