Rivalize

आधिकारिक

एजेंटों के लिए प्रतिस्पर्धी खुफिया: प्रतिस्पर्धी विश्लेषण, मूल्य निर्धारण, विज्ञापन, समीक्षाएं और गति। डिफ़ॉल्ट रूप से केवल-पठनीय।

Rivalize MCP के साथ आप क्या कर सकते हैं?

  • प्रतिस्पर्धी विश्लेषण (Competitor teardown) — किसी भी प्रतिस्पर्धी की स्थिति, मूल्य निर्धारण, विज्ञापन, सोशल उपस्थिति, समीक्षाएं, भर्ती और गति का एक-कॉल रणनीतिक विश्लेषण teardown_competitor के माध्यम से मांगें।
  • यूनिवर्स खोज (Universe search) — Rivalize के ट्रैक किए गए कंपनियों के क्रॉस-कस्टमर डेटासेट में कीवर्ड, श्रेणी या परत द्वारा list_universe_companies से खोजें।
  • रिपोर्ट नेविगेशन (Report navigation) — अपनी संग्रहीत रिपोर्टों से विशिष्ट अनुभाग या प्रतिस्पर्धी विवरण, जैसे मूल्य निर्धारण या बैटलकार्ड, get_report का उपयोग करके निकालें।
  • प्रतिस्पर्धी ट्रैकिंग (Competitor tracking) — अपने ट्रैक किए गए प्रतिस्पर्धियों के मोमेंटम स्कोर, खतरे के स्तर और ब्रीफ स्थिति को list_competitors से देखें।
  • साक्ष्य सत्यापन (Evidence verification) — किसी भी दावे के पीछे के स्रोतों और प्रत्येक प्रतिस्पर्धी को कितनी हाल ही में देखा गया, यह get_evidence और get_freshness से जांचें।
  • प्रतिस्पर्धी जोड़ें (Add competitors) — किसी प्रोजेक्ट में प्रतिस्पर्धी URL जोड़ने के लिए ऑप्ट-इन करें, जो क्रेडिट खर्च करता है और विश्लेषण को कतारबद्ध करता है, add_competitor के माध्यम से।

दस्तावेज़

Rivalize MCP सर्वर

npm License: MIT

आपके AI सहायक के लिए स्रोत-सहित, दिनांकित प्रतिस्पर्धी खुफिया जानकारी, मॉडल कॉन्टेक्स्ट प्रोटोकॉल के माध्यम से।

यह क्या करता है

यह सर्वर Claude, Cursor या किसी अन्य MCP क्लाइंट को Rivalize से जोड़ता है। आपका सहायक एक ही कॉल में प्रतिस्पर्धी की स्थिति, मूल्य निर्धारण, विज्ञापन, सोशल उपस्थिति, समीक्षाएं, भर्ती और गति को विघटित कर सकता है, Rivalize के ट्रैक की गई कंपनियों के ब्रह्मांड में खोज सकता है, और आपके अपने Rivalize खाते में प्रोजेक्ट, रिपोर्ट, बैटलकार्ड, टाइमलाइन और साक्ष्य पढ़ सकता है। हर उत्तर Rivalize द्वारा एकत्र किए गए डेटा से आता है, दिनांक और स्रोतों के साथ, न कि मॉडल की स्मृति से।

सर्वर डिफ़ॉल्ट रूप से केवल-पठनीय है। एक लेखन टूल, add_competitor, तब उपलब्ध होता है जब आप RIVALIZE_MCP_ALLOW_WRITES=1 के साथ ऑप्ट-इन करते हैं।

त्वरित आरंभ

Node.js 22 या नया आवश्यक है (node --version)।

  1. rivalize.ai पर एक खाता बनाएं।
  2. डैशबोर्ड → सेटिंग्स → API कुंजियाँ के अंतर्गत एक API कुंजी बनाएं। कुंजियाँ rk_live_ से शुरू होती हैं। किसी भी योजना की कुंजी काम करती है, जिसमें मुफ्त योजना भी शामिल है, जिसे दर-सीमित पठन मिलता है।
  3. नीचे दिए गए ब्लॉकों में से किसी एक का उपयोग करके सर्वर को अपने क्लाइंट में जोड़ें।

Claude डेस्कटॉप

