🔌 MCP क्या है?
The Model Context Protocol (MCP) एक खुला मानक है जो Anthropic द्वारा दिसंबर 2024 में प्रकाशित किया गया था और जो AI मॉडलों को बाहरी टूल्स, डेटा स्रोतों और सेवाओं से जोड़ने के लिए एक सार्वभौमिक इंटरफ़ेस परिभाषित करता है। MCP से पहले हर AI इंटीग्रेशन कस्टम, एक-बार का कार्य था। MCP यह मानकीकृत करता है कि AI क्लाइंट बाहरी क्षमताओं के साथ कैसे संवाद करते हैं — ताकि एक इंटीग्रेशन किसी भी अनुकूल AI सिस्टम के साथ काम करे।
MCP एक क्लाइंट-सर्वर प्रोटोकॉल है: MCP क्लाइंट AI सिस्टम होते हैं (जैसे Claude, Cursor, VS Code with Copilot) जो बाहरी क्षमताओं का उपयोग करना चाहते हैं। MCP सर्वर वे सेवाएँ हैं जो उन क्षमताओं को (GitHub, एक डेटाबेस, एक फाइल सिस्टम, एक वेब ब्राउज़र) एक मानकीकृत API के माध्यम से एक्सपोज़ करती हैं जिसे कोई भी MCP क्लाइंट उपयोग कर सकता है।
🔋 USB-C रूपक
USB-C से पहले, हर डिवाइस का अपना proprietary कनेक्टर था — एक फोन चार्जर लैपटॉप के साथ काम नहीं करता था, एक डिस्प्ले केबल स्टोरेज डिवाइस के साथ काम नहीं करता था। USB-C ने एक सार्वभौमिक मानक से इसे हल किया: एक पोर्ट, एक केबल, अनंत डिवाइसेज़।
MCP से पहले AI इंटीग्रेशन भी वही अराजकता थे। Claude को GitHub से जोड़ने के लिए कस्टम कोड चाहिए था। GPT-4 को उसी GitHub API से जोड़ने के लिए अलग कस्टम कोड चाहिए था। एक नया टूल जोड़ना मतलब हर AI प्लेटफ़ॉर्म के लिए इंटीग्रेशन को फिर से बनाना।
MCP AI के लिए USB-C है। एक मानक:
- एक बार MCP सर्वर बनाएं — कोई भी MCP क्लाइंट इसे उपयोग कर सकता है
- एक नया AI मॉडल अपनाएं — आपके मौजूदा MCP सर्वर तुरंत काम करेंगे
- MCP सर्वरों का इकोसिस्टम AI मॉडल डेवलपमेंट से स्वतंत्र रूप से बढ़ता है
⚙️ MCP कैसे काम करता है
MCP एक JSON-RPC 2.0 प्रोटोकॉल का उपयोग करता है एक ट्रांसपोर्ट लेयर पर (stdio लोकल सर्वरों के लिए, HTTP/SSE रिमोट सर्वरों के लिए)। संचार initialization, capability discovery, और request handling के lifecycle का पालन करता है।
तीन मुख्य प्रिमिटिव्स
| Primitive | यह क्या एक्सपोज़ करता है | Example |
|---|---|---|
| Tools | वो Functions जिन्हें AI कॉल कर सकता है (model-controlled) | search_github_issues, run_sql_query, send_email |
| Resources | डेटा जिसे AI पढ़ सकता है (application-controlled) | file:///workspace/src, db://customers/schema |
| Prompts | पुन: उपयोग योग्य प्रॉम्प्ट टेम्पलेट्स (उपयोगकर्ता-नियंत्रित) | code-review, summarize-pr, explain-error |
संचार प्रवाह
- इनिशियलाइज़: क्लायंट सर्वर से कनेक्ट होता है, प्रोटोकॉल वर्शन और क्षमताओं का आदान-प्रदान करता है
- खोजें: क्लायंट उपलब्ध टूल्स, रिसोर्सेस, और प्रॉम्प्ट्स की सूची का अनुरोध करता है
- कॉल करें: AI मॉडल किसी टूल को कॉल करने का निर्णय लेता है; क्लायंट सर्वर को अनुरोध भेजता है
- वापसी: सर्वर एक्शन को निष्पादित करता है और संरचित परिणाम क्लाइंट को वापस करता है
- जारी रखें: AI मॉडल परिणामों को समाहित करता है और तर्क जारी रखता है
ट्रांसपोर्ट विकल्प
| Transport | सबसे उपयुक्त | Notes |
|---|---|---|
| stdio | लोकल टूल्स, CLI एकीकरण | क्लाइंट सर्वर को subprocess के रूप में लॉन्च करता है; सबसे सरल सेटअप |
| HTTP + SSE | रिमोट/क्लाउड सेवाएँ, साझा टीमें | सर्वर स्वतंत्र रूप से चलता है; auth headers का समर्थन करता है |
| WebSocket | रीयल-टाइम द्विदिश (ड्राफ्ट) | स्ट्रीमिंग उपयोग मामलों के लिए प्रस्तावित |
🔄 MCP बनाम Function Calling
Function calling (टूल उपयोग) कुछ विशिष्ट AI APIs — OpenAI, Anthropic, Google — में निर्मित एक फीचर है, जो आपको कस्टम functions परिभाषित करने देता है जिन्हें मॉडल कॉल कर सकता है। MCP function calling के ऊपर या साथ में काम करने वाली एक परत है जो मानकीकृत करती है कैसे वे functions खोजे और कनेक्ट किए जाते हैं.
| Function Calling | MCP | |
|---|---|---|
| Scope | API-विशिष्ट, प्रति-रिक्वेस्ट | क्रॉस-प्लैटफ़ॉर्म, मानकीकृत |
| Discovery | आपके API कॉल में हार्डकोडेड | डायनामिक — सर्वर क्षमताओं की घोषणा करता है |
| Portability | एक AI प्रदाता से जुड़ा | किसी भी MCP-संगत क्लाइंट के साथ काम करता है |
| Resources | मानकीकृत नहीं | फर्स्ट-क्लास प्रिमिटिव (फाइलें, DBs, URIs) |
| सबसे उपयुक्त | सरल, एक-प्रदाता उपयोग मामलों के लिए | मल्टी-टूल, मल्टी-मॉडल प्रोडक्शन सिस्टम्स के लिए |
व्यवहार में, MCP सर्वर अक्सर अंतर्गत रूप से function calling का उपयोग करते हैं — MCP डिस्कवरी और कनेक्शन लेयर प्रदान करता है, जबकि function calling वास्तविक LLM-to-tool invocation संभालता है।
🏢 कौन MCP का समर्थन करता है
दिसंबर 2024 के लॉन्च के बाद से MCP अपनाना तेजी से बढ़ा है। अप्रैल 2026 तक, इकोसिस्टम में शामिल हैं:
MCP समर्थन वाले AI क्लाइंट
- Claude (Anthropic) — Claude.ai और Claude Code में नेटिव MCP समर्थन
- Cursor — कोड-सचेत AI सहायता के लिए MCP सर्वर
- VS Code (GitHub Copilot) — एजेंट मोड में MCP इंटीग्रेशन
- Windsurf (Codeium) — MCP सर्वर समर्थन
- Continue.dev — ओपन-सोर्स IDE असिस्टेंट with MCP
पॉपुलर MCP सर्वर
- Filesystem — read/write लोकल फाइलें (official Anthropic)
- GitHub — repos, PRs, issues, code search
- PostgreSQL / SQLite — डेटाबेस क्वेरी और schema एक्सप्लोरेशन
- Brave Search / Exa — बिना API keys के वेब सर्च
- Puppeteer / Playwright — ब्राउज़र ऑटोमेशन
- Slack / Linear / Notion — प्रोडक्टिविटी टूल इंटीग्रेशन
🚀 MCP के साथ शुरुआत
विकल्प 1: मौजूदा MCP सर्वरों का उपयोग करें (5 मिनट)
MCP का अनुभव लेने का सबसे तेज़ तरीका Claude Desktop का उपयोग करना है जिसमें प्री-बिल्ट सर्वर हों। अपने Claude Desktop config को संपादित करें ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/yourname/Documents"]
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_..." }
}
}
} विकल्प 2: एक MCP सर्वर बनाएं (30 मिनट)
Official SDKs TypeScript, Python, और Kotlin के लिए उपलब्ध हैं:
// TypeScript MCP server example
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
const server = new Server({ name: "my-server", version: "1.0.0" });
server.setRequestHandler("tools/list", async () => ({
tools: [{
name: "get_weather",
description: "Get current weather for a city",
inputSchema: {
type: "object",
properties: { city: { type: "string" } },
required: ["city"]
}
}]
}));
server.setRequestHandler("tools/call", async (request) => {
const { city } = request.params.arguments;
// ... fetch weather data
return { content: [{ type: "text", text: `Weather in ${city}: sunny, 22°C` }] };
});
const transport = new StdioServerTransport();
await server.connect(transport); 🔐 MCP सुरक्षा विचार
MCP की शक्ति — AI मॉडलों को टूल्स, फाइलों, और सेवाओं तक पहुँच देने की — सुरक्षा जोखिम भी पेश करती है जिनके खिलाफ डेवलपर्स को डिज़ाइन करना चाहिए।
| Risk | Description | Mitigation |
|---|---|---|
| MCP के माध्यम से प्रॉम्प्ट इंजेक्शन | टूल परिणामों में दुष्ट सामग्री AI को भ्रमित कर सकती है | टूल आउटपुट को sanitize करें; reasoning और action मॉडल अलग रखें |
| अति-privileged सर्वर | MCP सर्वर के पास आवश्यक से अधिक permissions हो सकते हैं | कमी का सिद्धांत (Principle of least privilege); जहाँ संभव हो read-only रखें |
| Confused deputy | AI बिना उपयोगकर्ता की जानकारी के हमलावर की ओर से काम कर सकता है | विनाशकारी/अपरिवर्तनीय कार्यों के लिए HITL पुष्टिकरण |
| सर्वर सप्लाई चेन | दुष्ट third-party MCP सर्वर डेटा एक्सफ़िल्ट्रेट कर सकता है | केवल भरोसेमंद, ऑडिटेड सर्वरों का उपयोग करें; सर्वर कोड की समीक्षा करें |
AI सुरक्षा कमजोरियों में विस्तृत जानकारी के लिए — जिसमें बताया गया है कि कैसे प्रॉम्प्ट इंजेक्शन MCP टूल परिणामों के माध्यम से हथियारबद्ध किया जा सकता है — हमारी गाइड देखें: Prompt Injection Explained.