GrowthBook

आधिकारिक

फीचर फ्लैग बनाएं और पढ़ें, प्रयोगों की समीक्षा करें, फ्लैग प्रकार उत्पन्न करें, डॉक्स खोजें, और GrowthBook के फीचर फ्लैगिंग और प्रयोग प्लेटफॉर्म के साथ इंटरैक्ट करें।

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

  • बंडल किए गए कौशल सूचीबद्ध करें — सहायक से growthbook_list_skills चलाने के लिए कहें ताकि उपलब्ध GrowthBook एजेंट कौशल और उनके विवरण देखे जा सकें।
  • कौशल विवरण पढ़ें — किसी विशिष्ट कौशल के लिए पूर्ण मार्कडाउन वर्कफ़्लो और सुरक्षा नियम प्राप्त करने हेतु growthbook_read_skill का उपयोग करें।
  • GrowthBook API कॉल करें — प्रमाणित REST ऑपरेशन जैसे प्रोजेक्ट लाना या फीचर बनाना करने के लिए growthbook_call_api को एक विधि, पथ और वैकल्पिक JSON बॉडी के साथ आमंत्रित करें।
  • परिवर्तनकारी क्रियाओं की पुष्टि करें — सहायक growthbook_call_api के माध्यम से POST, PUT, PATCH, या DELETE अनुरोध निष्पादित करने से पहले उपयोगकर्ता की पुष्टि मांगेगा, जब तक कि पहले से अन्यथा निर्देशित न किया गया हो।

दस्तावेज़

GrowthBook MCP Thin

GrowthBook के लिए तीन टूल्स वाला एक थिन MCP सर्वर:

टूलउद्देश्य
growthbook_list_skillsबंडल किए गए GrowthBook एजेंट स्किल्स की सूची (नाम + विवरण)
growthbook_read_skillपूर्ण स्किल मार्कडाउन लौटाएं (वर्कफ़्लो + गार्डरेल्स)
growthbook_call_apiGrowthBook API के लिए प्रमाणित REST पासथ्रू

क्षमता skills रिपो में रहती है और बिल्ड समय पर बंडल की जाती है। क्षमता एक सामान्य growthbook_call_api टूल है — कोई प्रति-एंडपॉइंट फ़ॉर्मेटर नहीं। टूल विवरण एजेंटों से कहता है कि वे उपयोगकर्ता के साथ म्यूटेटिंग विधियों (POST/PUT/PATCH/DELETE) की पुष्टि करें जब तक कि पहले से निर्देश न दिया गया हो।

टूल्स को growthbook_ से प्रीफ़िक्स किया जाता है ताकि जब क्लाइंट में कई MCP सर्वर लोड हों तो वे स्पष्ट रहें — एक एजेंट को कभी भी growthbook_call_api को सामान्य API कॉलर समझने की गलती नहीं करनी चाहिए।

इंस्टॉल / चलाएं

npm install
npm run build

अपने MCP क्लाइंट को संकलित एंट्रीपॉइंट पर इंगित करें:

{
  "mcpServers": {
    "growthbook": {
      "command": "node",
      "args": ["/absolute/path/to/growthbook-mcp/server/index.js"],
      "env": {
        "GB_API_KEY": "your_api_key_or_pat",
        "GB_API_URL": "https://api.growthbook.io"
      }
    }
  }
}

या प्रकाशित पैकेज चलाएं:

npx @growthbook/mcp

पर्यावरण चर

चरआवश्यकडिफ़ॉल्टउद्देश्य
GB_API_KEYstdio के लिए हाँ; HTTP OAuth के लिए वैकल्पिकGrowthBook API कुंजी या व्यक्तिगत एक्सेस टोकन
GB_API_URLनहींhttps://api.growthbook.ioAPI आधार URL (सेल्फ-होस्टेड) और डिफ़ॉल्ट OAuth AS जारीकर्ता
GB_MCP_TRANSPORTनहींstdiostdio या http
GB_MCP_PORTनहीं3333HTTP सुनने का पोर्ट (जब transport=http)
GB_MCP_HOSTनहीं127.0.0.1HTTP बाइंड होस्ट
GB_MCP_URLHTTP के लिए हाँसार्वजनिक MCP आधार URL OAuth संसाधन मेटाडेटा में अंकित (सर्वर इसके बिना HTTP मोड में शुरू करने से मना करता है)
GB_OAUTH_ISSUERनहींGB_API_URLGrowthBook OAuth AS जारीकर्ता URL
GB_HTTP_HEADER_*नहींअतिरिक्त अनुरोध हेडर (जैसे GB_HTTP_HEADER_CF_ACCESS_TOKEN)
GB_SKILLS_ENABLEDनहींtrueस्किल टूल्स को अक्षम करने के लिए false / 0 पर सेट करें

