सामग्री पर जाएँ

व्यावहारिक गाइड

रोज़मर्रा के Maguyva MCP काम के लिए व्यावहारिक उदाहरण। हर उदाहरण में टूल और उन्हें चलाने का क्रम बताया गया है, सभी पैरामीटर का पूरा विवरण नहीं। टूल पैरामीटर के लिए MCP API संदर्भ देखें। पहली बार सेटअप करने के लिए त्वरित शुरुआत देखें।

JSON ब्लॉक, MCP tools/call के इनपुट हैं। owner/repo, ब्रांच और सिंबल के नामों को अपनी रिपॉज़िटरी के मानों से बदलें।

सही उपकरण चुनें

#

ज़्यादातर सवालों के लिए पहले एक कॉल करें। आगे तभी जाएँ जब पहला जवाब बहुत व्यापक हो या उसमें पर्याप्त जानकारी न हो।

  • intelligent_search — कोडबेस के बारे में स्वाभाविक भाषा में प्रश्न पूछने के लिए यहाँ से शुरू करें। डिफ़ॉल्ट auto/balanced जिन प्रश्नों को उच्च विश्वास के साथ परिभाषा खोज के रूप में पहचानता है, उन्हें संरचनात्मक खोज पर, संदर्भ या प्रभाव से जुड़े प्रश्नों को ग्राफ़ पर और सटीक मिलान वाले प्रश्नों को टेक्स्ट खोज पर भेजता है। अन्य प्रश्न अर्थ-आधारित खोज और इंडेक्स किए गए टेक्स्ट का उपयोग करते हैं। खोज की चारों विधियाँ माँगने के लिए mode=hybrid या quality=thorough के साथ auto का उपयोग करें। स्पष्ट रूप से चुने गए mode को quality पर प्राथमिकता मिलती है।
  • find_symbol - आप पहले से ही फ़ंक्शन, क्लास या वेरिएबल नाम जानते हैं।
  • dependency_search — ब्लास्ट रेडियस: कॉल करने वाले और निर्भर कोड के हिस्से, या एडिट से पहले (और बाद में) उसका प्रभाव।
  • get_task_context — अपरिचित हिस्से में काम के लिए; कार्य के विवरण से संबंधित फ़ाइलों, सिंबल और डिपेंडेंसी का सीमित समूह।
  • repository_context - सुलभ रिपॉज़िटरी को सूचीबद्ध करें या निरीक्षण करें कि रिपॉज़िटरी नाम कैसे हल होता है।
  • operation="guidance" के साथ ask_maguyva - टूल चयन और Maguyva उपयोग पर स्थानीय सहायता (कोई रिपो म्यूटेशन नहीं)।

क्लाइंट स्थापित करें और सत्यापित करें

#

अपने MCP क्लाइंट में Maguyva प्राप्त करें और वास्तविक रिपॉज़िटरी सूची के साथ कनेक्शन की पुष्टि करें।

  1. app.maguyva.ai में एक API कुंजी बनाएं (कुंजियाँ mgv_ से शुरू होती हैं)।
  2. कम से कम एक GitHub रिपॉज़िटरी को कनेक्ट और इंडेक्स करें जिसे आप पहले से ही समझते हैं।
  3. इंस्टालेशन गाइड (Claude Code प्लगइन, या Cursor, VS Code, Devin Desktop, Zed, और अन्य के लिए मूल रिमोट कॉन्फ़िगरेशन) का उपयोग करके अपने क्लाइंट को वायर करें।
  4. अपने एजेंट से "मैंने कौन-सी रिपॉज़िटरी कनेक्ट की हैं?" पूछें — इससे ऑथेंटिकेशन और repository_context की शुरू से अंत तक जाँच होती है।
  5. उस रिपो के बारे में एक वास्तविक प्रश्न पूछें जिसका उत्तर आप ग्रेड कर सकते हैं। आपको अनुक्रमित ट्री से फ़ाइल पथ और पंक्ति संख्याएँ देखनी चाहिए।