~/Library/Application Support/Claude/claude_desktop_config.json (macOS) या %APPDATA%\Claude\claude_desktop_config.json (Windows) संपादित करें, फिर Claude डेस्कटॉप पुनः आरंभ करें:

{
  "mcpServers": {
    "rivalize": {
      "command": "npx",
      "args": ["-y", "@rivalize/mcp"],
      "env": { "RIVALIZE_API_KEY": "rk_live_..." }
    }
  }
}

Claude Code

claude mcp add rivalize -e RIVALIZE_API_KEY=rk_live_... -- npx -y @rivalize/mcp

Cursor

अपने प्रोजेक्ट में .cursor/mcp.json में जोड़ें, या सभी प्रोजेक्ट के लिए ~/.cursor/mcp.json में:

{
  "mcpServers": {
    "rivalize": {
      "command": "npx",
      "args": ["-y", "@rivalize/mcp"],
      "env": { "RIVALIZE_API_KEY": "rk_live_..." }
    }
  }
}

Cline

Cline में, MCP सर्वर पैनल खोलें, कॉन्फ़िगर करें, फिर MCP सर्वर कॉन्फ़िगर करें चुनें। यह cline_mcp_settings.json खोलता है। जोड़ें:

{
  "mcpServers": {
    "rivalize": {
      "command": "npx",
      "args": ["-y", "@rivalize/mcp"],
      "env": { "RIVALIZE_API_KEY": "rk_live_..." }
    }
  }
}

फ़ाइल सहेजें। rivalize सर्वर लगभग 10 से 15 सेकंड के बाद हरे बिंदु के साथ दिखाई देता है (पहला आरंभ पैकेज डाउनलोड करता है)। Windows पर, यदि यह आरंभ नहीं होता है, तो "command": "cmd" और "args": ["/c", "npx", "-y", "@rivalize/mcp"] का उपयोग करें।

यदि आप Cline से इसे आपके लिए स्थापित करने के लिए कहते हैं, तो इसे llms-install.md पर इंगित करें।

कोई भी MCP क्लाइंट (stdio)

सर्वर stdin और stdout पर MCP बोलता है। अपने क्लाइंट को लॉन्च करने के लिए कॉन्फ़िगर करें:

सेटिंगमान
कमांडnpx
तर्क-y @rivalize/mcp
पर्यावरणRIVALIZE_API_KEY=rk_live_...
परिवहनstdio

Windows पर, कुछ क्लाइंट npx को सीधे लॉन्च नहीं कर सकते क्योंकि यह npx.cmd है। इसके बजाय कमांड के रूप में cmd और तर्क के रूप में /c npx -y @rivalize/mcp का उपयोग करें।

उपकरण

तेरह केवल-पठनीय उपकरण हमेशा उपलब्ध हैं। add_competitor केवल तब पंजीकृत होता है जब RIVALIZE_MCP_ALLOW_WRITES को 1, true या yes पर सेट किया जाता है; इसके बिना, उपकरण क्लाइंट के लिए मौजूद नहीं होता है।