HTTP + OAuth मोड

OAUTH_AS_ENABLED=1  # on the GrowthBook API
GB_MCP_TRANSPORT=http GB_API_URL=http://localhost:3100 GB_MCP_PORT=3333 npm start

क्लाइंट इनसे जुड़ते हैं:

  • http://127.0.0.1:3333/mcp — पूर्ण (स्किल्स + API)
  • http://127.0.0.1:3333/mcp/api — केवल-क्षमता (growthbook_call_api)

अप्रमाणित अनुरोधों को 401 प्राप्त होता है जिसमें WWW-Authenticate /.well-known/oauth-protected-resource की ओर इंगित करता है, जो GrowthBook प्राधिकरण सर्वर का विज्ञापन करता है।

MCP को संभालने से पहले, सर्वर बियरर के साथ GrowthBook REST (GET /api/v1/) की जांच करता है। उस जांच से (या बाद में growthbook_call_api से) एक 401 HTTP 401 को error="invalid_token" के साथ उत्पन्न करता है ताकि MCP क्लाइंट रीफ़्रेश कर सके — "This API key has expired" को टूल त्रुटि के रूप में दिखाने के बजाय। एक 403 को स्वीकृत बियरर माना जाता है (अनुमति अस्वीकृत ≠ अमान्य टोकन) ताकि क्लाइंट रीफ़्रेश लूप में मजबूर न हों।

केवल-क्षमता मोड

HTTP (रिमोट के लिए अनुशंसित): क्लाइंट को /mcp के बजाय /mcp/api पर इंगित करें:

{
  "mcpServers": {
    "growthbook": {
      "url": "http://127.0.0.1:3333/mcp/api"
    }
  }
}
पथटूल्स
/mcpgrowthbook_list_skills, growthbook_read_skill, growthbook_call_api (जब तक GB_SKILLS_ENABLED=false न हो)
/mcp/apiकेवल growthbook_call_api

stdio / प्रक्रिया-व्यापी: env सेट करें ताकि स्किल्स कभी पंजीकृत न हों:

"env": {
  "GB_API_KEY": "...",
  "GB_SKILLS_ENABLED": "false"
}

जब स्किल्स अक्षम हों, केवल growthbook_call_api पंजीकृत होता है। growthbook_list_skills और growthbook_read_skill उजागर नहीं होते।

स्किल्स कैसे बंडल होती हैं

npm run build   # tsc && bundle-skills