repository_context
{
  "name": "repository_context",
  "arguments": {
    "action": "list"
  }
}

API कुंजी, ब्रिज या गायब रिपॉज़िटरी की समस्या है? समस्या निवारण।

संपादित करने से पहले पूछें

#

साझा कोड बदलने से पहले सिंबल और ब्लास्ट रेडियस का नक़्शा बनाएँ। Maguyva टूल आपकी रिपॉज़िटरी नहीं बदलते — वे उस एडिट के लिए जानकारी देते हैं जिसे आपका क्लाइंट लोकल रूप से लागू करता है।

  1. अगर सिंबल का नाम पता है, तो उसकी डेफिनिशन और इस्तेमाल की जगहें ढूँढने के लिए find_symbol कॉल करें।
  2. यदि आपके पास केवल कार्य विवरण है ("SSO जोड़ें", "बिलिंग वेबहुक ठीक करें"), तो get_task_context या intelligent_search से प्रारंभ करें।
  3. साझा सिंबल एडिट करने से पहले dependency_search को dependents/impact विश्लेषण के साथ कॉल करें (या PR जैसे प्रभाव-विश्लेषण के लिए बदले हुए पाथ दें), ताकि ब्लास्ट रेडियस दिखे।
  4. उद्धृत फ़ाइलें खोलें (डिस्क पर फ़ाइलों के लिए स्थानीय रीड; रिमोट/क्रॉस-रिपो पथों के लिए get_file) और वास्तविक कोड के विरुद्ध योजना की पुष्टि करें।
  5. बदलाव के बाद उन्हीं सिंबलों को dependency_search से दोबारा जाँचें, verify_after_edit=true और targets या changed_paths के साथ। यह इंडेक्स किया गया ग्राफ़ पढ़ता है, स्थानीय बदलाव नहीं जिनका अभी कमिट नहीं हुआ है: इसे नए रिविज़न के प्रमाण के रूप में मानने से पहले indexed_commit_sha और इंडेक्स कितना अद्यतन है, यह जाँचें, और स्थानीय टेस्ट चलाएँ।
dependency_search
{
  "name": "dependency_search",
  "arguments": {
    "repository": "owner/repo",
    "target": "getCurrentUser",
    "exact_match": true,
    "analysis_type": "impact",
    "depth": "shallow",
    "include_metrics": true,
    "limit": 10
  }
}

पूर्ण पैरामीटर: MCP API संदर्भ.

खोजें, फिर बदलें

#

एजेंट का सामान्य लूप: खोजबीन → सिंबल तय करना → प्रमाण के आधार पर एडिट।

  1. intelligent_search और एक सामान्य भाषा की क्वेरी ("सत्र समाप्ति कैसे काम करती है", "पुनः प्रयास करने का तर्क कहां है") से प्रारंभ करें।
  2. पहले परिणाम समूह में बहुत से असंबंधित परिणाम हों तो भाषा या पाथ फ़िल्टर से दायरा सीमित करें। language_filter, auto/hybrid से ग्राफ़ को हटा देता है; केवल ग्राफ़ पर भेजी गई auto क्वेरी तब अर्थ-आधारित और टेक्स्ट खोज पर लौट आती है। language_filter के साथ स्पष्ट graph mode अस्वीकार कर दिया जाता है। चुनी गई खोज योजना देखने के लिए routing_decision.modalities_used देखें; warnings तभी मौजूद होता है जब सर्वर ने कोई चेतावनी दी हो।
  3. वही अस्पष्ट सवाल फिर पूछने के बजाय उपयोगी लग रहे नतीजों की आगे जाँच find_symbol या dependency_search से करें।
  4. get_file का उपयोग केवल तभी करें जब आपको एक विशिष्ट अनुक्रमित पथ की आवश्यकता हो जो डिस्क पर न हो।
  5. अपने सामान्य क्लाइंट टूल में संपादित करें. Maguyva खोज और सत्यापन के लिए है - लिखने के लिए नहीं।
