Claude MCP Add कमांड: स्कोप, यूज़र बनाम प्रोजेक्ट और HTTP सर्वर

हर claude mcp add का नतीजा दो चुनावों पर निर्भर करता है: स्कोप और ट्रांसपोर्ट। जानें कि लोकल, प्रोजेक्ट और यूज़र स्कोप अपना डेटा कहाँ रखते हैं, नाम टकराने पर कौन सा लागू होता है, हेडर या OAuth के साथ HTTP सर्वर कैसे जोड़ें, और Windows पर stdio सर्वर कैसे चलाएँ।

Claude MCP Add कमांड: स्कोप, यूज़र बनाम प्रोजेक्ट और HTTP सर्वर
Cristian Da Conceicao
Picasso IA के संस्थापक

आप एक सर्वर URL claude mcp add में पेस्ट करते हैं, Enter दबाते हैं, और सर्वर एक प्रोजेक्ट में दिखता है लेकिन अगले में गायब हो जाता है। या वह किसी टीममेट के checkout में पहुँच जाता है और ऐसी मंज़ूरी माँगता है जिसकी किसी को उम्मीद नहीं थी। इस कमांड के लगभग हर उलझाने वाले नतीजे के पीछे दो फ़ैसले होते हैं: आपने कौन सा scope चुना और कौन सा transport इस्तेमाल किया। यह लेख इस कमांड को flag-दर-flag समझाता है, दिखाता है कि हर scope अपना डेटा कहाँ रखता है, समझाता है कि user और project scope आपस में कैसे काम करते हैं, और HTTP व stdio सर्वर के काम करने वाले उदाहरण देता है, जिसमें Windows की वह खासियत भी शामिल है जो कई लोगों को उलझा देती है।

ऐड कमांड क्या करता है

वॉलनट डेस्क पर लैपटॉप पर claude mcp add कमांड टाइप करते डेवलपर के हाथ

claude mcp add Claude Code के साथ एक Model Context Protocol सर्वर रजिस्टर करता है, ताकि असिस्टेंट उसके tools कॉल कर सके, उसके resources पढ़ सके और उसके प्रॉम्प्ट चला सके। यह कमांड खुद कुछ इंस्टॉल नहीं करता। यह एक छोटी कॉन्फ़िगरेशन एंट्री लिखता है, और Claude Code उस एंट्री को अगली बार तब पढ़ता है जब session शुरू होता है या जब आप /mcp मेनू से reconnect करते हैं।

हर कॉल को तीन फ़ैसले आकार देते हैं:

  • Transport: Claude Code सर्वर से कैसे बात करता है (http, sse या stdio)।
  • Scope: एंट्री कहाँ स्टोर होती है और उसे कौन देख सकता है (local, project या user)।
  • Name: वह लेबल जो आप बाद में claude mcp get, claude mcp remove और /mcp मेनू में टाइप करेंगे।

बुनियादी सिंटैक्स

दो शेप लगभग वह सब संभालते हैं जो आप कभी चलाएँगे:

# Remote server reached over a URL
claude mcp add [options] <name> <url>

# Local process started by Claude Code
claude mcp add [options] <name> -- <command> [args...]

सर्वर नाम से पहले --transport, --scope और --env रखें। लोकल processes के लिए double dash पार्सर को बताता है कि उसके बाद का सब कुछ Claude Code के नहीं, सर्वर के हिस्से का है।

💡 टिप: --transport हर बार पास करें, भले ही कोई default भी काम कर जाए। स्पष्ट flag से कमांड shell history, README फ़ाइलों और टीम चैट में एक जैसा दिखता है, चाहे हर व्यक्ति कोई भी वर्ज़न चलाए।

तीनों scope एक नज़र में

तीन ओक की फ़ाइलिंग ड्रॉअर अलग-अलग गहराई तक खुले हुए, local, project और user scope का विज़ुअल रूपक

Claude Code हर सर्वर को तीन में से एक जगह स्टोर करता है, और --scope flag (छोटा रूप -s) वह जगह चुनता है। flag न दें तो local मिलता है।