उपकरणपहुंचयह क्या करता हैमुख्य तर्क
teardown_competitorपढ़ेंएक-कॉल रणनीति विघटन एक प्रतिस्पर्धी का Markdown के रूप में: स्थिति, मूल्य निर्धारण, विज्ञापन, सोशल, समीक्षाएं, भर्ती, गति और हमला करने योग्य कमजोरियां, डेटा अंतिम बार कब ताज़ा किया गया थाdomain (आवश्यक)
list_universe_companiesपढ़ेंRivalize ब्रह्मांड खोजें, ट्रैक की गई कंपनियों का क्रॉस-ग्राहक डेटासेटq, category (स्लग), layer, limit (1-100), offset
get_universe_companyपढ़ेंएक कंपनी के लिए पूर्ण ब्रह्मांड प्रोफ़ाइल: पहचान, मूल्य निर्धारण, सुविधाएं, विज्ञापन, सोशल, समीक्षाएं, फंडिंग और भर्ती, रैंकिंग, संकेत, गतिdomain (आवश्यक), layers
list_projectsपढ़ेंआपके खाते में प्रोजेक्ट; वह project_id लौटाता है जो अन्य उपकरण लेते हैंकोई नहीं
list_reportsपढ़ेंआपकी रिपोर्टें, नवीनतम पहले। पढ़ना कभी रिपोर्ट उत्पन्न नहीं करताproject_id, limit (1-100), offset
get_reportपढ़ेंएक रिपोर्ट Markdown के रूप में, पूरी या एक अनुभाग या एक समय में एक प्रतिस्पर्धीreport_id (आवश्यक), section, competitor, page
list_competitorsपढ़ेंआपके द्वारा ट्रैक किए गए प्रतिस्पर्धी, गति स्कोर, उसका खतरा-स्तर बैंड और, जहां API प्रदान करता है, आपके ब्रीफ पर प्रत्येक प्रतिद्वंद्वी की स्थितिproject_id, limit (1-100), offset
get_competitor_intelligenceपढ़ेंएक ट्रैक किए गए प्रतिस्पर्धी के लिए नवीनतम संग्रहीत खुफिया जानकारी; एक फ़ील्ड केवल तब मौजूद होती है जब इसे मापा गया थाcompetitor_id (आवश्यक)
get_battlecardपढ़ेंएक ट्रैक किए गए प्रतिस्पर्धी के लिए उद्धृत बिक्री बैटलकार्ड। Pro योजना आवश्यक हैcompetitor_id (आवश्यक)
get_strategic_timelineपढ़ेंमूल्य निर्धारण, उत्पाद, लोग, फंडिंग और सामग्री/सोशल में प्रतिस्पर्धी चालों की साक्ष्य-लिंक्ड टाइमलाइनproject_id (आवश्यक), days (30, 90, 180), competitor_id, lanes, format, page
get_competitive_landscapeपढ़ेंगतिविधि और रणनीतिक महत्व द्वारा प्रतिस्पर्धियों की वर्तमान या संग्रहीत साप्ताहिक स्थितियांproject_id (आवश्यक), week (YYYY-MM-DD), format, page
get_freshnessपढ़ेंएक प्रोजेक्ट में प्रत्येक ट्रैक किए गए प्रतिस्पर्धी को अंतिम बार वास्तव में कब देखा गया था, और कैसेproject_id (आवश्यक)
get_evidenceपढ़ेंआपके उत्पाद या एक प्रतिस्पर्धी के तथ्यों के पीछे के स्रोत: URL, यह क्या समर्थन करता है, और इसे कब पढ़ा गया थाproject_id (आवश्यक), competitor_id
add_competitorलेखन, ऑप्ट-इनएक प्रोजेक्ट में प्रतिस्पर्धी URL जोड़ें। क्रेडिट खर्च करता है और विश्लेषण कतारबद्ध करता हैproject_id (आवश्यक), urls (1-10, आवश्यक)

project_id और competitor_id list_projects और list_competitors से UUID हैं। जो उपकरण केवल आपके खाते को पढ़ते हैं वे केवल आपका अपना डेटा देखते हैं।

रिपोर्ट अनुभाग

get_report एक section लेता है ताकि आपका सहायक पूरी रिपोर्ट के बजाय प्रश्न के लिए आवश्यक भाग पढ़ सके:

अनुभागसामग्री
tldr, biggest-threat, blind-spots, actionsरिपोर्ट के मुख्य अनुभाग (actions वह है जो आपके उत्पाद को करना चाहिए)
battlecardsउद्धृत बिक्री बैटलकार्ड
competitorsप्रत्येक प्रतिस्पर्धी का अनुभाग पूर्ण रूप में
pricing, momentum, app-store, strengths, weaknesses, key-findings, creators, ads, tech-stackप्रत्येक प्रतिस्पर्धी के अनुभाग से एकत्रित एक विषय

एक रिपोर्ट में केवल वे अनुभाग होते हैं जिनके लिए उसके पास डेटा होता है; किसी अन्य नाम के लिए पूछना एक त्रुटि लौटाता है जो उसके पास मौजूद अनुभागों को सूचीबद्ध करता है। section competitor के साथ संयोजित होता है, इसलिए section: "pricing" competitor: "Acme" के साथ Acme की मूल्य निर्धारण लौटाता है। रिपोर्ट के निर्माण-जांच द्वारा हटाए गए दावे [removed — unverified] के रूप में दिखाई देते हैं, बिल्कुल रिपोर्ट में जैसे।

लंबे उत्तर

