आपके MCP सर्वर आपके एक शब्द टाइप करने से पहले ही टोकन खर्च कर रहे हैं

आप उस डेटा के लिए भुगतान कर रहे हैं जिसका आप कभी उपयोग नहीं करते।

पिछले हफ्ते मैंने एक एजेंट सेशन को ट्रैक किया। इसमें 47 MCP टूल्स लोड थे। हर टूल ने अपना पूरा JSON schema सिस्टम प्रॉम्प्ट में भेज दिया। यह सब मेरे एक शब्द भी टाइप करने से पहले हो गया।

प्रत्येक टूल स्कीमा 150 से 400 टोकन का उपयोग करता है। 47 टूल्स की वजह से मुझे ओवरहेड के रूप में 11,000 टोकन का खर्च उठाना पड़ा। मॉडल हर एक टर्न पर इन टोकन को पढ़ता है। भले ही आप केवल दो टूल्स का उपयोग करें, आपको इस कॉन्टेक्स्ट के लिए भुगतान करना पड़ता है।

अधिकांश लोग बड़ी फ़ाइलों को अपलोड करने की चिंता करते हैं। वे टूल मेनू की लागत को भूल जाते हैं।

जब आप GitHub, Slack और डेटाबेस जैसे सर्वर को एक साथ जोड़ते हैं, तो आपके पास 60 से 100 टूल्स हो जाते हैं। मैंने ऐसे सेशन देखे हैं जहाँ टूल डेफिनिशन (tool definitions) पूरे कॉन्टेक्स्ट बजट का 20% हिस्सा ले लेते हैं।

सब कुछ एक साथ लोड करना बंद करें। इसके बजाय deferred loading का उपयोग करें।

यहाँ पैटर्न दिया गया है: • टूल्स को केवल नाम और एक संक्षिप्त विवरण के साथ सूचीबद्ध करें। • आवश्यकतानुसार (on demand) पूरा स्कीमा प्राप्त करने के लिए एक सर्च टूल का उपयोग करें।

हर टूल के लिए एक विशाल JSON ऑब्जेक्ट डालने के बजाय, आप केवल एक सरल नाम प्रदान करते हैं। जब मॉडल को किसी विशिष्ट टूल की आवश्यकता होती है, तो वह एक सर्च फंक्शन को कॉल करता है। वह फंक्शन केवल मेल खाने वाले टूल्स के लिए पूरा स्कीमा वापस करता है।

परिणाम बहुत बड़े हैं: • 80 टूल्स की Eager loading: ~18,000 टोकन। • 80 टूल्स की Deferred loading: ~1,000 टोकन।

यह टूल डेफिनिशन को एक बड़े खर्च से बदलकर एक मामूली खर्च (rounding error) बना देता है।

यह रणनीति इसलिए काम करती है क्योंकि अधिकांश सेशन उपलब्ध टूल्स के केवल एक छोटे से हिस्से का उपयोग करते हैं। यदि आप एक सेशन में हर टूल का उपयोग करते हैं, तो लागत वही रहती है। लेकिन अधिकांश उपयोगकर्ताओं के लिए, यह कॉन्टेक्स्ट की भारी बचत करता है।

यह न पूछें कि मॉडल को किन टूल्स को कॉल करने की आवश्यकता है। यह पूछें कि मॉडल को डिफ़ॉल्ट रूप से क्या जानने की आवश्यकता है कि वे मौजूद हैं।

अधिकांश कैटलॉग सब कुछ एक साथ प्रदान करते हैं क्योंकि यह आसान है। यह एक ऐसे मेनू पर अपना बजट बर्बाद करने का सबसे तेज़ तरीका भी है जिसे कोई नहीं पढ़ता।

इसे सरल रखें। एक नाम, एक विवरण और एक सर्च फंक्शन प्रदान करें। उन तीन टूल्स के लिए भुगतान करें जिनका आप उपयोग करते हैं, उन अस्सी टूल्स के लिए नहीं जिन्हें आप अनदेखा कर देते हैं।

Source: https://dev.to/enjoy_kumawat/your-mcp-servers-are-burning-tokens-before-you-type-a-word-3076

Optional learning community: https://t.me/GyaanSetuAi