Scopeकहाँ लोड होता हैटीम के साथ साझाकहाँ स्टोर होता है
local (default)सिर्फ़ मौजूदा प्रोजेक्टनहीं~/.claude.json, प्रोजेक्ट के path के नीचे
projectसिर्फ़ मौजूदा प्रोजेक्टहाँ, version control के ज़रिएप्रोजेक्ट रूट में .mcp.json
userआपकी मशीन का हर प्रोजेक्टनहीं~/.claude.json

local शब्द लोगों को उलझाता है क्योंकि यह "मेरी मशीन पर" जैसा लगता है, और user scope भी आपकी मशीन पर ही है। फ़र्क पहुँच का है। Local निजी और सिर्फ़ एक प्रोजेक्ट तक सीमित है, जबकि user निजी है और हर repository में आपके साथ चलता है।

Local Scope: डिफ़ॉल्ट

claude mcp add --transport http sentry https://mcp.sentry.dev/mcp

Local scope का इस्तेमाल प्रयोगों के लिए करें, उन सर्वरों के लिए जो एक repository से जुड़े हैं, और किसी भी ऐसी चीज़ के लिए जो निजी credential रखती हो। कुछ भी repository में नहीं लिखा जाता, इसलिए गलती से token commit होने का खतरा नहीं होता। यह वह scope भी है जिसमें आप तब पहुँचते हैं जब flag देना भूल जाते हैं, इसीलिए जल्दबाज़ी में जोड़ा गया सर्वर तब गायब लगता है जब आप कोई दूसरा फ़ोल्डर खोलते हैं।

Project Scope: Git में साझा

claude mcp add --scope project --transport http sentry https://mcp.sentry.dev/mcp

यह प्रोजेक्ट रूट में .mcp.json बनाता या अपडेट करता है। इसे commit करें और pull के बाद हर टीममेट को वही सर्वर सूची मिलती है। क्योंकि repository की कोई फ़ाइल आपकी मशीन पर processes शुरू कर सकती है, इसलिए Claude Code हर व्यक्ति से पहली बार दिखने पर project सर्वरों की मंज़ूरी माँगता है। अगर किसी ने गलती से मना कर दिया, तो claude mcp reset-project-choices पिछले जवाब हटा देता है ताकि prompt फिर से दिखे।

User Scope: जहाँ भी आप काम करें

claude mcp add --scope user --transport http notion https://mcp.notion.com/mcp

User scope उन निजी टूल्स के लिए सही रहता है जो आप हर रिपॉज़िटरी में चाहते हैं: एक नोट्स ऐप, एक डॉक्यूमेंटेशन सर्च सर्वर, एक ब्राउज़र हेल्पर। यह एंट्री ~/.claude.json में रहती है, उस मशीन पर आपके account के साथ चलती है, और किसी रिपॉज़िटरी को कभी नहीं छूती।

User बनाम Project: कौन जीतता है?

एक साझा टीम टेबल का ऊपर से दिखता दृश्य, जिसके कोने पर एक निजी नोटबुक अलग रखी है

User और project scope के बीच चुनाव एक सवाल पर आता है: इस सर्वर की ज़रूरत किसे और है? अगर जवाब है "हर वह व्यक्ति जो यह repo clone करता है", तो project चुनें। अगर जवाब है "सिर्फ़ मुझे, लेकिन हर repo में", तो user चुनें। अगर जवाब है "सिर्फ़ मुझे, सिर्फ़ यहीं", तो local पर रहें।

स्थितिसबसे अच्छा scopeक्यों
हर टीममेट को एक ही सर्वर चाहिएprojectएक commit किया हुआ .mcp.json setup steps वाले wiki पेज की जगह ले लेता है
आपकी सभी repositories के लिए एक निजी helperuserइसे एक बार जोड़ें, और यह हर जगह आपके साथ चलेगा
किसी सर्वर को एक दोपहर के लिए टेस्ट करनाlocalकुछ भी repository में नहीं जाता, और हटाना बहुत आसान है
टीम के सर्वर को staging URL की ओर इशारा करवानाlocalयह सिर्फ़ आपकी मशीन पर साझा परिभाषा को ओवरराइड करता है
ऐसा सर्वर जिसे आपका अपना token चाहिएlocal या userनिजी credentials कभी commit की गई फ़ाइल में नहीं होने चाहिए