हर उत्तर 25,000 वर्णों से कम रहता है, और कुछ भी चुपचाप काटा नहीं जाता:

  • Markdown (get_report, get_strategic_timeline, get_competitive_landscape) अनुभाग सीमाओं पर पृष्ठों में विभाजित होता है। प्रत्येक पृष्ठ Page N of M, कितना शेष है, और अगले पृष्ठ के लिए सटीक कॉल से शुरू होता है।
  • सूचियाँ (list_universe_companies, list_competitors, list_reports) pagination.next_offset लौटाती हैं; इससे तब तक जारी रखें जब तक यह null न हो।
  • ऑब्जेक्ट (get_universe_company, और टाइमलाइन या लैंडस्केप JSON) लंबी सरणियों को सीमित करते हैं और _capped में सीमा दर्ज करते हैं। एक फ़ील्ड जो अभी भी फिट नहीं होती है उसे _omitted में उस कॉल के साथ सूचीबद्ध किया जाता है जो इसे लाती है।

उदाहरण संकेत

  • "linear.app को विघटित करें।" (teardown_competitor)
  • "AI डेवलपर टूल में खिलाड़ी कौन हैं?" (list_universe_companies)
  • "मेरी नवीनतम रिपोर्ट का सारांश दें, फिर मुझे दिखाएं कि मेरे प्रतिस्पर्धी क्या शुल्क लेते हैं।" (list_reports, get_report section: "pricing" के साथ)
  • "मेरे कौन से प्रतिस्पर्धी इस तिमाही में सबसे अधिक चले, और उन्होंने क्या किया?" (get_competitive_landscape, get_strategic_timeline)
  • "मुझे अपने शीर्ष प्रतिस्पर्धी के खिलाफ बिक्री बात बिंदु दें।" (list_competitors, get_battlecard)
  • "वह मूल्य निर्धारण दावा कहां से आता है, और यह कितना ताज़ा है?" (get_evidence, get_freshness)

कॉन्फ़िगरेशन

चरआवश्यकडिफ़ॉल्टविवरण
RIVALIZE_API_KEYहाँकोई नहींआपकी Rivalize API कुंजी। rk_live_ से शुरू होनी चाहिए; यदि यह गायब या गलत है तो सर्वर आरंभ पर एक संदेश के साथ बाहर निकलता है।
RIVALIZE_API_URLनहींhttps://rivalize.aiRivalize API का मूल। एक कुंजी केवल उस सर्वर पर काम करती है जिसने इसे जारी किया: rivalize.ai के लिए इसे अनसेट छोड़ दें, और स्व-होस्टेड या गैर-उत्पादन Rivalize सर्वर के लिए इसे उस सर्वर के मूल पर सेट करें, या हर कॉल 401 लौटाता है।
RIVALIZE_MCP_ALLOW_WRITESनहींबंद1, true या yes (कोई भी मामला) add_competitor पंजीकृत करता है। कोई अन्य मान, या अनसेट, सर्वर को केवल-पठनीय रखता है।
HTTPS_PROXY / HTTP_PROXYनहींकोई नहींकॉर्पोरेट प्रॉक्सी के माध्यम से अनुरोध रूट करें। लोअरकेस रूप भी पढ़े जाते हैं, और दोनों सेट होने पर HTTPS_PROXY जीतता है। NO_PROXY सम्मानित है। त्रुटियां प्रॉक्सी होस्ट का नाम देती हैं, कभी उसके क्रेडेंशियल नहीं।

समस्या निवारण

"कनेक्शन बंद"

जब सर्वर आरंभ नहीं हो सकता, कई क्लाइंट केवल "कनेक्शन बंद" या विफल स्थिति दिखाते हैं। सर्वर अपने stderr की पहली पंक्ति के रूप में कारण प्रिंट करता है, rivalize-mcp: उपसर्ग के साथ, और अधिकांश क्लाइंट stderr को अपने MCP लॉग में रखते हैं। सामान्य कारण:

  1. RIVALIZE_API_KEY गायब या अमान्य है। लॉग rivalize-mcp: RIVALIZE_API_KEY is required पढ़ता है, या कहता है कि कुंजी Rivalize API कुंजी की तरह नहीं दिखती (इसे rk_live_ से शुरू होना चाहिए)। कुंजी को सर्वर के env ब्लॉक में रखें और क्लाइंट को पुनः आरंभ करें।
  2. Node.js 22 से पुराना है। node --version चलाएं और Node.js 22 या नया स्थापित करें। आपका क्लाइंट जो भी node और npx अपने स्वयं के PATH पर पहले आते हैं उनका उपयोग करता है, जो आपके टर्मिनल से भिन्न हो सकता है।
  3. कोई नेटवर्क पहुंच नहीं। npx पहले रन पर पैकेज डाउनलोड करता है, और हर टूल कॉल https://rivalize.ai (या RIVALIZE_API_URL) पर जाता है। कॉर्पोरेट प्रॉक्सी के पीछे, HTTPS_PROXY सेट करें। एक नेटवर्क त्रुटि सर्वर और कारण कोड का नाम देती है, जैसे ECONNREFUSED या ENOTFOUND।

