मॉडल कॉन्टेक्स्ट प्रोटोकॉल (एमसीपी) सर्वर, लार्ज लैंग्वेज मॉडल (एलएलएम) या एआई ऐप्लिकेशन को कॉन्टेक्स्ट, डेटा या सुविधाएं देने वाली बाहरी सेवा के बीच प्रॉक्सी के तौर पर काम करता है. एमसीपी सर्वर, एआई ऐप्लिकेशन को डेटाबेस और वेब सेवाओं जैसे बाहरी सिस्टम से कनेक्ट करते हैं. साथ ही, उनके जवाबों को ऐसे फ़ॉर्मैट में बदलते हैं जिसे एआई ऐप्लिकेशन समझ सके.
एमसीपी टूल
एमसीपी टूल एक फ़ंक्शन या एक्ज़ीक्यूटेबल क्षमता होती है. इसे एमसीपी सर्वर, एलएलएम या एआई ऐप्लिकेशन के लिए उपलब्ध कराता है, ताकि वह असल दुनिया में कोई कार्रवाई कर सके.
gmailmcp.googleapis.com एमसीपी सर्वर में ये टूल मौजूद हैं:
| एमसीपी टूल | |
|---|---|
| create_draft |
इससे पुष्टि किए गए उपयोगकर्ता के Gmail खाते में एक नया ड्राफ़्ट ईमेल बन जाता है. यह टूल, ईमेल पाने वालों के पते, विषय, और मुख्य कॉन्टेंट को इनपुट के तौर पर लेता है. यह बनाए गए Gmail ड्राफ़्ट का आईडी दिखाता है. |
| list_drafts |
इस तरीके से, पुष्टि किए गए उपयोगकर्ता के Gmail खाते से ड्राफ़्ट किए गए ईमेल की सूची मिलती है. यह टूल, क्वेरी स्ट्रिंग के आधार पर ड्राफ़्ट को फ़िल्टर कर सकता है. साथ ही, इसमें पेज नंबर के हिसाब से नतीजे देखने की सुविधा भी उपलब्ध है. यह फ़ंक्शन, ड्राफ़्ट की सूची दिखाता है. इसमें उनके आईडी और विषय शामिल होते हैं. |
| get_thread | यह पुष्टि किए गए उपयोगकर्ता के Gmail खाते से किसी ईमेल थ्रेड को वापस लाता है. इसमें थ्रेड के मैसेज की सूची भी शामिल होती है. |
| search_threads |
इस तरीके से, पुष्टि किए गए उपयोगकर्ता के Gmail खाते से ईमेल थ्रेड की सूची मिलती है. यह टूल, क्वेरी स्ट्रिंग के आधार पर थ्रेड को फ़िल्टर कर सकता है. साथ ही, इसमें पेज नंबर के हिसाब से नतीजे दिखाने की सुविधा भी काम करती है. यह थ्रेड की सूची दिखाता है. इसमें थ्रेड के आईडी और उनसे जुड़े मैसेज शामिल होते हैं. हर मिलते-जुलते मैसेज में, मैसेज के मुख्य हिस्से का स्निपेट, विषय, भेजने वाला, पाने वाले वगैरह की जानकारी होती है. ध्यान दें कि यह टूल, मैसेज के पूरे मुख्य हिस्से को नहीं दिखाता है. अगर आपको मैसेज का पूरा मुख्य हिस्सा चाहिए, तो थ्रेड आईडी के साथ 'get_thread' टूल का इस्तेमाल करें. |
| label_thread |
पुष्टि किए गए उपयोगकर्ता के Gmail खाते में मौजूद पूरी थ्रेड में लेबल जोड़ता है. इस कार्रवाई का असर, थ्रेड में मौजूद सभी मैसेज और आने वाले समय में जोड़े जाने वाले मैसेज पर पड़ेगा. अगर आपको थ्रेड आईडी के बारे में पक्का नहीं है, तो पहले अगर आपको किसी उपयोगकर्ता लेबल के आईडी के बारे में पक्का पता नहीं है, तो उपलब्ध लेबल और उनके आईडी ढूंढने के लिए, सबसे पहले |
| unlabel_thread |
इस तरीके का इस्तेमाल करके, पुष्टि किए गए उपयोगकर्ता के Gmail खाते में मौजूद किसी थ्रेड से लेबल हटाए जा सकते हैं. अगर आपको थ्रेड आईडी के बारे में पक्का नहीं है, तो पहले search_threads टूल का इस्तेमाल करें. अगर आपको किसी उपयोगकर्ता लेबल के आईडी के बारे में पक्का नहीं है, तो पहले list_labels टूल का इस्तेमाल करें.
|
| list_labels |
यह कुकी, पुष्टि किए गए उपयोगकर्ता के Gmail खाते में मौजूद, उपयोगकर्ता के तय किए गए सभी लेबल की सूची बनाती है. label_thread, unlabel_thread, label_message या unlabel_message को कॉल करने से पहले, इस टूल का इस्तेमाल करके उपयोगकर्ता के लेबल का id पता लगाएं. यह टूल, सिस्टम लेबल नहीं दिखाता. हालांकि, इन्हें इनके जाने-पहचाने आईडी के साथ इस्तेमाल किया जा सकता है: 'INBOX', 'TRASH', 'SPAM', 'STARRED', 'UNREAD', 'IMPORTANT', 'CHAT', 'DRAFT', 'SENT'.
|
| label_message |
इस फ़ंक्शन की मदद से, पुष्टि किए गए उपयोगकर्ता के Gmail खाते में मौजूद किसी ईमेल में एक या उससे ज़्यादा लेबल जोड़े जा सकते हैं. मैसेज आईडी ढूंढने के लिए, |
| unlabel_message |
इस तरीके का इस्तेमाल करके, पुष्टि किए गए उपयोगकर्ता के Gmail खाते में मौजूद किसी ईमेल से एक या उससे ज़्यादा लेबल हटाए जा सकते हैं. मैसेज आईडी ढूंढने के लिए, search_threads या get_thread जैसे टूल का इस्तेमाल करें. अगर आपको किसी उपयोगकर्ता लेबल के आईडी के बारे में पक्का पता नहीं है, तो उपलब्ध लेबल और उनके आईडी ढूंढने के लिए, सबसे पहले list_labels टूल का इस्तेमाल करें.
|
| create_label | यह पुष्टि किए गए उपयोगकर्ता के Gmail खाते में एक नया लेबल बनाता है. |
एमसीपी टूल की खास जानकारी पाना
किसी एमसीपी सर्वर में मौजूद सभी टूल के लिए, एमसीपी टूल की खास जानकारी पाने के लिए, tools/list तरीके का इस्तेमाल करें. इस उदाहरण में, curl का इस्तेमाल करके, MCP सर्वर में फ़िलहाल उपलब्ध सभी टूल और उनकी खास बातों की सूची बनाने का तरीका बताया गया है.
| Curl अनुरोध |
|---|
curl --location 'https://gmailmcp.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/list", "jsonrpc": "2.0", "id": 1 }' |