कौन सा scope प्राथमिकता पाता है

जब एक ही सर्वर नाम एक से ज़्यादा scope में मौजूद हो, तो Claude Code सबसे विशिष्ट परिभाषा इस्तेमाल करता है: local, project को हराता है, और project, user को हराता है। यह क्रम आपको अपनी मशीन पर साझा एंट्री को ओवरराइड करने देता है, बिना उस फ़ाइल को बदले जिसे बाकी सब इस्तेमाल करते हैं।

मान लीजिए टीम के .mcp.json में production की ओर इशारा करने वाला docs नाम का सर्वर परिभाषित है। आप अपने checkout में यह चला सकते हैं:

claude mcp add --transport http docs https://staging.example.com/mcp

Local एंट्री जीतती है, तो आपका session staging से बात करता है, जबकि आपके टीममेट production से बात करते रहते हैं। Local एंट्री हटा दें, तो आप साझा वाली पर लौट आते हैं।

.mcp.json के ज़रिए साझा करना

Project scope की एंट्री सादा JSON है, यानी आप इसे हाथ से भी लिख सकते हैं:

{
  "mcpServers": {
    "docs": {
      "type": "http",
      "url": "https://mcp.example.com/mcp",
      "headers": {
        "Authorization": "Bearer ${DOCS_TOKEN}"
      }
    }
  }
}

Claude Code command, args, url, headers और env के अंदर ${VAR} और ${VAR:-default} का विस्तार करता है। साझा फ़ाइलों के लिए यही सुरक्षित पैटर्न है: structure commit करें, और हर व्यक्ति अपना secret environment variable के ज़रिए दे। .mcp.json में असली token चिपकाने से वह git history में पहुँच जाता है, और उसे रोटेट करना ही भरोसेमंद समाधान है।

HTTP सर्वर जोड़ना

शांत सर्वर रूम में patch panel में लगी ethernet केबलों का नीचे से लिया गया दृश्य

रिमोट सर्वर के लिए HTTP सुझाया गया ट्रांसपोर्ट है: न कोई लोकल प्रोसेस, न इंस्टॉल करने के लिए कोई रनटाइम, और अपडेट वेंडर संभालता है। ज़्यादातर होस्टेड MCP सर्वर /mcp पर खत्म होने वाला URL प्रकाशित करते हैं, और वही वह पता है जो आप कमांड को देते हैं।

Transport Flag

claude mcp add --transport http sentry https://mcp.sentry.dev/mcp
Transportसबसे अच्छा किसके लिएस्थिति
httpURL से पहुँचने वाले रिमोट सर्वरसुझाया गया
sse/sse endpoint वाले पुराने रिमोट सर्वरपुराना (deprecated), vendor दे तो http इस्तेमाल करें
stdioआपकी मशीन पर शुरू हुए लोकल processesपूरी तरह समर्थित

अगर किसी vendor के documentation में अब भी /sse पता दिखता है, तो पुराना रजिस्टर करने से पहले जाँच लें कि क्या वही सेवा /mcp endpoint देती है। Deprecated transport वाले सर्वर अभी काम करते रहेंगे, लेकिन नए setup वहाँ से शुरू नहीं होने चाहिए।

Headers और Bearer Tokens

एक हाथ जो एक पुराने लकड़ी के टूलबॉक्स के hasp पर पीतल का ताला सरका रहा है

स्टैटिक क्रेडेंशियल स्वीकार करने वाले सर्वर उसे request header से पढ़ते हैं। उसे --header (छोटा रूप -H) के साथ पास करें, और जब एक से ज़्यादा की ज़रूरत हो तो flag दोहराएँ:

claude mcp add --transport http github https://api.githubcopilot.com/mcp/ \
  --header "Authorization: Bearer YOUR_TOKEN"

claude mcp add --transport http api https://example.com/mcp \
  --header "Authorization: Bearer YOUR_TOKEN" \
  --header "X-Team: platform"

💡 Shell पर ध्यान दें: अगर आप $GITHUB_TOKEN को double quotes के अंदर टाइप करते हैं, तो shell Claude Code के देखने से पहले ही उसे expand कर देता है, इसलिए सेव हुई एंट्री में असली टोकन होता है। किसी भी साझा चीज़ के लिए ${VAR} वाला रूप .mcp.json में लिखें।

OAuth से Authenticate करना

कई होस्टेड सर्वर स्टैटिक टोकन की जगह OAuth इस्तेमाल करते हैं। सर्वर को बिना headers के जोड़ें, Claude Code शुरू करें, और /mcp चलाएँ। सूची से सर्वर चुनें और ब्राउज़र में साइन-इन पूरा करें। Claude Code नतीजे में मिले क्रेडेंशियल सहेजता है और आपके लिए उन्हें रिफ़्रेश करता है, इसलिए किसी config फ़ाइल में चिपकाने के लिए कुछ नहीं है और गलती से कमिट करने लायक भी कुछ नहीं है।

Stdio सर्वर और Environment Variables

एक तकनीशियन का हाथ, जो workbench पर खुले लैपटॉप में braided USB-C केबल लगा रहा है

stdio के साथ, Claude Code सर्वर को एक child process के रूप में शुरू करता है और standard input और output के ज़रिए उससे बात करता है। ऐसे टूल्स के लिए इसे चुनें जो आपकी मशीन पर ही चलने चाहिए: एक लोकल डेटाबेस हेल्पर, एक filesystem टूल, या कोई स्क्रिप्ट जो आपने खुद लिखी हो। Environment variables --env flag से पास किए जाते हैं (छोटा रूप -e)।

Double Dash Separator

claude mcp add --transport stdio --env API_TOKEN=YOUR_TOKEN myserver \
  -- npx -y my-mcp-server

-- से पहले का सब कुछ Claude Code के लिए है। उसके बाद का सब कुछ वही सटीक कमांड है जो आपका सर्वर शुरू करता है, arguments सहित। Separator छोड़ देना stdio की सबसे आम गलती है:

# Wrong: --port is parsed as a Claude Code option
claude mcp add --transport stdio myserver npx server --port 8080

# Right: the server command sits after the double dash
claude mcp add --transport stdio myserver -- npx server --port 8080

Windows में cmd /c चाहिए

Native Windows पर (WSL नहीं), npx असली executable नहीं बल्कि एक batch wrapper है, इसलिए Claude Code उसे सीधे लॉन्च नहीं कर सकता। कमांड को cmd /c में लपेटें:

claude mcp add --transport stdio my-server -- cmd /c npx -y @some/package

Wrapper के बिना आप आम तौर पर /mcp में "Connection closed" error देखते हैं, जो सर्वर की बग जैसा लगता है, पर असल में सिर्फ़ launch failure है। जब आप एंट्री हाथ से लिखते हैं, तब भी यही समाधान लागू होता है: "command": "cmd" सेट करें और args को "/c" से शुरू करें, फिर "npx"।

जोड़ने के बाद सर्वर मैनेज करना

एक साफ़-सुथरे workshop pegboard पर अपनी बाहरी रेखा वाली जगह से रिंच उठाता एक हाथ

सर्वर रजिस्टर करना आधा काम है। बाकी उसकी ज़िंदगी तीन कमांड संभालते हैं:

claude mcp list            # every server and its connection status
claude mcp get docs        # details for one server
claude mcp remove docs     # delete it

किसी session के अंदर, /mcp वही status लाइव दिखाता है, और OAuth सर्वर में साइन इन करने या टूट गए सर्वर को फिर से कनेक्ट करने की जगह भी यही है।