संदेश को सीधे देखने के लिए, सर्वर को उसी कुंजी के साथ टर्मिनल में चलाएं:

RIVALIZE_API_KEY=rk_live_... npx -y @rivalize/mcp

एक स्वस्थ सर्वर rivalize-mcp-server connected via stdio को stderr पर प्रिंट करता है और इनपुट की प्रतीक्षा करता है (रोकने के लिए Ctrl+C दबाएं)। कुछ और ही कारण है कि आपका क्लाइंट कनेक्ट नहीं हो सका।

हर कॉल 401 लौटाता है

कुंजी को उस सर्वर द्वारा अस्वीकार कर दिया गया था जिसे इसे भेजा गया था, और त्रुटि उस सर्वर का नाम देती है। जांचें कि कुंजी रद्द नहीं हुई है, और RIVALIZE_API_URL अनसेट है जब तक कि कुंजी किसी भिन्न Rivalize सर्वर द्वारा जारी नहीं की गई थी।

एक उपकरण कहता है कि उसे उच्च योजना चाहिए

पठन हर योजना पर उपलब्ध हैं। कुछ क्षमताएं, जैसे बैटलकार्ड और पूर्ण टाइमलाइन या लैंडस्केप इतिहास, उच्च योजना चाहिए; त्रुटि बताती है कि कौन सी और rivalize.ai/pricing से लिंक करती है।

डॉकर

रिपॉजिटरी में एक Dockerfile शामिल है जो Node 22 पर समान stdio सर्वर बनाता है और इसे गैर-रूट उपयोगकर्ता के रूप में चलाता है।

docker build -t rivalize-mcp .
{
  "mcpServers": {
    "rivalize": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "-e", "RIVALIZE_API_KEY", "rivalize-mcp"],
      "env": { "RIVALIZE_API_KEY": "rk_live_..." }
    }
  }
}

कंटेनर को -i के साथ और TTY के बिना चलाएं, क्योंकि MCP stdin और stdout का उपयोग करता है। बिना मान के -e RIVALIZE_API_KEY कुंजी को क्लाइंट के पर्यावरण से गुजरने देता है, इसलिए यह कभी भी docker run कमांड लाइन पर दिखाई नहीं देता। यदि आपको उनकी आवश्यकता हो तो -e RIVALIZE_API_URL या -e RIVALIZE_MCP_ALLOW_WRITES उसी तरह जोड़ें।

गोपनीयता नीति

यह सर्वर Rivalize API के लिए एक पतला क्लाइंट है।

  • यह क्या भेजता है, और कहाँ। प्रत्येक टूल कॉल https://rivalize.ai पर Rivalize API के लिए एक HTTPS अनुरोध बन जाता है, या वह मूल जो आपने RIVALIZE_API_URL में सेट किया है। एक अनुरोध आपकी API कुंजी को Bearer टोकन के रूप में, rivalize-mcp/<version> का एक User-Agent, और टूल के तर्कों को ले जाता है: उदाहरण के लिए एक कंपनी डोमेन, एक खोज शब्द, एक प्रोजेक्ट, रिपोर्ट या प्रतियोगी आईडी, और, यदि लेखन सक्षम है, तो आपके द्वारा जोड़े गए प्रतियोगी URL। यदि आप HTTPS_PROXY या HTTP_PROXY सेट करते हैं, तो अनुरोध उस प्रॉक्सी से होकर जाते हैं। कुछ भी कहीं और नहीं भेजा जाता है।
  • यह क्या नहीं भेजता है। कोई टेलीमेट्री, एनालिटिक्स या क्रैश रिपोर्ट नहीं। यह आपकी मशीन पर फ़ाइलें, आपकी बातचीत, या अन्य टूल के आउटपुट नहीं पढ़ता है; यह केवल उन तर्कों को देखता है जो आपका MCP क्लाइंट अपने स्वयं के टूल को पास करता है।
  • यह स्थानीय रूप से क्या संग्रहीत करता है। कुछ भी नहीं। यह कोई फ़ाइल नहीं लिखता, कोई कैश नहीं रखता, और रनों के बीच कोई स्थिति नहीं रखता। आपकी कुंजी आपके MCP क्लाइंट के कॉन्फ़िगरेशन में रहती है, इस सर्वर में नहीं। डायग्नोस्टिक संदेश stderr पर जाते हैं, जिसे आपका MCP क्लाइंट लॉग कर सकता है; उनमें आपकी API कुंजी कभी शामिल नहीं होती।
  • Rivalize अनुरोधों के साथ क्या करता है। API उन्हें rivalize.ai/privacy पर Rivalize गोपनीयता नीति के तहत संसाधित करता है। Rivalize का संचालन Downshift LLC द्वारा किया जाता है, जो उस डेटा के लिए डेटा नियंत्रक है। गोपनीयता प्रश्न privacy@rivalize.ai पर जाएँ।

