Pydantic ने एक ओपन-सोर्स सर्वर पेश किया है जिसे AI एजेंटों को एक सुरक्षित, पृथक वातावरण में पायथन कोड निष्पादित करने की सुविधा देने के लिए डिज़ाइन किया गया है। यह नया टूल मॉडल कॉन्टेक्स्ट प्रोटोकॉल (MCP) का लाभ उठाता है, जो एंथ्रोपिक द्वारा शुरू किया गया एक खुला मानक है, जिसका उद्देश्य AI सिस्टम को होस्ट सिस्टम तक सीधी पहुँच के बिना कार्यों के लिए पायथन का उपयोग करने हेतु एक मानकीकृत विधि प्रदान करना है।
यह सर्वर Pyodide का उपयोग करके कोड निष्पादित करके आइसोलेशन प्राप्त करता है, जो WebAssembly (वेब वातावरण में लगभग मूल प्रदर्शन को सक्षम करने वाला एक निम्न-स्तरीय बाइनरी प्रारूप) में संकलित एक पायथन रनटाइम है, जो सुरक्षा-सचेत Deno JavaScript/TypeScript रनटाइम के अंदर चलता है। इस दृष्टिकोण का उद्देश्य AI एजेंटों को पायथन-आधारित कार्यों को सुरक्षित रूप से निष्पादित करने की क्षमता प्रदान करना है।
यह सक्षम AI एजेंटों के निर्माण में आने वाली एक आम चुनौती का समाधान करता है: उन्हें जटिल गणनाएँ करने या पायथन का उपयोग करके लाइब्रेरीज़ के साथ इंटरैक्ट करने की अनुमति देता है, साथ ही मनमाने कोड को निष्पादित करने से जुड़े सुरक्षा जोखिमों को कम करता है। इस टूल के लिए Pydantic का दस्तावेज़, जो ai.pydantic.dev पर उपलब्ध है, इसकी विशेषताओं का विवरण देता है, जिसमें मानक आउटपुट, मानक त्रुटि और वापसी मानों का मज़बूत कैप्चर, एसिंक्रोनस कोड के लिए समर्थन, स्वचालित निर्भरता प्रबंधन और विस्तृत त्रुटि रिपोर्टिंग शामिल है।
AI टूल्स के लिए एक मानकीकृत ब्रिज
मॉडल कॉन्टेक्स्ट प्रोटोकॉल को AI कंपनी एंथ्रोपिक ने नवंबर 2024 में लॉन्च किया था। इसका निर्माण AI मॉडल्स को उन विविध बाहरी टूल्स और डेटा स्रोतों से जोड़ने में आने वाली कठिनाइयों को देखते हुए किया गया था जिनकी उन्हें अक्सर आवश्यकता होती है।
जैसा कि एंथ्रोपिक ने आधिकारिक प्रोटोकॉल घोषणा के दौरान बताया, “प्रत्येक नए डेटा स्रोत के लिए अपने स्वयं के कस्टम कार्यान्वयन की आवश्यकता होती है, जिससे वास्तविक रूप से जुड़े सिस्टम को स्केल करना मुश्किल हो जाता है।” MCP मानक HTTP का उपयोग करके एक मानक क्लाइंट-सर्वर आर्किटेक्चर स्थापित करता है।
AI एप्लिकेशन MCP क्लाइंट के रूप में कार्य करते हैं, MCP सर्वर से क्वेरी करते हैं जो फ़ंक्शन (टूल), डेटा एक्सेस (संसाधन), या इंटरैक्शन टेम्प्लेट (प्रॉम्प्ट) जैसी विशिष्ट क्षमताएँ प्रदर्शित करते हैं। Pydantic का mcp-run-python इस फ्रेमवर्क के अंतर्गत एक विशेष सर्वर के रूप में कार्य करता है, जो अपने प्राथमिक टूल, जिसे इसके दस्तावेज़ीकरण उदाहरणों में run_python_code के रूप में पहचाना गया है, के माध्यम से सामान्य Python कोड निष्पादन की विशिष्ट क्षमता प्रदान करता है।
सैंडबॉक्सिंग, निर्भरताएँ और उपयोग
mcp-run-python का सुरक्षा मॉडल Pyodide (WebAssembly) और Deno द्वारा प्रदान किए गए स्तरित सैंडबॉक्सिंग पर निर्भर करता है। यह डिज़ाइन स्वाभाविक रूप से कोड को होस्ट सिस्टम के फ़ाइल सिस्टम या नेटवर्क तक पहुँचने से रोकता है, जब तक कि पैकेज डाउनलोड के लिए स्पष्ट रूप से अनुमति न दी गई हो।
MCP सर्वरों पर चर्चा करते हुए एक AWS ब्लॉग पोस्ट में ऐसे प्रोटोकॉल के फ़ायदों पर ज़ोर दिया गया है जो “…संवेदनशील डेटा को स्थानीय रखते हुए” इंटरेक्शन की अनुमति देते हैं। जब कोई एजेंट run_python_code टूल के ज़रिए सर्वर को पायथन कोड भेजता है, तो सर्वर उसे निष्पादित करता है और एक संरचित XML प्रतिक्रिया देता है। दस्तावेज़ीकरण उदाहरणों के अनुसार, इस प्रतिक्रिया में आमतौर पर (सफलता या त्रुटि का संकेत), (इंस्टॉल किए गए पैकेजों की सूची), (stdout के लिए), (यदि लागू हो), और ट्रेसबैक विवरण के साथ या जैसे टैग होते हैं।
इसकी एक प्रमुख विशेषता पायथन पैकेजों को संभालना है। PydanticAI MCP दस्तावेज़ीकरण के अनुसार, सर्वर सबमिट किए गए कोड में `import` कथनों का विश्लेषण करके निर्भरताओं का अनुमान लगा सकता है।
वैकल्पिक रूप से, डेवलपर्स निर्भरताओं को स्पष्ट रूप से घोषित कर सकते हैं, जिसमें Pyodide द्वारा समर्थित गैर-बाइनरी पैकेजों के विशिष्ट संस्करण शामिल हैं, PEP 723 विनिर्देश के अनुसार स्वरूपित इनलाइन टिप्पणियों का उपयोग करके। यह एकल-फ़ाइल स्क्रिप्ट में प्रोजेक्ट मेटाडेटा एम्बेड करने का एक मानक है, जिसका उपयोग uv पैकेज इंस्टॉलर जैसे टूल द्वारा भी किया जाता है। यह निष्पादन वातावरण पर सटीक नियंत्रण की अनुमति देता है।
स्थापना और निष्पादन Deno रनटाइम के माध्यम से नियंत्रित किए जाते हैं। Pydantic का दस्तावेज़ आधिकारिक JSR पैकेज पहचानकर्ता के साथ `deno run` कमांड का उपयोग करने की अनुशंसा करता है। Pyodide को `node_modules` निर्देशिका में स्थानीय रूप से Python घटकों को डाउनलोड और कैश करने के लिए आवश्यक अनुमतियाँ प्रदान करने हेतु विशिष्ट फ़्लैग (`-N`, `-R=node_modules`, `-W=node_modules`, `–node-modules-dir=auto`) आवश्यक हैं।
Deno और JSR का उपयोग करने वाला यह तरीका पहले उपलब्ध, लेकिन अब अप्रचलित, NPM पैकेज का स्थान लेता है। सर्वर को विभिन्न मोड में शुरू किया जा सकता है: MCP stdio ट्रांसपोर्ट का उपयोग करके स्थानीय सबप्रोसेस के साथ सीधे संपर्क के लिए `stdio`, MCP सर्वर-सेंट इवेंट्स ट्रांसपोर्ट का उपयोग करके HTTP सर्वर के रूप में चलाने के लिए `sse`, या घटकों को प्री-कैश करने और सेटअप को सत्यापित करने के लिए `warmup`, जो पहले-रन प्रदर्शन को अनुकूलित करने के लिए उपयोगी है।
MCP इकोसिस्टम के भीतर एकीकरण
Pydantic ने 20 मार्च के आसपास PydanticAI फ्रेमवर्क के भीतर MCP के लिए अपने व्यापक समर्थन की आधिकारिक घोषणा की, जिसमें `mcp-run-python` को अपने एजेंट डेवलपमेंट टूल्स के साथ संरेखित किया गया। PydanticAI (जिसमें MCP सुविधाओं के लिए Python 3.10+ की आवश्यकता होती है) का उपयोग करने वाले डेवलपर `MCPServerStdio` या `MCPServerHTTP` जैसी क्लाइंट क्लासेस का उपयोग करके `mcp-run-python` या अन्य MCP सर्वर से कनेक्ट हो सकते हैं, जिनका विवरण PydanticAI क्लाइंट दस्तावेज़ में दिया गया है।
लाइब्रेरी में `agent.run_mcp_servers()` कॉन्टेक्स्ट मैनेजर जैसी सुविधाजनक सुविधाएँ शामिल हैं जो `stdio`-आधारित सर्वरों के जीवनचक्र को स्वचालित रूप से प्रबंधित करती हैं। PydanticAI के उदाहरण `logfire.instrument_mcp()` का उपयोग करके अवलोकनीयता के लिए Logfire के साथ एकीकरण को भी प्रदर्शित करते हैं। सर्वर स्वयं MCP लॉगिंग संदेशों के रूप में निष्पादन लॉग उत्सर्जित करने का समर्थन करता है, हालाँकि दस्तावेज़ में उस समय इन लॉगों के प्रसंस्करण के संबंध में Python MCP क्लाइंट SDK में एक अस्थायी सीमा का उल्लेख किया गया था।
`mcp-run-python` के रिलीज़ होने से MCP सर्वर कार्यान्वयनों की संख्या में वृद्धि हुई है। Microsoft, जिसने मार्च के आसपास Azure AI में MCP को एकीकृत किया और आधिकारिक C# SDK पर Anthropic के साथ सहयोग किया, ने बाद में अप्रैल में Azure संसाधनों और PostgreSQL के लिए MCP सर्वरों का पूर्वावलोकन किया।
इसी प्रकार, AWS ने विशिष्ट AWS सेवाओं जैसे Bedrock, Lambda और CDK को लक्षित करते हुए, awslabs/mcp रिपॉजिटरी में होस्ट किए गए ओपन-सोर्स MCP सर्वरों का अपना सूट लॉन्च किया। ये विकास एक सामान्य इंटरफ़ेस परत के रूप में MCP के बढ़ते उपयोग का संकेत देते हैं।
जिन क्लाइंट अनुप्रयोगों को MCP सर्वर से कनेक्ट करने के लिए जाना जाता है, उनमें एंथ्रोपिक का क्लाउड डेस्कटॉप, कर्सर कोड एडिटर, अमेज़न Q और GitHub Copilot एजेंट मोड के माध्यम से VS कोड शामिल हैं।
साइमन विलिसन ने `mcp-run-python` का परीक्षण किया, जिसमें डेनो/पायोडाइड सैंडबॉक्सिंग दृष्टिकोण की प्रभावशीलता पर ध्यान दिया गया और `uv run` कमांड के माध्यम से सीधे सर्वर का उपयोग करके PydanticAI एजेंट चलाने के उदाहरण दिए गए।
MCP विनिर्देश स्वयं भी विकसित हो रहा है; 2025 की शुरुआत में होने वाले अपडेट में कथित तौर पर दूरस्थ प्रमाणीकरण और परिष्कृत परिवहन तंत्र के लिए OAuth 2.1 आवश्यकताएँ पेश की गईं।
यद्यपि MCP AI एजेंट क्षमताओं का विस्तार करने का एक मानकीकृत तरीका प्रदान करता है, डेवलपर्स को HTTP-आधारित परिवहन के साथ संभावित नेटवर्क विलंबता और उत्पादन परिनियोजन के लिए मज़बूत त्रुटि प्रबंधन और सुरक्षा प्रथाओं को लागू करने की ज़िम्मेदारी जैसे कारकों पर विचार करने की आवश्यकता है।
स्रोत: विनबज़र / डिग्पू न्यूज़टेक्स