List, Get और Remove

जब भी कुछ गड़बड़ लगे, पहले claude mcp list चलाएँ। यह दिखाता है कि Claude Code वास्तव में किन सर्वरों के बारे में जानता है, हर scope से, ताकि आप एक नज़र में समझ सकें कि सर्वर गायब है या सिर्फ़ fail हो रहा है। एंट्री कहाँ से आई, यह देखने के लिए claude mcp get <name> इस्तेमाल करें। अगर वही नाम एक से ज़्यादा scope में है, तो claude mcp remove को --scope पास करें ताकि सही कॉपी हटे।

add-json शॉर्टकट

जब vendor आपको JSON snippet दे, तो flags छोड़ें और उसे सीधे कमांड को दे दें:

claude mcp add-json weather-api '{"type":"http","url":"https://api.weather.com/mcp","headers":{"Authorization":"Bearer YOUR_TOKEN"}}'

add-json वही --scope flag स्वीकार करता है, ताकि आप एक ही कदम में कोई snippet user या project scope में डाल सकें। अगर आपने Claude Desktop में सर्वरों का सेट पहले से बनाया है, तो claude mcp add-from-claude-desktop macOS और WSL पर उन्हें इंटरैक्टिव तरीके से इम्पोर्ट करता है।

आम failures ठीक करना

मैग्निफ़ाइंग लैंप के नीचे circuit board की जाँच करता, भूरे स्वेटर में एक इंजीनियर

ज़्यादातर failures एक छोटी सूची में आते हैं। पहले लक्षण मिलाएँ, और तभी फ़ाइलें बदलना शुरू करें।

लक्षणसंभावित कारणसमाधान
दूसरे फ़ोल्डर में सर्वर गायबLocal scope में जोड़ा गया--scope user के साथ फिर से जोड़ें
टीममेट को सर्वर नहीं दिखताLocal या user scope में जोड़ा गया--scope project के साथ फिर से जोड़ें और .mcp.json commit करें
Windows पर "Connection closed"npx बिना wrapper के लॉन्च हुआ-- cmd /c npx ... इस्तेमाल करें
सर्वर flags अस्वीकारकमांड से पहले -- नहीं हैनाम के बाद double dash लगाएँ
Project सर्वर कभी लोड नहीं होतापहले मंज़ूरी से मना किया गयाclaude mcp reset-project-choices चलाएँ
धीमा सर्वर शुरू होते समय timeout होता हैStartup limit बहुत छोटी हैMCP_TIMEOUT=30000 के साथ Claude Code शुरू करें
Tool का output बीच में कट जाता हैOutput token limit पूरी हो गईMAX_MCP_OUTPUT_TOKENS ज़्यादा सेट करें
Token commit की गई फ़ाइल में पड़ा है.mcp.json में सीधे लिखा secretउसे रोटेट करें, फिर ${VAR} पर जाएँ

अगर table से समाधान न निकले, तो ये चार जाँच क्रम से चलाएँ:

  1. claude mcp list से पुष्टि करें कि सर्वर रजिस्टर्ड है और उसका status दिखे।
  2. claude mcp get <name> से वह सटीक कमांड या URL देखें जिसका Claude Code उपयोग कर रहा है।
  3. किसी session के अंदर /mcp से लाइव कनेक्शन state देखें और सर्वर को फिर से कनेक्ट करें।
  4. stdio कमांड को एक सामान्य terminal में पेस्ट करें। अगर वहाँ भी वह विफल होता है, तो समस्या सर्वर में है, Claude Code में नहीं।

जब सर्वर connect न हो: रिमोट सर्वर के लिए URL को browser में खोलें या curl से उसे कॉल करें। 401 या 403 का मतलब है कि आपका header या sign-in गलत है, 404 आम तौर पर बताता है कि path गलत है (/mcp बनाम /sse), और timeout network की ओर इशारा करता है। Stdio सर्वर के लिए, जो सटीक कमांड आपने रजिस्टर किया है, वह उन्हीं environment variables के साथ अकेले चलना चाहिए।

