विषय-सूची
- 1. MCP क्या है — AI और tools के बीच एक साझा नियम
- 2. लॉन्च के बाद दो साल में क्या हुआ
- 3. यह कैसे काम करता है — host, client, server और दो transport
- 4. मौजूदा specification 2026-07-28 में क्या बदला
- 5. मुख्य apps में server कैसे जोड़ें और config कहाँ रहता है
- 6. आज ही इस्तेमाल होने वाले servers और उन्हें कहाँ खोजें
- 7. 10 मिनट में आज़माएँ — Claude Code से एक folder पढ़वाएँ
- 8. अपना MCP server बनाएँ — न्यूनतम उदाहरण
- 9. सुरक्षा — आधिकारिक Security Best Practices की मुख्य बातें
- 10. MCP, API, Skills या A2A — कब क्या चुनें
- 11. ज़रूरत से ज़्यादा न जोड़ें, न बनाएँ
- सारांश
- अक्सर पूछे जाने वाले सवाल
MCP (Model Context Protocol) एक खुला specification है, जिसके ज़रिए AI apps (Claude Code, ChatGPT, VS Code आदि) बाहरी tools और data (GitHub, databases, कंपनी के अंदरूनी systems आदि) को एक ही तरीके से इस्तेमाल करते हैं। किसी tool को एक बार "MCP server" के रूप में बना दें, तो MCP सपोर्ट करने वाला हर app उसे इस्तेमाल कर सकता है। हर device में लग जाने वाली एक केबल की तरह होने के कारण इसे "AI का USB-C" कहा जाता है।
Anthropic ने इसे 25 नवंबर 2024 को जारी किया और दिसंबर 2025 में Linux Foundation के तहत Agentic AI Foundation (AAIF) को दान कर दिया। Specification का मौजूदा version 2026-07-28 है, और इसी से MCP stateless हो गया — अब हर connection की "session" नहीं होती। यह लेख MCP specification और हर कंपनी के आधिकारिक दस्तावेज़ों (12 नवंबर 2026 को जाँचे गए) के आधार पर बताता है कि MCP कैसे काम करता है, मौजूदा specification में क्या बदला, मुख्य apps में servers कैसे जोड़ें, 10 मिनट का hands-on और आधिकारिक सुरक्षा नियम।
Host (AI app)
Claude Code, ChatGPT, VS Code आदि
इसके clients एक-एक server से जुड़ते हैं और tools की सूची लेते हैं
MCP server
GitHub, Notion, अपना बनाया
तीन तरह की चीज़ें देता है: Tools, Resources, Prompts
Tools और data
API, database, files
जिन्हें server असल में पढ़ता और लिखता है
अपने ही computer के अंदर transport stdio होता है, network के पार Streamable HTTP। कौन-सा tool कब इस्तेमाल हो, यह AI तय करता है, और host उसे call करने से पहले user की मंज़ूरी लेता है।
1. MCP क्या है — AI और tools के बीच एक साझा नियम
MCP से पहले हर AI app अपने ढंग से tools से जुड़ता था। "Slack पर post करो" वाला एक tool तीन apps में चलाना हो तो उसे तीन बार बनाना पड़ता था। MCP ने जुड़ने की इस परत को एक ही specification में बदल दिया। M apps और N tools हों तो पहले जहाँ M×N integrations लगते थे, अब M+N implementations काफ़ी हैं। Specification खुद कहता है कि उसने Language Server Protocol (LSP) से प्रेरणा ली है, जिसने editors में programming languages का सपोर्ट एक जैसा किया।
Server जो तीन चीज़ें दे सकता है
| Feature | क्या है | उदाहरण |
|---|---|---|
| Tools | Functions जिन्हें AI call करता है | Issue बनाना, stock की संख्या लौटाना, database से query करना |
| Resources | Documents और data जिन्हें user या AI पढ़ते हैं | File का content, table की संरचना, अंदरूनी दस्तावेज़ |
| Prompts | निर्देशों के templates जिन्हें user चुनकर चलाता है | "इस PR का review करो" वाली प्रक्रिया |
उलटी दिशा में client (app की तरफ़) servers को Elicitation दे सकता है, जिससे server user से अतिरिक्त जानकारी माँग सकता है। पुराने versions में मौजूद Roots (server को बताना कि वह किन folders में काम कर सकता है) और Sampling (server का app के model से text बनवाना) मौजूदा version में deprecated हो गए हैं (खंड 4)।
2. लॉन्च के बाद दो साल में क्या हुआ
MCP specification के versions का नाम "वह आख़िरी तारीख़ जब पीछे से असंगत (backwards-incompatible) बदलाव किए गए" होता है। मुख्य घटनाएँ इन versions के साथ नीचे हैं।
- 25 नवंबर 2024Anthropic ने specification और SDKs जारी किए। पहला version 2024-11-05 था।
- 26 मार्च 2025Version 2025-03-26 में remote servers के लिए Streamable HTTP और OAuth पर आधारित authorization आए, और पुराना HTTP+SSE transport deprecated हुआ। उसी दिन (अमेरिकी समय) OpenAI के Sam Altman ने घोषणा की कि OpenAI अपने products में MCP को सपोर्ट करेगा (TechCrunch की रिपोर्ट)।
- 18 जून 2025Version 2025-06-18 में tools के structured (typed) output और Elicitation आए।
- 25 नवंबर 2025Version 2025-11-25 में लंबे काम के लिए Tasks (experimental) और Client ID Metadata Documents आए, जिनसे client एक URL के ज़रिए अपनी पहचान बताता है।
- 9 दिसंबर 2025Anthropic ने MCP को AAIF को दान किया, जिसे Anthropic, Block और OpenAI ने मिलकर बनाया है और Google, Microsoft, AWS, Cloudflare व Bloomberg का समर्थन है। उस दिन की घोषणा में 10,000 से ज़्यादा सक्रिय सार्वजनिक MCP servers और Python व TypeScript SDKs के हर महीने 9.7 करोड़ से ज़्यादा downloads बताए गए, और अपनाने वालों में ChatGPT, Cursor, Gemini, Microsoft Copilot और VS Code के नाम थे।
- 28 जुलाई 2026मौजूदा version 2026-07-28 ने handshake (initialize) और sessions हटा दिए और MCP को stateless बना दिया (खंड 4)।
MCP इसलिए फैला क्योंकि specification JSON-RPC 2.0 और JSON Schema के ऊपर एक पतली, आसानी से लागू होने वाली परत है; क्योंकि यह जल्दी ही खुले specification के रूप में आया; और क्योंकि दान के बाद यह किसी एक कंपनी की संपत्ति नहीं रहा। जब प्रतिस्पर्धी कंपनियाँ एक ही specification पर हों, तो tool बनाने वाले को एक ही बार बनाना पड़ता है।
3. यह कैसे काम करता है — host, client, server और दो transport
Specification में तीन भूमिकाएँ हैं। Host वह AI app है जिसे user इस्तेमाल करता है, client वह connector है जिसे host हर server के लिए चलाता है (हर server के लिए एक), और server वह पक्ष है जो tools और data देता है। Messages JSON-RPC 2.0 में चलते हैं: client tools की सूची लेता है (tools/list), AI के चुने tool को arguments के साथ call करता है (tools/call) और नतीजा वापस पाता है।
| Transport | कहाँ चलता है | किसके लिए ठीक | Authentication |
|---|---|---|---|
| stdio | आपका अपना computer (app server को process के रूप में शुरू करता है और standard input/output से बात करता है) | Files, local Git, local database | Specification का authorization flow इस्तेमाल नहीं होता; credentials environment variables जैसे तरीकों से दिए जाते हैं |
| Streamable HTTP | Service की तरफ़ (URL से जुड़ते हैं) | GitHub, Notion जैसी services, कंपनी के अंदर साझा servers | OAuth 2.1 पर आधारित specification का Authorization |
| HTTP+SSE | पुराना remote transport | नए काम में इस्तेमाल न करें | Deprecated (Streamable HTTP पर जाएँ) |
4. मौजूदा specification 2026-07-28 में क्या बदला
Specification के versioning पेज के अनुसार मौजूदा (Current) version 2026-07-28 है। पिछले version 2025-11-25 की तुलना में जुड़ने का तरीका काफ़ी बदल गया। Changelog के अनुसार मुख्य अंतर:
| विषय | 2025-11-25 तक | 2026-07-28 |
|---|---|---|
| Connection की शुरुआत | initialize handshake से version और capabilities तय होते हैं | Handshake नहीं; हर request अपने _meta में version और capabilities लेकर चलती है, और server server/discover से अपने supported versions बताता है |
| Sessions | Streamable HTTP में Mcp-Session-Id | Protocol स्तर पर sessions नहीं; कई calls तक चलने वाली state server की दी हुई ID के रूप में tool arguments में जाती है |
| बदलाव की सूचनाएँ | HTTP GET stream, resources/subscribe | एक ही subscriptions/listen stream में इकट्ठा |
| Server की तरफ़ से requests | Server खुद requests भेजता है (sampling/createMessage, elicitation/create आदि) | Server "input चाहिए" (input_required) वाला result लौटाता है, और client जवाब जोड़कर वही request दोबारा भेजता है (Multi Round-Trip Requests) |
| Stream टूटने पर | SSE event IDs से दोबारा delivery | दोबारा शुरू करना नहीं; client नई ID के साथ request फिर भेजता है |
| लंबे काम (Tasks) | Core का experimental feature | आधिकारिक extension (io.modelcontextprotocol/tasks) में भेजा गया |
| Deprecated | HTTP+SSE | Roots, Sampling, Logging, HTTP+SSE और OAuth का Dynamic Client Registration (इसकी जगह Client ID Metadata Documents) |
Specification की feature lifecycle नीति के अनुसार deprecated features हटाए जाने से पहले कम से कम बारह महीने बने रहते हैं (सक्रिय सुरक्षा खतरे में, जैसे प्रकाशित vulnerability या असल में हो रहा दुरुपयोग जिसे protocol के भीतर रोका न जा सके, यह अवधि घटकर कम से कम 90 दिन हो सकती है)। Specification यह भी बताता है कि 2025-11-25 और उससे पुराने handshake वाले पक्षों से backward-compatible तरीके से कैसे जुड़ें।
इस्तेमाल करने वालों और बनाने वालों के लिए असर
- Users
App सपोर्ट करता है तो कुछ नहीं करना
Claude Code, MCP TypeScript SDK 2.0 पर बने अपने "v2 runtime" से 2026-07-28 सपोर्ट करता है। वह हर server से पूछता है कि क्या वह नया version सपोर्ट करता है; हाँ हो तो नया version, नहीं तो पुराने handshake से जुड़ता है। Feature flags लाने वाली sessions में v2.1.232 से और न लाने वाली sessions में v2.1.274 से v2 runtime default है। पुराने protocol पर रहना हो तो environment variable
MCP_PROTOCOL_NEGOTIATION=legacyसेट करें (Claude Code का MCP documentation)। - Developers
2.x SDKs पर जाएँ और deprecated features नए सिरे से न अपनाएँ
Python SDK 2.x पर है (PyPI पर
mcp2.3.0, 2 अक्टूबर 2026 को जारी), और TypeScript SDK की 2.x series 2026-07-28 सपोर्ट करती है। 2.x में TypeScript packages@modelcontextprotocol/serverऔर@modelcontextprotocol/clientमें बँट गए हैं (npm पर 2.4.0), जबकि पुराना@modelcontextprotocol/sdk1.x पर ही है (1.32.2)। नए servers में Roots की जगह folders tool arguments या configuration से दें, और Logging की जगह standard error या OpenTelemetry में log करें। कई calls तक चलने वाली state के लिए ऐसी IDs बनाएँ जिनका अंदाज़ा न लगाया जा सके और उन्हें user से जोड़ें (खंड 9)। - Extensions
Core के बाहर अब वैकल्पिक "extensions" हैं
Specification का overview पेज मुख्य extensions गिनाता है: लंबे काम के लिए Tasks, बातचीत के अंदर charts और forms जैसा UI दिखाने के लिए MCP Apps, और MCP से agents के निर्देश बाँटने के लिए Skills over MCP (working group में चर्चा में)। Extension तभी इस्तेमाल होता है जब client और server दोनों उसे सपोर्ट करें।
5. मुख्य apps में server कैसे जोड़ें और config कहाँ रहता है
एक ही MCP server हर app में अलग तरीके से जुड़ता है और अलग file में रहता है। हर कंपनी के आधिकारिक दस्तावेज़ यह कहते हैं (12 नवंबर 2026 को जाँचा गया)।
| App | कैसे जोड़ें | Config कहाँ है | ध्यान दें |
|---|---|---|---|
| Claude Code | claude mcp add | अपने लिए ~/.claude.json, team के साथ साझा करने के लिए project root में .mcp.json | Connection की स्थिति /mcp में देखें |
| Claude Desktop | Config file बदलें | claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\, Linux: ~/.config/Claude/) | बदलने के बाद app दोबारा शुरू करें (आधिकारिक गाइड) |
| Codex (CLI) | codex mcp add | ~/.codex/config.toml में [mcp_servers.name] table (भरोसेमंद projects में .codex/config.toml भी) | OAuth servers के लिए codex mcp login name |
| Gemini CLI | gemini mcp add | settings.json में mcpServers (.gemini/ या ~/.gemini/) | trust: true हर call की पुष्टि छोड़ देता है, इसलिए सिर्फ़ अपने नियंत्रण वाले servers के लिए (आधिकारिक पेज के ऊपर लिखा है कि free tier और Google One users के लिए 18 जून 2026 को Gemini CLI की जगह Antigravity CLI आ गया) |
| VS Code | Command Palette में "MCP: Add Server" | Guided flow में workspace या global चुनें | Documentation चेतावनी देता है कि local servers आपके computer पर code चलाते हैं |
| ChatGPT | Plugins में "Add custom MCP server" (पहले developer mode चालू करना ज़रूरी नहीं) | Workspace के UI में सेटिंग (सार्वजनिक HTTPS endpoint या Secure MCP Tunnel) | सिर्फ़ Business, Enterprise और Edu का web version (Business में सिर्फ़ admins और owners जोड़ सकते हैं, Enterprise और Edu में अनुमति पाए members भी; workspace के लिए publish सिर्फ़ admins और owners करते हैं) (OpenAI Help) |
स्रोत: Claude Code, Codex, Gemini CLI और VS Code का MCP documentation। claude.ai में जोड़े गए connectors (remote MCP servers) Claude Code के /mcp में भी दिखते हैं, लेकिन API key से login होने पर load नहीं होते (connectors बंद हों तो क्या करें)।
6. आज ही इस्तेमाल होने वाले servers और उन्हें कहाँ खोजें
| Server | क्या करता है | आम इस्तेमाल |
|---|---|---|
| filesystem (reference server) | सिर्फ़ अनुमति वाले folders में files पढ़ता-लिखता है | AI से documents या code पढ़वाना |
| fetch (reference server) | Web page लाकर उसे AI के पढ़ने लायक रूप में बदलता है | URL देकर सारांश पाना |
| git (reference server) | Local Git repository का history पढ़ता है और उस पर काम करता है | History से बदलाव समझाने को कहना |
| GitHub (GitHub का चलाया remote server) | Issues, PRs और repository के काम | PR review, मिली गड़बड़ियों को issues बनाना |
| Notion (Notion का चलाया remote server) | आपके Notion workspace के साथ काम करता है | अंदरूनी दस्तावेज़ ढूँढना और सारांश बनाना |
Servers खोजने के लिए सार्वजनिक servers की सूची MCP Registry और Anthropic के जाँचे connectors वाली Anthropic Directory से शुरू करें। आधिकारिक repository में अब सात reference servers (Everything, Fetch, Filesystem, Git, Memory, Sequential Thinking, Time) बचे हैं; उसका README इन्हें अपना server बनाने वाले developers के लिए सीखने के उदाहरण बताता है और कहता है कि सुरक्षा की ज़रूरतें खुद जाँचें। पहले वहाँ रहे GitHub, PostgreSQL, Slack आदि के servers servers-archived में चले गए (GitHub का server अब GitHub खुद चलाता है, Slack का Zencoder संभालता है)। पुराने tutorials को आँख मूँदकर न अपनाएँ।
7. 10 मिनट में आज़माएँ — Claude Code से एक folder पढ़वाएँ
आधिकारिक filesystem server से आप Claude Code को सिर्फ़ अपना चुना एक folder पढ़ने देते हैं। मान लिया गया है कि Node.js (npx) installed है।
- Test folder बनाएँ। ऐसा खाली folder बनाएँ जिसमें कुछ ज़रूरी न हो (जैसे
~/mcp-test) और उसमें एक छोटीREADME.mdरखें। Server सिर्फ़ इसी folder को छू सकेगा। - Server जोड़ें। macOS और Linux पर नीचे का command चलाएँ।
--के बाद का सब कुछ server के start command के रूप में जैसा का तैसा जाता है।
Native Windows (WSL नहीं) पर भी इसी तरह जोड़ें, folder कोclaude mcp add --transport stdio files -- npx -y @modelcontextprotocol/server-filesystem ~/mcp-testC:\mcp-testकी तरह लिखें। अगरnpxशुरू न हो, तो reference server के README में Windows के लिए दिए तरीके से उसेcmd /cमें लपेटें।
Folder का path अपने environment के हिसाब से बदलें।claude mcp add --transport stdio files -- cmd /c npx -y @modelcontextprotocol/server-filesystem C:\mcp-test - Connection जाँचें। Claude Code शुरू करें,
/mcpखोलें और देखें किfilesconnectedहै।failedदिखे तो MCP server connection errors कैसे ठीक करें देखें। - इस्तेमाल करें। कहें "mcp-test के README का सारांश दो"। Tool इस्तेमाल करने से पहले Claude Code अनुमति माँगता है; अनुमति देने से पहले tool का नाम और arguments देखें।
- साफ़ करें। काम पूरा होने पर
claude mcp remove filesसे हटा दें।
Remote servers URL से जोड़े जाते हैं (जैसे claude mcp add --transport http notion https://mcp.notion.com/mcp); जोड़ने के बाद /mcp से authentication पूरा करें। तीन scopes हैं: default local सिर्फ़ आपके लिए उस project में, --scope project team के साथ साझा करने के लिए project root की .mcp.json में लिखता है, और --scope user आपके सभी projects में उपलब्ध कराता है। जिन servers के credentials version control में नहीं जाने चाहिए, उन्हें local में रखें।
8. अपना MCP server बनाएँ — न्यूनतम उदाहरण
Servers इस्तेमाल करना भी उपयोगी है, लेकिन MCP की असली ताकत तब दिखती है जब आप अपनी कंपनी के अपने tools AI के लिए खोलते हैं। Python SDK (2.x) से लगभग दर्जन भर lines काफ़ी हैं। उदाहरण एक ऐसा server है जो "मौजूदा stock की संख्या लौटाता है"।
SDK को uv add "mcp[cli]" (या pip install "mcp[cli]") से install करें। [cli] जोड़ने से नीचे इस्तेमाल होने वाले mcp dev और mcp run commands भी आ जाते हैं।
from mcp.server import MCPServer
mcp = MCPServer("inventory-server")
@mcp.tool()
def get_stock(sku: str) -> int:
"""किसी SKU का मौजूदा stock लौटाता है"""
# यहाँ अपने अंदरूनी inventory DB की query लिखें
return query_internal_db(sku)
if __name__ == "__main__":
mcp.run(transport="stdio")
- जाँचें
SDK के README वाला
uv run mcp dev server.pyआधिकारिक testing UI (MCP Inspector) खोलता है, जिसमें AI के बिना tools की सूची और calls के नतीजे जाँचे जा सकते हैं। - जोड़ें
Claude Code में:
claude mcp add --transport stdio inventory -- python server.py। Function का docstring ही AI को दिखने वाला tool का विवरण बनता है, इसलिए साफ़ लिखें कि वह क्या लौटाता है। - साझा करें
कंपनी के अंदर साझा करने के लिए
uv run mcp run server.py --transport streamable-httpइसे HTTP server बना देता है। तब खंड 9 के authorization और tokens के नियम मानें।
आधिकारिक SDKs हैं: TypeScript, Python, C#, Go, Rust और Ruby (Tier 1), Java (Tier 2), और Swift, PHP व Kotlin (Tier 3)। Tier बताता है कि features कितने पूरे हैं और maintenance का वादा कितना है, और हर SDK specification के नए versions अपनी रफ़्तार से अपनाता है।
9. सुरक्षा — आधिकारिक Security Best Practices की मुख्य बातें
Specification tools को "मनमाना code चलाना" मानता है और तय करता है कि host को कोई भी tool call करने से पहले user की स्पष्ट सहमति लेनी होगी। Tools के विवरण और annotations को तब तक भरोसेमंद नहीं माना जाता जब तक वे किसी भरोसेमंद server से न आए हों। इसके ऊपर, आधिकारिक Security Best Practices MCP से जुड़े खास हमले और उनके बचाव बताते हैं।
| हमला | क्या होता है | Specification क्या माँगता है | किससे जुड़ा |
|---|---|---|---|
| Local MCP server compromise | Config में घुसाया गया start command मनमाने commands चलाता है, जैसे आपकी SSH keys बाहर भेजना | One-click setup वाले clients को पूरा command बिना काटे दिखाना और मंज़ूरी लेनी होगी (MUST), और servers को sandbox में न्यूनतम अधिकारों के साथ चलाना चाहिए (SHOULD) | Users, app बनाने वाले |
| Token passthrough | Server किसी दूसरी service के लिए जारी token लेकर उसे आगे API को भेज देता है | ऐसे tokens न लें जो इस MCP server के लिए जारी नहीं हुए (MUST NOT) | Server बनाने वाले |
| Confused deputy | Third-party API का proxy server consent screen छोड़ देता है और authorization code चोरी हो जाता है | Third-party authorization से पहले हर client के लिए सहमति लें (MUST) और redirect_uri को हूबहू मिलाएँ | Proxy server बनाने वाले |
| SSRF | Malicious server OAuth URLs में अंदरूनी पते (जैसे 169.254.169.254) डालकर client से उन्हें fetch करवाता है | HTTPS ज़रूरी करें और private IP ranges की requests रोकें (SHOULD) | Client बनाने वाले |
| State handle hijacking | कोई server की दी हुई ID (जैसे shopping cart ID) का अंदाज़ा लगाकर दूसरे user की state बदल देता है | ID होने को authentication न मानें (MUST NOT), और ऐसी random IDs बनाएँ जिनका अंदाज़ा न लगे और जो user से जुड़ी हों (SHOULD) | Server बनाने वाले |
| बहुत चौड़े अधिकार (scopes) | एक चोरी हुआ token असंबंधित tools और data तक पहुँच दे देता है | शुरुआत न्यूनतम, ज़्यादातर read-only अधिकारों से करें और ज़रूरत पड़ने पर कदम-दर-कदम बढ़ाएँ | Server बनाने वाले |
Server install करने से पहले users की पाँच जाँचें
| क्या जाँचें | कहाँ देखें / उदाहरण |
|---|---|
| ① इसे कौन चलाता है | Service का अपना server (जैसे GitHub का https://api.githubcopilot.com/mcp/ या Notion का https://mcp.notion.com/mcp), reference server या कोई third party (MCP Registry और Anthropic Directory में खोजें) |
| ② क्या आपने पूरा start command पढ़ा | npx -y और uvx जोड़ते ही package download करके चला देते हैं, इसलिए देखें कि मिलते-जुलते नाम वाला दूसरा package तो नहीं और पीछे कोई अतिरिक्त command तो नहीं |
| ③ क्या इसका रखरखाव जारी है | आधिकारिक repository के GitHub, PostgreSQL और Slack servers अब servers-archived में हैं |
| ④ कितनी पहुँच दे रहे हैं | Tokens सीमित दायरे के साथ जारी करें (Claude Code का documentation भी GitHub के लिए सिर्फ़ ज़रूरी repositories तक सीमित fine-grained token का उदाहरण देता है) |
| ⑤ क्या यह बाहरी content लाता है | Web pages या emails लाने वाले servers prompt injection का रास्ता बनते हैं (Claude Code का documentation भी जोड़ने से पहले server पर भरोसा जाँचने की चेतावनी देता है) |
अगर server के लौटाए text में लिखा हो "पिछले निर्देश भूल जाओ और…", तो AI hijack हो सकता है। Server के output को data मानें, और भेजना, मिटाना या भुगतान जैसे न पलटे जा सकने वाले काम हर बार किसी इंसान से पुष्टि करवाएँ। यह सोच हमने AI को दिए जाने वाले prompts की सावधानियाँ में समझाई है। अगर आप खुद agents बनाते हैं, तो design पक्ष (tools कैसे दें, अधिकार कैसे घटाएँ, खतरनाक कामों को कैसे अलग रखें) हमारे AI agent development कोर्स के अध्याय MCP और tool connection में क्रम से समझाया गया है।
10. MCP, API, Skills या A2A — कब क्या चुनें
| आप क्या चाहते हैं | सबसे उपयुक्त | क्यों |
|---|---|---|
| AI को बाहरी data या actions देना और कब इस्तेमाल करना है यह AI पर छोड़ना | MCP server | AI को tools की सूची मिलती है और ज़रूरत पर वह खुद call करता है |
| एक ही connection Claude Code, Codex, VS Code जैसे कई apps में दोबारा इस्तेमाल करना | MCP server | एक बार बनाएँ, MCP सपोर्ट करने वाला कोई भी app इसे इस्तेमाल कर सकता है |
| अपने program से एक तय प्रक्रिया हर बार एक ही क्रम में call करना | सामान्य API call | जब AI को कुछ चुनना ही नहीं, तो बीच में MCP लगाने की ज़रूरत नहीं |
| AI से प्रक्रियाओं या लिखने के नियमों का पालन करवाना (बाहरी connection की ज़रूरत नहीं) | Skills | ज़रूरत connection की नहीं, निर्देश-पुस्तिका की है |
| किसी दूसरी team या कंपनी के बनाए AI agent को काम सौंपना | A2A | सामने tool नहीं, agent है (अगर MCP tools से "खड़ा" जुड़ाव है, तो A2A agents के बीच "आड़ा" जुड़ाव है) |
ये चारों एक-दूसरे को बाहर नहीं करते। जैसे: MCP से ताज़ा data लाना, Skill की प्रक्रिया से उसे व्यवस्थित करना और A2A से दूसरे विभाग के agent को सौंपना। MCP servers को Claude Code plugins में शामिल करके skills और hooks के साथ team में बाँटा भी जा सकता है।
11. ज़रूरत से ज़्यादा न जोड़ें, न बनाएँ
- Context
Tools के नतीजे context खाते हैं
Claude Code default रूप से tool search इस्तेमाल करता है: session शुरू होने पर सिर्फ़ tools के नाम और servers के निर्देश load होते हैं, और definitions ज़रूरत पर। फिर भी नतीजे context लेते हैं: एक output 10,000 tokens से ज़्यादा हो तो चेतावनी आती है, और default सीमा 25,000 tokens है (
MAX_MCP_OUTPUT_TOKENSसे बदल सकते हैं)। - Design
सब कुछ MCP न बनाएँ
एक request जितने ज़्यादा tools call करती है, उतना ज़्यादा समय और पैसा लगता है। जहाँ AI को चुनना नहीं, वहाँ सामान्य program या API call तेज़ और भरोसेमंद है।
- Specification
मानकर चलें कि specification बदलेगा
2026-07-28 जैसे कुछ versions जुड़ने का तरीका ही बदल देते हैं। Deprecated features आम तौर पर कम से कम बारह महीने रहते हैं (सक्रिय सुरक्षा खतरे में कम से कम 90 दिन), फिर भी SDK updates के साथ अपने servers जाँचते रहें।
- कमाई
क्या अपने server से कमाई हो सकती है
MCP में अपना कोई billing तंत्र नहीं है। बिक्री के रास्ते और fees की तुलना हमने क्या MCP servers से कमाई हो सकती है में की है।
सारांश
- MCP एक खुला specification है जो AI apps को बाहरी tools और data से जोड़ता है। Anthropic ने इसे नवंबर 2024 में जारी किया और दिसंबर 2025 में Linux Foundation के तहत AAIF को दान किया।
- भूमिकाएँ हैं host, client और server। Servers stdio या Streamable HTTP पर Tools, Resources और Prompts देते हैं।
- मौजूदा version 2026-07-28 है। इसने handshake और sessions हटाकर protocol को stateless बनाया और Roots, Sampling व Logging को deprecated किया।
- Claude Code, Codex और Gemini CLI एक
mcp addcommand से server जोड़ते हैं, Claude Desktop config file से, और VS Code Command Palette से। - शुरुआत filesystem reference server को एक खाली folder पर आज़माकर करें और
/mcpमें connection जाँचें। - Python SDK से अपना server लगभग दर्जन भर lines में बनता है। जोड़ने से पहले MCP Inspector में जाँचें।
- आधिकारिक Security Best Practices पूरा start command दिखाकर मंज़ूरी लेने, server के लिए जारी न हुए tokens ठुकराने, अंदाज़ा न लगने वाली IDs और न्यूनतम अधिकारों की माँग करते हैं।
अक्सर पूछे जाने वाले सवाल
Q1. क्या MCP इस्तेमाल करने के लिए खास सीखना पड़ता है?
सिर्फ़ इस्तेमाल के लिए नहीं। Claude Code में claude mcp add की एक line, और Claude Desktop में config file में कुछ lines काफ़ी हैं। अपना server बनाने में भी SDK JSON-RPC की बारीकियाँ संभाल लेता है, इसलिए आप एक function लिखकर और decorator लगाकर शुरू कर सकते हैं।
Q2. क्या ChatGPT में MCP इस्तेमाल हो सकता है?
हाँ। 12 नवंबर 2026 को जाँची गई OpenAI Help के अनुसार, अपने MCP servers को ChatGPT से जोड़ना (write actions सहित MCP का पूरा सपोर्ट) ChatGPT Business, Enterprise और Edu के web version में उपलब्ध है। Plugins में "Add custom MCP server" से server का सार्वजनिक HTTPS endpoint (या Secure MCP Tunnel) जोड़ें और जोखिम की चेतावनी स्वीकार करें; पहले developer mode चालू करना ज़रूरी नहीं। Business में सिर्फ़ admins और owners servers जोड़ सकते हैं; Enterprise और Edu में admins role-based access control (RBAC) से चुने हुए members को भी यह अनुमति दे सकते हैं। Workspace के लिए publish सिर्फ़ admins और owners कर सकते हैं, और mobile से जोड़ना संभव नहीं। विवरण के लिए OpenAI Help देखें।
Q3. क्या version 2026-07-28 के साथ पुराने servers काम करना बंद कर देंगे?
तुरंत नहीं। Specification में 2025-11-25 और उससे पुराने handshake वाले पक्षों से backward-compatible तरीके से जुड़ने की प्रक्रिया है, और Claude Code नए version को सपोर्ट न करने वाले servers से पुराने protocol पर जुड़ता है। Deprecated features भी आम तौर पर specification में कम से कम बारह महीने रहते हैं (सिर्फ़ सक्रिय सुरक्षा खतरे में कम से कम 90 दिन)। अपने servers को 2.x SDK पर ले जाते समय जाँचें कि वे Roots, Sampling या Logging पर निर्भर तो नहीं।
Q4. क्या MCP से कंपनी का अंदरूनी database AI के लिए खोलना सुरक्षित है?
यह अधिकारों के design पर निर्भर है। Read-only connection इस्तेमाल करें और tools के रूप में सिर्फ़ सख़्ती से जाँचे गए arguments वाली तय queries दें, तो यह AI से कच्चा SQL लिखवाने से कहीं ज़्यादा सुरक्षित है। "कोई भी SQL चला सकने वाला tool" खतरनाक है। HTTP पर साझा करें तो खंड 9 के अनुसार सिर्फ़ अपने server के लिए जारी tokens लें, अधिकार न्यूनतम रखें और logs रखें।
Q5. क्या MCP और function calling (tool calling) एक ही चीज़ हैं?
ये अलग-अलग परतों पर हैं। Function calling model API के अंदर का वह format है जिससे कहा जाता है "मैं इस function को इन arguments के साथ call करना चाहता हूँ", जबकि MCP app और बाहरी servers के बीच बातचीत का नियम है। MCP सपोर्ट करने वाला app servers से मिली tools की सूची model को उसके tool-calling format में देता है, और model के चुने call को MCP के ज़रिए server तक भेजता है।