MCP सर्व्हर्स हे Claude Code साठीचे नवीन आणि महत्त्वाचे पायाभूत घटक (plumbing) आहेत. एखादा GitHub सर्व्हर जोडा आणि तुमचा एजंट 'pull requests' उघडू शकतो. 'filesystem server' जोडा आणि तो तुमच्या 'repo structure' वाचू शकतो. डेमो पाहताना ते जादूई वाटते. पण कोणीही त्याचा 'बिलाचा पावती' (receipt) दाखवत नाही.
खर्च हा टूल्सद्वारे केलेल्या API कॉल्समध्ये नसून, ते टूल्स स्वतःमध्ये आहे.
प्रत्येक वेळी तुम्ही MCP सर्व्हर रजिस्टर करता, तेव्हा तुम्ही केवळ एक क्षमता (capability) जोडत नाही आहात. तुम्ही तुमच्या 'context window' मध्ये मजकुराचा एक भाग जोडत आहात आणि त्या प्रत्येक टर्नला (turn) त्या भागाचे बिल आकारले जाते. एजंटने ते टूल वापरले असो वा नसो, तुम्हाला त्याच्या अस्तित्वासाठी पैसे द्यावे लागतात. सर्व्हर कनेक्ट होताच मीटर सुरू होते.
तुम्ही कधीही न वापरलेल्या टूल्सचे भाडे भरणे
येथे अशी एक प्रक्रिया आहे ज्याकडे दुर्लक्ष केले जाते. MCP सर्व्हरमधील प्रत्येक टूल डेफिनेशनमध्ये नाव, वर्णन आणि एक JSON schema असतो, जो मॉडेलला सांगतो की त्या टूलला कोणत्या 'arguments'ची आवश्यकता आहे. तो संपूर्ण 'payload' प्रत्येक टर्नच्या सुरुवातीला 'system context' मध्ये समाविष्ट केला जातो. मॉडेलला पूर्ण कॅटलॉग पाहणे आवश्यक असते जेणेकरून ते टूल कॉल करायचे की नाही हे ठरवू शकेल, परंतु त्या दृश्यमानतेसाठी (visibility) बिल तुम्हाला भरावे लागते.
प्रति टूल येणारा अतिरिक्त भार (overhead) नगण्य नाही. प्रत्यक्षात, एक सिंगल टूल डेफिनेशन ८० ते १५० टोकन्स वापरते. याचा अर्थ असा की, दहा टूल्स असलेले एक साधे सर्व्हर तुम्ही एकही वाक्य टाईप करण्यापूर्वीच ८०० ते १,५०० टोकन्स शांतपणे खाऊन टाकते. तुम्ही 'compute' साठी पैसे देत नाही आहात. तुम्ही केवळ पर्याय उपलब्ध असण्याच्या विशेषाधिकारासाठी पैसे देत आहात.
हे नेमके कसे वाढते (compounds) हे पाहण्यासाठी मी एका मानक २०-टर्न सेशनमध्ये आकडेवारी तपासली.
कोणतेही MCP सर्व्हर्स लोड नसेल, तर overhead शून्य असतो. context window मध्ये फक्त तुमचा संवाद असतो.
तीन मर्यादित टूल्स असलेला एक कस्टम मिनिमल सर्व्हर लोड करा, तर प्रति टर्न १८० टोकन्सचा कर (tax) लागतो. २० टर्न्समध्ये, ३,६०० टोकन्स वाया जातात. ही मोठी आपत्ती नाही, पण हे तुमचे खरे पैसे आहेत.
लोकप्रिय 'filesystem server', जो सात टूल्स देतो, तो हा खर्च प्रति टर्न ६४० टोकन्सपर्यंत नेतो. त्याच सेशनमध्ये, तुम्ही फक्त कनेक्शन टिकवून ठेवण्यासाठी १२,८०० टोकन्स खर्च केले आहेत. तुम्ही अजून एकही फाईल वाचलेली नाही. तुम्ही अजून एखादी डिरेक्टरी लिस्ट केलेली नाही. तुम्ही फक्त सर्व्हर मेनूमध्ये ठेवला आहे.
त्यानंतर GitHub सर्व्हर येतो. २६ टूल्स रजिस्टर केल्यामुळे, तो प्रत्येक टर्नमध्ये ३,१०० टोकन्स टाकतो. २० मेसेजच्या देवाणघेवाणीनंतर, एकूण overhead ६२,००० टोकन्स होतो. Sonnet 4 च्या किमतीनुसार, हे निव्वळ 'context tax' म्हणून $०.१९ आहे. एजंटने एखादी 'issue' तयार करण्याचा विचार करण्यापूर्वीच तुम्ही overhead साठी १९ सेंट्स दिले आहेत.
ही आकडेवारी वेगळी पाहताना लहान वाटते. पण तसे नाहीये.
रात्रभर चालणाऱ्या एजंटची समस्या
जिथे खरी अडचण येते ती म्हणजे दीर्घकाळ चालणारे 'autonomous loops'. जर तुम्ही Claude Code चा वापर स्वतःहून काम करणाऱ्या एजंट म्हणून करत असाल, तर तो प्रति-टर्न कर भीषण प्रमाणात वाढतो. GitHub सर्व्हर लोड असलेला एजंट रात्रभर २,००० टर्न्स चालला, तर तो ६२,००० टोकन्सचा overhead देणार नाही, तर तो ६.२ दशलक्ष (6.2 million) टोकन्स देईल.
याचा अर्थ उत्पादकतेसाठी काहीही न करता $१८.६० खर्च झाले आहेत. एजंटने एकही GitHub टूल न वापरता रात्रभर काम केले नसेल किंवा तो पूर्णपणे स्थानिक (local) फाईल्समध्ये काम करत असेल, तरीही त्या २,००० टर्न्सपैकी प्रत्येक टर्नसाठी तुम्हाला २६ GitHub टूल डेफिनिशन्सचे शुल्क द्यावे लागेल, कारण ते सेशनमध्ये रजिस्टर केलेले होते.
लक्षात ठेवण्यासारखी महत्त्वाची गोष्ट म्हणजे तुम्ही 'रजिस्टर केलेल्या' टूल्ससाठी पैसे देता, 'कॉल केलेल्या' टूल्ससाठी नाही. मॉडेल प्रत्यक्षात कोणते टूल्स वापरले आणि त्यानुसार तुमचे बिल कमी करते असे नाही. जर सर्व्हर कनेक्ट असेल, तर प्रत्येक सायकलमध्ये त्याचा पूर्ण 'manifest' पुन्हा context मध्ये आणला जातो. हा कृतीवर (action) नाही, तर संभाव्यतेवर (potential) आकारला जाणारा प्रति-टर्न कर आहे.
जे डेव्हलपर्स 'iterative coding agents', 'test harnesses' किंवा 'batch review jobs' चालवतात, त्यांच्यासाठी हा एक 'सायलेंट बजेट किलर' आहे. २० टर्न्सचा मानवी संवाद हलका असतो. पण २०० किंवा २,००० टर्न्सचे 'agentic loop' जिथे गणित अत्यंत महागडे ठरते.
खर्च नियंत्रणात कसा ठेवावा
MCP खरोखर उपयुक्त आहे. तुम्ही त्याचा वापर केला पाहिजे. पण त्याला एखाद्या कामासाठी चालू केल्या जाणाऱ्या उपकरणाप्रमाणे (utility) वापरा, प्रत्येक सेशनला कायमस्वरूपी जोडल्या जाणाऱ्या गोष्टीप्रमाणे नाही.
कॉन्फिग्सना प्रोजेक्ट आणि कामापुरते मर्यादित ठेवा
डीफॉल्टनुसार सर्व सर्व्हर्स तुमच्या 'global Claude Code configuration' मध्ये लोड करू नका. तुम्ही प्रत्यक्षात करत असलेल्या कामाशी जुळणारे 'project-scoped MCP configs' तयार करा. जर तुम्ही एखादा 'local module' रिफॅक्टर (refactoring) करत असाल, तर तुम्हाला बहुधा फक्त 'filesystem server'ची गरज असेल. जर तुम्ही 'issues' सोडवत असाल, तर त्या विशिष्ट कामासाठी GitHub सर्व्हर लोड करा आणि जेव्हा तुम्ही पुन्हा स्थानिक विकासाकडे (local development) वळाल तेव्हा तो डिस्कनेक्ट करा.
हे तुमच्या फोनवरील ॲप्स उघडे ठेवण्यासारखे आहे. एक किंवा दोन ठीक आहेत. पण विनाकारण वीस ॲप्स बॅकग्राउंडमध्ये चालू ठेवल्यास बॅटरी संपते.
कमी टूल्स असलेले सर्व्हर्स निवडा
Not all MCP servers are designed with the same discipline. Some expose a lean interface of two or three focused actions. Others ship a sprawling catalog of 25 or 30 tools, many of which you will never invoke. A server with three tools might cost you 180 tokens per turn. One with 26 tools can cost 3,100. That is a 17x jump in overhead for a capability gap that may not matter to you.
Before installing a server, look at its tool manifest. If it registers a dozen overlapping operations and you only need one, consider whether you can configure it down, fork it, or write a slimmer wrapper. Every tool definition you can strip out is a direct and permanent token saving on every future turn.
Trim Tool Descriptions
The 80 to 150 token range per tool is not a law of nature. It is a function of how verbose the descriptions and schemas are. A bloated 400-token description eats five times the context of an 80-token description, and that fivefold penalty applies on every single turn.
Audit the servers you rely on. If a tool description reads like marketing copy, rewrite it. Cut adjectives. Cut examples that do not clarify the schema. Tighten the JSON. The model needs to understand what the tool does, but it does not need a paragraph of preamble. Treat tool definitions like code: the shorter and clearer, the better.
The Real Takeaway
MCP extends what Claude Code can reach. It does not extend your context window for free. The overhead is deterministic, recurring, and entirely disconnected from whether the tools see action.
Load only the servers your current task demands. Disconnect them when you are done. Audit tool counts and description lengths like you would audit any other dependency. The rule is simple: if the tool is not adding value in this specific session, it should not be adding tokens to your bill.
Source measurements and methodology: I added MCP servers to Claude Code — here’s what they cost in tokens
Join the GyaanSetu AI learning community for more engineering breakdowns: t.me/GyaanSetuAi