Claude और PicassoIA के साथ काम करें

धूप वाली cafe टेबल पर लैपटॉप में एक बड़ी फ़ोटो देखता एक क्रिएटिव प्रोफ़ेशनल

Scopes सही होने के बाद, MCP Claude को असली क्षमताएँ सौंपने का तरीका बन जाता है, और इमेज इसका अच्छा उदाहरण हैं। PicassoIA अपने जनरेशन मॉडल एक developer API के ज़रिए https://api.picassoia.com/v1 पर और MCP कनेक्शन के ज़रिए उपलब्ध कराता है। उस सतह पर चार मॉडल हैं: PicassoIA Image, PicassoIA Image Editor Pro और दो वीडियो मॉडल। जॉब असिंक्रोनस तरीके से चलते हैं: Claude एक prediction सबमिट करता है, उसकी status जाँचता है, फिर तैयार नतीजा पढ़ता है। प्लेटफ़ॉर्म हर अकाउंट के लिए 5 concurrent predictions की अनुमति देता है, जो आपके खुले हर कनेक्शन में साझा होते हैं, इसलिए एक session के अनुरोधों का batch एक साथ चलने के बजाय कतार में लगेगा।

💡 Scope टिप: pricing पेज पर MCP कनेक्शन Pro+, Elite और Infinite प्लान पर सूचीबद्ध हैं, इसलिए सेटअप से पहले अपना प्लान पक्का कर लें। अगर आपको हर repository में इमेज जनरेशन चाहिए, तो कनेक्शन user scope पर रजिस्टर करें, या अगर सिर्फ़ एक प्रोजेक्ट को इसकी ज़रूरत है तो local scope पर। कनेक्शन URL अंदाज़े से न लिखें, बल्कि अपने PicassoIA अकाउंट से कॉपी करें।

PicassoIA पर Claude से Debug कैसे करें

claude mcp add कमांड की विफलता में मदद पाने के लिए आपको terminal की ज़रूरत नहीं है। Claude Sonnet 5 PicassoIA पर चलता है, और इस तरह की debugging में यह अच्छा काम करता है:

  1. ऊपर दिए लिंक से मॉडल का पेज खोलें।
  2. वह सटीक कमांड चिपकाएँ जो आपने चलाया, साथ ही /mcp या terminal से मिला error text।
  3. बताएँ कि आप कौन सा operating system इस्तेमाल करते हैं, और सर्वर HTTP है या stdio।
  4. सुधरा हुआ कमांड और एक लाइन में समझाएँ कि क्या गलत था, यह माँगें।
  5. फ़िक्स चलाएँ, फिर claude mcp list से उसकी पुष्टि करें।

बड़े .mcp.json के बारे में भारी reasoning के लिए, Claude Opus 4.7 उसी प्लेटफ़ॉर्म पर उपलब्ध है, और Claude 4.5 Haiku तेज़ी से छोटे syntax सवालों के जवाब देता है।

अपनी इमेज बनाएँ

Scopes के बारे में पढ़ना काम का है, पर असली फ़ायदा तब मिलता है जब कोडिंग करते हुए Claude विज़ुअल्स पर भी काम करे। Picasso IA खोलें, PicassoIA Image जैसा मॉडल चुनें, और अपने प्रॉम्प्ट से कुछ इमेज बनाएँ। अगले README के लिए header graphic, एक product mockup, या blog पोस्ट के लिए फ़ोटो जैसा दृश्य आज़माएँ। नतीजे पसंद आएँ तो वही क्षमता MCP के ज़रिए Claude Code से जोड़ें और असिस्टेंट को आपके वर्कफ़्लो के भीतर इमेज बनाने दें। खुलकर प्रयोग करें, मॉडलों की साथ-साथ तुलना करें, और जो प्रॉम्प्ट काम करें उन्हें सहेजें।

यह लेख शेयर करें

अपनी भाषा चुनें

संबंधित लेख