सुरक्षा

कृपया कमजोरियों की रिपोर्ट निजी तौर पर support@rivalize.ai पर करें, विषय पंक्ति में "security" के साथ, किसी सार्वजनिक मुद्दे में नहीं। पैकेज संस्करण (npm view @rivalize/mcp version, या ऊपर दिया गया User-Agent), आपने क्या किया, और क्या हुआ, शामिल करें। हम आपकी रिपोर्ट स्वीकार करेंगे और इसे हल होने तक आपको अपडेट करते रहेंगे।

अपनी API कुंजी को एक क्रेडेंशियल के रूप में मानें। इसे अपने क्लाइंट के env ब्लॉक या अपने शेल वातावरण में रखें, कभी भी साझा या कमिट की गई फ़ाइल में नहीं, और Dashboard → Settings → API Keys के तहत लीक हुई कुंजी को रद्द करें।

योगदान

बग रिपोर्ट और फीचर अनुरोध github.com/Downshift/rivalize-mcp/issues पर स्वागत हैं। खाते और बिलिंग प्रश्नों के लिए, support@rivalize.ai पर ईमेल करें।

सर्वर पर स्थानीय रूप से काम करने के लिए:

npm ci
npm run typecheck
npm run build      # emits dist/, which the rivalize-mcp bin runs
npm test           # offline: every API call is mocked or served by a local fixture

server.json MCP रजिस्ट्री प्रविष्टि है। परीक्षण इसे आधिकारिक स्कीमा (schema/ में वेंडर किया गया) के विरुद्ध मान्य करते हैं और जाँचते हैं कि इसका नाम, संस्करण और पैकेज package.json से मेल खाते हैं।

चेंजलॉग

0.3.2

  • list_competitors अब आपके सहायक को बताता है कि शीर्ष प्रतियोगी कैसे चुनें: आपके ब्रीफ पर प्रतिद्वंद्वी की स्थिति (brief.standing) से जब API इसे लौटाता है, अन्यथा momentum_score से। threat_level को वर्णित किया गया है जैसा कि यह है, मोमेंटम स्कोर का बैंड, और अब रैंकिंग के रूप में पेश नहीं किया जाता है।
  • जब किसी पंक्ति की स्थिति अभी भी पढ़ी जा रही है (brief.state deferred है), list_competitors उसी पृष्ठ के लिए फिर से पूछता है, 4 बार तक, 1.5 सेकंड के अंतराल पर। एक API के विरुद्ध जो कोई brief नहीं लौटाता, यह प्रति कॉल एक अनुरोध करता है जैसा पहले था।
  • स्व-होस्टेड या गैर-उत्पादन Rivalize सर्वर के लिए 401 संकेत में, और add_competitor विवरण में स्पष्ट शब्द।

0.3.1

  • वह संस्करण जिससे इस रिपॉजिटरी का इतिहास शुरू होता है: तेरह केवल-पढ़ने वाले टूल, ऑप्ट-इन add_competitor लेखन टूल, स्पष्ट पेजिंग के साथ 25,000 वर्णों से कम रखे गए प्रतिक्रियाएँ, प्रॉक्सी समर्थन, और server.json में MCP रजिस्ट्री प्रविष्टि।

लाइसेंस

MIT, © 2026 Downshift LLC। LICENSE देखें।