Integration App MCP Server
आधिकारिकअपने ग्राहकों की ओर से किसी भी अन्य SaaS अनुप्रयोगों के साथ बातचीत करें।
दस्तावेज़
Membrane MCP सर्वर
Membrane MCP सर्वर एक मॉडल कॉन्टेक्स्ट प्रोटोकॉल (MCP) सर्वर है, यह Membrane पर जुड़े एकीकरणों के लिए क्रियाएँ उपकरण के रूप में प्रदान करता है।
यहाँ हमारा आधिकारिक AI एजेंट उदाहरण है जो आपको दिखाता है कि इस MCP सर्वर का अपने एप्लिकेशन में उपयोग कैसे करें।
📋 पूर्वापेक्षाएँ
- Node.js (v18 या उच्चतर)
- एक Membrane खाता
⚙️ स्थापना
git clone https://github.com/membranehq/mcp-server.git
cd mcp-server
npm install
npm run build
🛠️ स्थानीय विकास
विकास सर्वर को स्थानीय रूप से चलाने के लिए, इसे इस प्रकार प्रारंभ करें:
npm run dev
सर्वर http://localhost:3000 पर लाइव होगा ⚡️
🧪 परीक्षण चलाना
# Run the server in test mode
npm run start:test
# then run tests
npm test
🚀 परिनियोजन
इस MCP सर्वर का अपना उदाहरण अपनी पसंद की किसी भी क्लाउड होस्टिंग सेवा पर परिनियोजित करें।
🐳 Docker
परियोजना में आसान कंटेनरीकृत परिनियोजन के लिए एक Dockerfile शामिल है।
docker build -t membrane-mcp-server .
docker run -p 3000:3000 membrane-mcp-server
🔗 MCP सर्वर से जुड़ना
यह MCP सर्वर दो ट्रांसपोर्ट का समर्थन करता है:
| ट्रांसपोर्ट | एंडपॉइंट | स्थिति |
|---|---|---|
| SSE (सर्वर‑प्रेषित ईवेंट) | /sse | 🔴 पदावनत — MCP विनिर्देश में 5 नवंबर, 2024 से पदावनत |
| HTTP (स्ट्रीमेबल HTTP) | /mcp | 🟢 अनुशंसित — SSE का स्थान लेता है और द्विदिश स्ट्रीमिंग का समर्थन करता है |
🔐 प्रमाणीकरण
क्वेरी या Authorization हेडर के माध्यम से एक Membrane एक्सेस टोकन प्रदान करें:
?token=ACCESS_TOKEN
Authorization: Bearer ACCESS_TOKEN
SSE (पदावनत)
await client.connect(
new SSEClientTransport(
new URL(
`https://<HOSTED_MCP_SERVER_URL>/sse`
)
{
requestInit: {
headers: {
Authorization: `Bearer ${ACCESS_TOKEN}`,
},
},
}
)
);
स्ट्रीमेबल HTTP (अनुशंसित)
await client.connect(
new StreamableHTTPClientTransport(
new URL(`https://<HOSTED_MCP_SERVER_URL>/mcp`)
{
requestInit: {
headers: {
Authorization: `Bearer ${ACCESS_TOKEN}`,
},
},
}
)
);
⚡ स्थैतिक बनाम गतिशील मोड
डिफ़ॉल्ट रूप से, MCP सर्वर स्थैतिक मोड में चलता है, जिसका अर्थ है कि यह सभी जुड़े एकीकरणों के लिए सभी उपलब्ध उपकरण (क्रियाएँ) लौटाता है।
गतिशील मोड (?mode=dynamic) के साथ, सर्वर केवल एक उपकरण लौटाएगा: enable-tools। आप इस उपकरण का उपयोग उस सत्र के लिए वास्तव में आवश्यक उपकरणों को चुनिंदा रूप से सक्षम करने के लिए कर सकते हैं।
गतिशील मोड में, आपके कार्यान्वयन को यह पता लगाना चाहिए कि उपयोगकर्ता की क्वेरी के लिए कौन से उपकरण सबसे अधिक प्रासंगिक हैं। एक बार जब आप उन्हें पहचान लें, तो LLM को उचित सूची के साथ enable-tools उपकरण को कॉल करने के लिए प्रेरित करें।
यह व्यवहार में कैसे काम करता है, देखना चाहते हैं? हमारा AI एजेंट उदाहरण देखें।
import { Client } from '@modelcontextprotocol/sdk/client/index.js';
import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp.js';
const client = new Client({
name: 'example-membrane-mcp-client',
version: '1.0.0',
});
const transport = new StreamableHTTPClientTransport(
new URL(`https://<HOSTED_MCP_SERVER_URL>/mcp?mode=dynamic`),
{
requestInit: {
headers: {
Authorization: `Bearer ${ACCESS_TOKEN}`,
},
},
}
);
await client.connect(transport);
await client.callTool({
name: 'enable-tools',
arguments: {
tools: ['gmail-send-email', 'gmail-read-email'],
},
});
🔧 विशिष्ट एकीकरणों के लिए उपकरण प्राप्त करना
स्थैतिक मोड में, MCP सर्वर प्रदान किए गए टोकन से जुड़े सभी सक्रिय कनेक्शनों से उपकरण प्राप्त करता है।
आप apps क्वेरी पैरामीटर पास करके केवल एक विशिष्ट एकीकरण के लिए उपकरण प्राप्त करना चुन सकते हैं: /mcp?apps=google-calendar,google-docs
💬 चैट सत्र प्रबंधन (प्रायोगिक)
MCP सर्वर (केवल स्ट्रीमेबल-http ट्रांसपोर्ट) स्थायी चैट सत्रों का समर्थन करता है। उस विशिष्ट चैट के लिए सत्रों को स्वचालित रूप से ट्रैक करने हेतु अपने अनुरोधों में एक x-chat-id हेडर शामिल करें। यह एक प्रायोगिक सुविधा है जो हम मानक MCP सत्रों के अतिरिक्त प्रदान करते हैं।
नया चैट सत्र प्रारंभ करना:
POST /mcp
Authorization: Bearer YOUR_ACCESS_TOKEN
x-chat-id: my-awesome-chat-123
अपने चैट सत्र पुनर्प्राप्त करना:
GET /mcp/sessions
Authorization: Bearer YOUR_ACCESS_TOKEN
प्रतिक्रिया:
{
"my-awesome-chat-123": "session-uuid-1",
"another-chat-456": "session-uuid-2"
}
यह सुविधा आपको एक वार्तालाप के लिए समान सत्र का उपयोग करने देती है। यह व्यवहार में कैसे काम करता है, यह देखने के लिए हमारा AI एजेंट उदाहरण देखें।
अन्य MCP क्लाइंट कॉन्फ़िगर करना
📝 Cursor
इस सर्वर का Cursor के साथ उपयोग करने के लिए, ~/.cursor/mcp.json फ़ाइल अपडेट करें:
{
"mcpServers": {
"membrane": {
"url": "https://<HOSTED_MCP_SERVER_URL>/sse?token={ACCESS_TOKEN}"
}
}
}
परिवर्तनों को प्रभावी होने के लिए Cursor को पुनरारंभ करें।
🤖 Claude Desktop
इस सर्वर का Claude के साथ उपयोग करने के लिए, कॉन्फ़िग फ़ाइल अपडेट करें (सेटिंग्स > डेवलपर > एडिट कॉन्फ़िग):
{
"mcpServers": {
"membrane": {
"url": "https://<HOSTED_MCP_SERVER_URL>/sse?token={ACCESS_TOKEN}"
}
}
}
🔧 समस्या निवारण
- सुनिश्चित करें कि आपका एक्सेस टोकन मान्य है और आप इसे इन निर्देशों के अनुसार उत्पन्न कर रहे हैं
- स्टार्टअप या कनेक्शन प्रयासों के दौरान किसी भी त्रुटि या समस्या के लिए MCP सर्वर लॉग जाँचें।
- परीक्षण और डिबगिंग के लिए MCP इंस्पेक्टर का उपयोग करें