intelligent_search
{
  "name": "intelligent_search",
  "arguments": {
    "repository": "owner/repo",
    "query": "How does session expiry work?",
    "limit": 5
  }
}

यह लूप क्यों काम करता है: यह काम किस प्रकार करता है.

खाली या अधूरे नतीजे

#

जब टूल कुछ उपयोगी न लौटाएँ, तो क्वेरी बार-बार बदलने से पहले रिपॉज़िटरी की पहचान और इंडेक्सिंग ठीक करें।

  1. पुष्टि करें कि रिपॉज़िटरी कनेक्ट है और app.maguyva.ai में अनुक्रमण समाप्त हो गया है।
  2. रिपॉज़िटरी स्ट्रिंग जाँचें: "owner/repo" डिफ़ॉल्ट ब्रांच चुनता है; "owner/repo:branch" किसी खास ब्रांच को चुनता है। मिलान में बड़े-छोटे अक्षरों का फ़र्क नहीं पड़ता, लेकिन मिलता-जुलता नाम स्वीकार नहीं होता — टाइपो अपने आप ठीक नहीं होते।
  3. action="info" के साथ repository_context पर कॉल करें और रिज़ॉल्यूशन मेटाडेटा का निरीक्षण करें (उदाहरण के लिए metadata.resolution_reason)।
  4. repository को केवल तभी हटाएं जब आपका MCP क्लाइंट अनुरोध डिफ़ॉल्ट प्रदान करता है या कुंजी बिल्कुल एक रिपॉज़िटरी तक पहुंच सकती है; अन्यथा इसे स्पष्ट रूप से पारित करें।
  5. अधिक विशिष्ट क्वेरी, find_symbol के माध्यम से ज्ञात symbol नाम, या भाषा/पथ फ़िल्टर के साथ पुनः प्रयास करें। यदि कनेक्शन स्वयं टूट गया है, तो समस्या निवारण का उपयोग करें।
repository_context
{
  "name": "repository_context",
  "arguments": {
    "action": "info",
    "repository": "owner/repo:main"
  }
}

सेटअप विफलताएँ: समस्या निवारण.

एकाधिक रिपॉज़िटरी में कार्य करें

#

जब कुंजी से एक से ज़्यादा रिपॉज़िटरी एक्सेस हो सकती हों, तो सही इंडेक्स की गई रिपॉज़िटरी चुनें।

  1. आपकी कुंजी द्वारा खोजे जा सकने वाले सटीक स्लग जानने के लिए एक बार action="list" के साथ repository_context पर कॉल करें।
  2. जब आपको गैर-डिफ़ॉल्ट रिपो (उदाहरण के लिए "owner/other-repo" या "owner/other-repo:develop") की आवश्यकता हो तो खोज और symbol टूल पर स्पष्ट रूप से repository पास करें।
  3. जब तक आप जानबूझकर अलग-अलग कॉल में रिपोज़ की तुलना नहीं करते, तब तक एक प्रश्न = एक रिपॉज़िटरी रखें।
  4. जब फ़ाइल ऐसी इंडेक्स की गई रिपॉज़िटरी में हो जो आपका मौजूदा वर्किंग ट्री नहीं है, तो get_file इस्तेमाल करें।
  5. याद रखें: उपकरण कभी भी GitHub पर वापस नहीं लिखते - कई रीपो का संदर्भ केवल पढ़ने और योजना बनाने के लिए है।

रिपॉज़िटरी प्रारूप विवरण: MCP API संदर्भ।

पहली बार सेटअप कर रहे हैं? त्वरित शुरुआत से शुरू करें, फिर रोज़मर्रा के कामों के लिए ये तरीके अपनाएँ।

अगले कदम

#