Model Context Protocol (MCP) ఇప్పుడు స్టేట్లెస్ (stateless) అయింది, మరియు ఈ మార్పు డెవలపర్లు Cloudflare Workers యొక్క ఉచిత ప్లాన్ (free tier) లో చిన్న MCP సర్వర్లను నడపడానికి అనుమతిస్తుంది—అయితే ప్రతి రిక్వెస్ట్ ప్లాట్ఫారమ్ యొక్క 10 ms CPU పరిమితి లోపు ఉండాలి.
ఈ మార్పు ఎందుకు ముఖ్యమైనది
ఇటీవలి రెండు మార్పులు దీనికి దారి తీశాయి. మొదటిది, MCP కోర్ తన సెషన్-ఆధారిత డిజైన్ను వదిలివేసింది మరియు ఇప్పుడు హ్యాండ్షేక్లు (handshakes) లేకుండా నడుస్తుంది; ఏ రిక్వెస్ట్నైనా కోడ్ యొక్క ఏ ఇన్స్టాన్స్ అయినా హ్యాండిల్ చేయగలదు. రెండవది, Cloudflare తన McpAgent క్లాస్ను నిలిపివేసింది మరియు ఇప్పుడు కొత్త సర్వర్ల కోసం సాధారణ రిక్వెస్ట్ హ్యాండ్లర్లను (request handlers) సిఫార్సు చేస్తోంది. ఇవి కలిసి Durable Objects లేదా ఇతర స్టేట్ఫుల్ స్టోరేజ్ (stateful storage) అవసరాన్ని తొలగిస్తాయి, ఇవి ఉచిత ప్లాన్లో MCPని నడపడానికి ప్రధాన అడ్డంకులుగా ఉండేవి.
ఉచిత ప్లాన్ (free tier) నిజంగా ఏమి చేయగలదు
మేము ఒక స్టాటిక్ సైట్ నుండి మార్క్డౌన్ (Markdown) ఫైల్లను అందించే రీడ్-ఓన్లీ (read-only) MCP సర్వర్ను రూపొందించాము. ఈ సర్వర్ మెథడ్లను రూట్ చేయడానికి ఒక సాధారణ స్విచ్ స్టేట్మెంట్ను (switch statement) ఉపయోగించి list_articles మరియు get_article అనే రెండు టూల్స్ను అమలు చేస్తుంది. ఇందులో భారీ గణనలు ఏవీ లేవు, కేవలం స్టాటిక్ అసెట్లను పొందడం మాత్రమే జరుగుతుంది.
Cloudflare యొక్క CPU అకౌంటింగ్, మొత్తం రెస్పాన్స్ సమయం (total response time) కంటే భిన్నంగా ఉంటుంది. CPU సమయం అనేది మీ JavaScriptని అమలు చేయడానికి మాత్రమే ఉపయోగించిన సైకిల్లను లెక్కిస్తుంది; నెట్వర్క్ కాల్స్ లేదా డిస్క్ రీడ్స్ కోసం వేచి ఉన్న సమయం ఇందులో చేర్చబడదు. ఈ తేడా చాలా ముఖ్యం, ఎందుకంటే ఉచిత ప్లాన్ ప్రతి రిక్వెస్ట్కు CPUని 10 ms వద్ద పరిమితం చేస్తుంది, అయితే మొత్తం లాటెన్సీ (latency) అంతకంటే ఎక్కువగా ఉండవచ్చు.
ఉచిత ప్లాన్లో మా కొలతలు ఇలా ఉన్నాయి:
server/discover: 0-1 ms CPUtools/list: 0 ms CPUget_article(అతిపెద్ద ఫైల్): 1-2 ms CPU
అతిపెద్ద ఆర్టికల్ కూడా 10 ms బడ్జెట్లో చాలా తక్కువ భాగాన్ని మాత్రమే ఉపయోగించింది. క్లయింట్ వైపు కనిపించిన నెమ్మది అనేది కోడ్ ఎగ్జిక్యూషన్ వల్ల కాదు, ఫైల్ చదవడం కోసం వేచి ఉండటం వల్ల వచ్చింది.
పరిమితి ఎక్కడ ఇబ్బంది పెడుతుంది
డేటా ఒక స్పష్టమైన నమూనాను సూచిస్తోంది:
- డేటా-సర్వింగ్ టూల్స్ (సాధారణ రీడ్స్, లిస్టింగ్స్) సులభంగా పరిమితి లోపు ఉంటాయి.
- కంప్యూట్-హెవీ టూల్స్ (పార్సింగ్, రెండరింగ్, హ్యాషింగ్ లేదా ఏదైనా అల్గారిథమిక్ పని) 10 ms బడ్జెట్ను త్వరగా ఖాళీ చేయవచ్చు.
ఒక టూల్కు సాధారణ ప్రాసెసింగ్ కంటే ఎక్కువ అవసరమైతే, డెవలపర్లు పెయిడ్ (paid) Workers ప్లాన్కు మారాల్సి ఉంటుంది. $5 ప్లాన్ ప్రతి రిక్వెస్ట్కు పరిమితిని 30 సెకన్లకు పెంచుతుంది.
ఎవరు లాభపడతారు, ఎవరు సమయాన్ని గమనించాలి
మార్క్డౌన్ ఫైల్లు లేదా RSS ఫీడ్ను ఇప్పటికే హోస్ట్ చేస్తున్న చిన్న సైట్లు, ఒకే ఒక కొత్త రూట్తో MCP ఎండ్పాయింట్ను (endpoint) ప్రదర్శించగలవు మరియు ఉచిత ప్లాన్లోనే కొనసాగించగలవు. అంటే హాబీయిస్టులు, డాక్యుమెంటేషన్ సైట్లు లేదా తక్కువ ట్రాఫిక్ ఉన్న బ్లాగులకు తక్కువ నిర్వహణ ఖర్చులు మరియు తక్కువ పనిభారం ఉంటుంది.
ఒక టూల్కు సాధారణ ప్రాసెసింగ్ కంటే ఎక్కువ అవసరమైతే, డెవలపర్లు పెయిడ్ (paid) Workers ప్లాన్కు మారాల్సి ఉంటుంది.
మీరు ప్రారంభించే ముందు ఏమి పరీక్షించాలి
- మీ టూల్ను ప్రొఫైల్ చేయండి: కొన్ని రిప్రజెంటేటివ్ రిక్వెస్ట్లను రన్ చేసి, Cloudflare డ్యాష్బోర్డ్లో CPU మీటర్ను తనిఖీ చేయండి.
- స్టాటిక్ మరియు డైనమిక్ పాత్లను వేరు చేయండి: స్టాటిక్ ఫైల్ సర్వింగ్ను ఉచిత ప్లాన్లో ఉంచండి మరియు కంప్యూట్-ఇంటెన్సివ్ కాల్స్ను పెయిడ్ వర్కర్ లేదా మరొక బ్యాకెండ్కు రూట్ చేయండి.
- దాగి ఉన్న లాటెన్సీని గమనించండి: నెట్వర్క్ వేచి ఉండటం CPU పరిమితికి లెక్కించబడదు, కానీ అది ఇప్పటికీ యూజర్ ఎక్స్పీరియన్స్ను ప్రభావితం చేస్తుంది. మీరు అందించే ఫైల్ల కోసం ఎడ్జ్ క్యాషింగ్ (edge caching) గురించి ఆలోచించండి.
ప్రతికూల అంశం: ఉచిత ప్లాన్ అపరిమితమైనది కాదు
స్టేట్లెస్ కోర్ వల్ల Durable Objects అవసరం లేకపోయినప్పటికీ, 10 ms పరిమితి అనేది ఒక కఠినమైన గీతగానే ఉంటుంది. సాధారణ పార్సింగ్ (ఉదాహరణకు, మార్క్డౌన్ నుండి HTML కన్వర్షన్) ఖర్చును తక్కువగా అంచనా వేసే డెవలపర్లు అనుకోకుండా ఈ పరిమితిని చేరుకోవచ్చు. ఉచిత ప్లాన్ "ఉన్నది ఉన్నట్లుగా అందించే" (serve-as-is) సందర్భాలకు సరిపోతుంది, వెంటనే కంటెంట్ను జనరేట్ చేసే (on-the-fly content generation) పనులకు కాదు.
Cloudflareలో MCP యొక్క తదుపరి అడుగు ఏమిటి
మీ సైట్లో కంటెంట్ ఇప్పటికే ఒక స్టాటిక్ బకెట్లో ఉంటే, MCP ఎండ్పాయింట్ను జోడించడం కేవలం కొన్ని లైన్ల కోడ్ మరియు ఒకే ఒక రూట్తో సాధ్యమవుతుంది. మీరు 10 ms CPU పరిమితి లోపు ఉంటే, ఈ ప్రోటోకాల్ ఇప్పుడు చిన్న సర్వర్ల అవసరాలకు అనుగుణంగా ఉంది—అంటే ఉచితంగా హోస్ట్ చేయగల ఒక సాధారణ HTTP ఎండ్పాయింట్.