scripts/bundle-skills.mjs प्रामाणिक स्किल्स चेकआउट से हर skills/*/SKILL.md को server/skills/<name>.md में कॉपी करता है।

स्रोत पथ समाधान:

  1. SKILLS_SRC env चर (स्किल्स रिप रूट का पथ), या
  2. ../skills (सहोदर निर्देशिका)

स्किल्स रिप सत्य का स्रोत बनी रहती है — यह पैकेज स्किल सामग्री को कभी फ़ोर्क नहीं करता।

growthbook_call_api के साथ स्किल्स का उपयोग

बंडल स्किल्स अभी भी वर्कफ़्लो दिखाती हैं:

gb-call GET /api/v1/projects
gb-call POST /api/v2/features ./payload.json

यह MCP सर्वर gb-call को शेल आउट नहीं करता। जब कोई स्किल वह पैटर्न दिखाती है, तो उसी विधि, पथ और वैकल्पिक JSON बॉडी स्ट्रिंग के साथ growthbook_call_api टूल को कॉल करें। सर्वर निर्देश और growthbook_read_skill आउटपुट में यह ब्रिज नोट शामिल है।

टूल्स विवरण

growthbook_call_api

{ "method": "GET", "path": "/api/v1/projects" }
{ "method": "POST", "path": "/api/v2/features", "body": "{\"id\":\"my-flag\",...}" }
  • विधियाँ: GET | POST | PUT | PATCH | DELETE
  • 2xx पर कच्चा प्रतिक्रिया बॉडी लौटाता है
  • गैर-2xx पर, एक कार्रवाई योग्य त्रुटि लौटाता है (isError: true) जिसमें प्रमाणीकरण विफलताएं, सेल्फ-होस्टेड 404 संकेत और दर सीमाएं शामिल हैं
  • टूल विवरण + सर्वर निर्देश एजेंट को बताते हैं कि POST/PUT/PATCH/DELETE की उपयोगकर्ता के साथ पुष्टि करें जब तक कि पहले से निर्देश न दिया गया हो (नरम मार्गदर्शन, कठोर गेट नहीं)

growthbook_list_skills / growthbook_read_skill

केवल तब पंजीकृत होते हैं जब GB_SKILLS_ENABLED अक्षम न हो। growthbook_read_skill पूर्ण SKILL.md सामग्री लौटाता है ताकि एजेंट वर्कफ़्लो चरणों और गार्डरेल्स का पालन कर सके।

विकास

# Requires a sibling checkout at ../skills (or SKILLS_SRC)
npm install
npm run build
npm start

स्टैंडअलोन HTTP मोड

डिफ़ॉल्ट रूप से सर्वर stdio पर चलता है। इसे स्टैंडअलोन HTTP सर्वर के रूप में चलाने के लिए GB_MCP_TRANSPORT=http सेट करें जो MCP को /mcp (स्किल्स + growthbook_call_api) और /mcp/api (केवल-क्षमता) पर उजागर करता है, OAuth 2.0 संरक्षित-संसाधन सतह के पीछे (RFC 9728 मेटाडेटा + RFC 6750 WWW-Authenticate)।

  • GB_MCP_URL (HTTP मोड में आवश्यक) — सर्वर का सार्वजनिक आधार URL। यह OAuth संसाधन (दर्शक) और संरक्षित-संसाधन मेटाडेटा में अंकित होता है, इसलिए इसे कभी भी अनुरोध हेडर से प्राप्त नहीं किया जाता। सर्वर इसके बिना शुरू करने से मना करता है।
  • GB_MCP_PORT (डिफ़ॉल्ट 3333) और GB_MCP_HOST (डिफ़ॉल्ट 127.0.0.1)।
  • आने वाले बियरर GrowthBook REST API की जांच करके मान्य किए जाते हैं; अस्वीकृत टोकन को HTTP 401 + WWW-Authenticate मिलता है ताकि क्लाइंट रीफ़्रेश कर सके।

इसे विश्वसनीय नेटवर्क पर या लूपबैक से बाउंड करके चलाएं। मल्टी-टेनेंट या सार्वजनिक तैनाती के लिए, इसे अपने स्वयं के गेटवे/प्रमाणीकरण के सामने रखें।

रिलीज़

रिलीज़ काटना जानबूझकर है: package.json में संस्करण बढ़ाएं, फिर मेल खाता v* टैग पुश करें:

git tag v2.0.0
git push origin v2.0.0

वह टैग किया गया कमिट (कट समय पर स्किल्स के साथ जमे हुए) प्रकाशित करता है:

  • @growthbook/mcp npm पर — प्रीरिलीज़ (- वाले संस्करण, जैसे 2.0.0-beta.1) beta डिस्ट-टैग के तहत जाते हैं; स्थिर संस्करण latest बन जाते हैं
  • एक मल्टी-आर्क (amd64 + arm64) छवि ghcr.io/growthbook/growthbook-mcp पर (:<version>, साथ ही स्थिर रिलीज़ के लिए :<major>, :<major>.<minor>, और :latest)
  • MCP रजिस्ट्री में एक प्रविष्टि
  • एक GitHub रिलीज़

npx @growthbook/mcp@<version> के साथ रिलीज़ इंस्टॉल करें या ghcr.io/growthbook/growthbook-mcp:<version> खींचें।