Cursor और Codex में Nano Banana MCP: सेटअप और उदाहरण
Nano Banana इमेज जनरेशन को MCP के ज़रिए Cursor और Codex से जोड़ने का व्यावहारिक, कदम-दर-कदम गाइड। इसमें सटीक mcp.json और config.toml फ़ाइलें, सीक्रेट को संभालने का तरीका, साथ-साथ तुलना, कॉपी करने लायक प्रॉम्प्ट, और सेटअप रोकने वाली एरर के समाधान शामिल हैं।
जब कोड पहले से Cursor या Codex में हो, तब चैट टैब में प्रॉम्प्ट टाइप करना, PNG डाउनलोड करना और उसे अपने रेपो में खींचना एक धीमा चक्र है। MCP सर्वर यह चक्कर खत्म कर देता है: कोडिंग एजेंट खुद Nano Banana को कॉल करता है, फ़ाइल को ऐसी जगह सेव करता है जहाँ आपका प्रोजेक्ट उसे इस्तेमाल कर सके, और हर टर्न में उसी इमेज को एडिट करता रहता है। यह आर्टिकल Cursor और Codex में Nano Banana MCP को खाली कॉन्फ़िग से लेकर एक काम करती इमेज कॉल तक जोड़ता है, जिसमें सटीक फ़ाइलें, अच्छा काम करने वाले प्रॉम्प्ट और पहले ही दिन आने वाली एरर शामिल हैं। Cursor और Codex की सेटिंग उनके मौजूदा डॉक्यूमेंटेशन के अनुसार हैं, और सर्वर की जानकारी पैकेज के सार्वजनिक README से ली गई है। जहाँ कोई डिटेल आपके चुने हुए सर्वर पर निर्भर करती है, वहाँ टेक्स्ट यह साफ़ बताता है।
सर्वर असल में क्या करता है
MCP (Model Context Protocol) AI क्लाइंट के लिए बाहरी टूल्स को कॉल करने का एक मानक तरीका है। एक इमेज सर्वर कुछ ऐसे टूल्स देता है, जैसे generate_image या edit_image, और Cursor या Codex के अंदर का मॉडल चैट में आपकी माँग के आधार पर तय करता है कि कौन-सा टूल कब कॉल करना है। Nano Banana, Google के Gemini इमेज मॉडल का उपनाम है, जो PicassoIA पर Nano Banana के रूप में उपलब्ध है, और उसका हाई-रेज़ोल्यूशन टियर Nano Banana Pro है। MCP सर्वर खुद आपकी मशीन पर चलने वाला एक छोटा Node प्रोसेस है। यह आपका Gemini टोकन रखता है, प्रॉम्प्ट को Google तक भेजता है और नतीजा डिस्क पर लिख देता है।
एक विशिष्ट Nano Banana सर्वर आपके एजेंट को यह सब देता है:
टेक्स्ट से इमेज: एक दृश्य का वर्णन करें, बदले में PNG पाएँ।
फ़ाइल पाथ से एडिट: किसी मौजूदा इमेज का पाथ दें और बदलाव बताएँ।
एडिटिंग जारी रखें: पूरा प्रॉम्प्ट दोहराए बिना आखिरी इमेज को परिष्कृत करें।
स्टेटस टूल्स: कॉल बर्बाद करने से पहले बताएँ कि टोकन सेट है या नहीं।
एडिटर के अंदर ही यह क्यों चलाएँ? क्योंकि वही चैट जो आपका हीरो कॉम्पोनेंट लिखती है, हीरो इमेज भी बना सकती है, फ़ाइल का नाम रख सकती है और <img> टैग अपडेट कर सकती है। प्रॉम्प्ट आपके कमिट के बगल में चैट हिस्ट्री में रहता है, और हर बदलाव एक वाक्य में हो जाता है, ब्राउज़र के चक्कर नहीं लगाने पड़ते।
💡 सर्वर आपकी मशीन पर लोकल चलता है और खर्च आपका Gemini कोटा होता है। Cursor या Codex में से कोई भी इमेज कॉल के लिए आपसे बिल नहीं लेता।
ज़रूरतें और भरोसे की जाँच
पाँच मिनट की तैयारी इस आर्टिकल में बाद में बताई गई ज़्यादातर विफलताओं को रोक देती है।
चेकलिस्ट
आइटम
इसकी ज़रूरत क्यों है
कहाँ से मिलेगा
Node.js 18 या नया
npx सर्वर शुरू करता है
nodejs.org
Gemini API टोकन
हर इमेज कॉल को प्रमाणित करता है
Google AI Studio
Cursor या Codex CLI
MCP क्लाइंट जो सर्वर से बात करता है
आपके एडिटर या टर्मिनल का इंस्टॉल
एक लिखने योग्य फ़ोल्डर
सर्वर जनरेट की गई PNG फ़ाइलें यहाँ सेव करता है
कोई भी प्रोजेक्ट डायरेक्टरी
सबसे पहले node --version चलाएँ। अगर यह 18 से कम कोई भी वर्ज़न दिखाता है, तो किसी कॉन्फ़िग फ़ाइल को छूने से पहले अपग्रेड करें, क्योंकि बहुत पुराना रनटाइम ऐसी एरर देता है जो असंबंधित लगती हैं।
ऐसा सर्वर चुनें जिस पर भरोसा हो
कई npm पैकेज Nano Banana नाम का दावा करते हैं। nano-banana-mcp छह टूल्स का दस्तावेज़ीकरण करता है: generate_image, edit_image, continue_editing, get_last_image_info, configure_gemini_token और get_configuration_status। @saroby/nanobanana-mcp में सिर्फ़ दो दिए गए हैं, generate_image और list_images। @mindstone/mcp-server-nano-banana तीसरा विकल्प है। इनके टूल नाम अलग-अलग हैं, इसलिए एक के लिए लिखे प्रॉम्प्ट दूसरे पर हमेशा काम नहीं करेंगे।
एक npx सर्वर आपके कंप्यूटर पर आपकी यूज़र परमिशन से कोड चलाता है, और जो टोकन आप देते हैं वह उसे देखता है। रिपॉज़िटरी पढ़ें, आखिरी रिलीज़ की तारीख देखें, और सब कुछ काम करने लगे तो एक सटीक वर्ज़न पिन कर दें। यह वॉकथ्रू nano-banana-mcp इस्तेमाल करता है क्योंकि इसकी टूल लिस्ट सार्वजनिक रूप से दस्तावेज़ित है।
Cursor में Nano Banana MCP सेट करें
Cursor MCP सर्वर दो जगहों से पढ़ता है: किसी प्रोजेक्ट के अंदर .cursor/mcp.json, और उन सर्वरों के लिए जो हर जगह चाहिए, आपके होम फ़ोल्डर में ~/.cursor/mcp.json। जब दोनों में एक ही सर्वर नाम हो, तो प्रोजेक्ट वाली फ़ाइल जीतती है।
फ़ाइल सेव करें। Cursor इसे पूरे रीइंस्टॉल के बिना उठा लेता है।
साइडबार में Customize पैनल खोलें और MCP लिस्ट में nano-banana ढूँढें।
टॉगल ऑन करें। बंद सर्वर लोड नहीं होते और चैट में दिखते भी नहीं।
एजेंट से पूछें: "Nano Banana की कॉन्फ़िगरेशन स्थिति जाँचें।" हरा सर्वर और साफ़ स्टेटस जवाब बताता है कि वायरिंग काम कर रही है।
डिफ़ॉल्ट रूप से Cursor हर MCP टूल चलने से पहले अनुमति माँगता है। टूल के नाम के बगल वाले तीर पर क्लिक करके आर्ग्युमेंट देखें। पहली कुछ कॉल के लिए यह ज़रूर करें, ताकि आपको साफ़ दिखे कि एजेंट ने कौन-सा प्रॉम्प्ट लिखा।
💡 Windows पर अगर सर्वर स्पॉन नहीं होता, तो कमांड को cmd से और आर्ग्युमेंट्स को ["/c", "npx", "-y", "nano-banana-mcp"] से बदलें। कुछ सेटअप npx को सीधे लॉन्च नहीं कर पाते।
सीक्रेट को Git से बाहर रखें
${env:GEMINI_API_KEY} सिंटैक्स Cursor को बताता है कि सर्वर शुरू करते समय वैल्यू आपके एनवायरनमेंट से पढ़े। इस तरह फ़ाइल में कोई सीक्रेट नहीं रहता और उसे कमिट करना सुरक्षित है। Cursor कई वेरिएबल इसी तरह हल करता है: ${env:NAME}, ${userHome} और ${workspaceFolder} वे हैं जो आप सबसे ज़्यादा इस्तेमाल करेंगे।
वेरिएबल को एक बार ऐसी जगह सेट करें जहाँ Cursor उसे देख सके:
macOS और Linux: इसे अपनी शेल प्रोफ़ाइल में एक्सपोर्ट करें, फिर एक नए टर्मिनल से Cursor शुरू करें। डॉक से लॉन्च किया गया ऐप उन वेरिएबल्स को मिस कर सकता है जो सिर्फ़ शेल फ़ाइल में परिभाषित हों।
Windows: इसे यूज़र एनवायरनमेंट वेरिएबल के रूप में जोड़ें, फिर Cursor को बंद करके दोबारा खोलें।
Codex में Nano Banana MCP सेट करें
Codex सब कुछ एक TOML फ़ाइल, ~/.codex/config.toml में रखता है, और इसे बदलने के लिए एक कमांड देता है, इसलिए आपको शायद ही कभी फ़ाइल खोलनी पड़े।
डबल डैश के बाद की हर चीज़ वह कमांड है जो सर्वर शुरू करता है। codex mcp list से एंट्री कन्फ़र्म करें, फिर Codex सेशन शुरू करके /mcp टाइप करें ताकि सक्रिय सर्वर और उनका स्टेटस दिखे। बाकी सबकमांड हैं login, OAuth सर्वरों के लिए, और remove, एंट्री हटाने के लिए।
पेच यह है: यह तरीका आपका टोकन config.toml में सादे टेक्स्ट में लिख देता है। निजी लैपटॉप के लिए यह ठीक हो सकता है। किसी साझा सिस्टम के लिए अगला तरीका अपनाएँ।
config.toml को हाथ से एडिट करें
वही सर्वर, जिसमें टोकन स्टोर होने के बजाय आपके शेल से लिया जाता है:
env_vars उन वेरिएबल नामों की लिस्ट है जिन्हें Codex पैरेंट प्रोसेस से कॉपी करता है, इसलिए टोकन कभी फ़ाइल को छूता नहीं।
startup_timeout_sec पहली लॉन्च पर मायने रखता है, जब npx सर्वर के जवाब देने से पहले पैकेज डाउनलोड करता है। अगर पहली रन टाइम आउट हो, तो इसे बढ़ाएँ।
tool_timeout_sec एक टूल कॉल को सीमित करता है। इमेज जनरेशन ज़्यादातर टूल्स से ज़्यादा समय लेती है, इसलिए इसे पर्याप्त समय दें।
Cursor और Codex साथ-साथ
Cursor
Codex
कॉन्फ़िग फ़ाइल
.cursor/mcp.json या ~/.cursor/mcp.json
~/.codex/config.toml
फ़ॉर्मैट
mcpServers ऑब्जेक्ट वाला JSON
[mcp_servers.name] टेबल वाला TOML
सर्वर जोड़ें
फ़ाइल एडिट करें या Customize पैनल इस्तेमाल करें
codex mcp add
सीक्रेट संभालना
${env:NAME} इंटरपोलेशन
env_vars शell से इनहेरिट करता है
स्टेटस जाँचें
Customize में टॉगल और टूल लिस्ट
सेशन के अंदर /mcp
टाइमआउट
फ़ाइल में सेट नहीं
startup_timeout_sec, tool_timeout_sec
असली फ़र्क शेयरिंग का है। प्रोजेक्ट लेवल की .cursor/mcp.json कमिट की जा सकती है, इसलिए पूरी टीम को एक ही सर्वर डेफ़िनिशन मिलता है और हर किसी को बस अपना टोकन चाहिए। Codex अपनी लिस्ट आपके होम फ़ोल्डर में रखता है, जो निजी सेटअप के लिए ठीक है, लेकिन अगर साथी इसे कॉपी करें तो README में एक छोटी लाइन चाहिए।
कॉपी करने लायक प्रॉम्प्ट
काम करता सर्वर आधा काम है। प्रॉम्प्ट तय करता है कि आपको काम की एसेट मिलेगी या सिर्फ़ अंदाज़े पर टिका नतीजा। तीन आदतें दोनों क्लाइंट में मदद करती हैं: वह फ़ाइल नाम बताएँ जो चाहिए, हर कॉल में एक इमेज माँगें, और मूड के बजाय फ़ोटो का वर्णन करें।
कमज़ोर प्रॉम्प्ट
बेहतर प्रॉम्प्ट
यह क्यों काम करता है
"एक शानदार हीरो इमेज बनाओ"
"प्राइसिंग पेज के लिए 16:9 हीरो, ओक की मेज़ पर एक लैपटॉप, सुबह की खिड़की की रोशनी, शैलो डेप्थ ऑफ़ फ़ील्ड, कोई टेक्स्ट नहीं"
फ़ॉर्मेट, सब्जेक्ट, रोशनी और एक शर्त बताता है
"एक जूता"
"हल्के कंक्रीट पर सफ़ेद लेदर स्नीकर, बाईं ओर से सॉफ़्टबॉक्स लाइट, सीमलेस ग्रे बैकड्रॉप"
मॉडल को कैमरा सेटअप देता है
"तस्वीर ठीक करो"
"public/images/shoe.png एडिट करो: बैकड्रॉप थोड़ा गर्म करो, सिलाई और लोगो वैसे ही रखो"
एक फ़ाइल की ओर इशारा करता है और बताता है क्या नहीं बदलना
लैंडिंग पेज के लिए हीरो इमेज
यह चैट में चिपकाएँ:
Nano Banana के generate_image टूल से प्राइसिंग पेज के लिए 16:9 हीरो इमेज बनाओ: एक पतले लैपटॉप की तस्वीर, घिसी हुई ओक की मेज़ पर, बाईं ओर की खिड़की से आती गर्म सुबह की रोशनी में, अग्रभूमि में एक सिरेमिक मग, शैलो डेप्थ ऑफ़ फ़ील्ड, कोई टेक्स्ट नहीं, कोई लोगो नहीं। फिर फ़ाइल को public/images/ में pricing-hero.png नाम से ले जाओ और Hero.tsx में इमेज टैग अपडेट करो।
ज़्यादातर सर्वर अपने डिफ़ॉल्ट फ़ोल्डर में सेव करते हैं, जैसे Windows पर आपके Documents फ़ोल्डर में nano-banana-images या macOS और Linux पर वर्किंग डायरेक्टरी में generated_imgs। इसीलिए प्रॉम्प्ट एजेंट से फ़ाइल ले जाने को कहता है। एजेंट यह काम एक सामान्य टर्मिनल कमांड से करते हैं।
प्रोडक्ट शॉट्स और एडिट
पहले एक बेस इमेज बनाएँ, फिर उसे उसी जगह एडिट करें:
एक हल्के कंक्रीट ब्लॉक पर सफ़ेद लेदर स्नीकर का स्टूडियो फ़ोटो बनाओ, सीमलेस ग्रे बैकड्रॉप के सामने, ऊपर-बाईं ओर से सॉफ़्टबॉक्स लाइट। इसे shoe.png नाम से सेव करो।
इसके बाद एक लक्षित बदलाव करें:
shoe.png पर edit_image इस्तेमाल करो: बैकड्रॉप को वॉर्म सैंड रंग में बदलो, सिलाई, फीते और सोल बिल्कुल वैसे ही रखो।
अगर आपके सर्वर में continue_editing टूल है, तो छोटे समायोजन एक वाक्य बन जाते हैं: "परछाई को और नरम करो।" कुछ सर्वर एक ही कॉल में कई रेफ़रेंस इमेज भी लेते हैं, यह तब काम आता है जब प्रोडक्ट फ़ोटो के एक सेट में एक जैसी स्टाइल चाहिए। इस पर भरोसा करने से पहले अपने सर्वर का README देखें।
मॉडल द्वारा लिखे गए प्रॉम्प्ट
हर प्रॉम्प्ट आपको खुद लिखना ज़रूरी नहीं है। एजेंट से कोई पेज पढ़वाएँ और उसके कॉपी से मेल खाते तीन इमेज प्रॉम्प्ट सुझवाएँ, फिर एक को मंज़ूर करें। Cursor या Codex को चलाने वाला मॉडल यह अच्छा करता है, क्योंकि वह आसपास का कॉम्पोनेंट, आपकी स्टाइलशीट के ब्रांड रंग और स्लॉट का आस्पेक्ट रेशियो देख सकता है।
अगर एडिटर के बाहर दूसरी राय चाहिए, तो PicassoIA पर ऐसे लार्ज लैंग्वेज मॉडल हैं जिनसे यही काम हो सकता है, जिनमें Claude Sonnet 5 और GPT 5.6 Sol शामिल हैं। अपना पेज कॉपी चिपकाएँ, ऊपर वाले कमज़ोर बनाम बेहतर फ़ॉर्मेट में प्रॉम्प्ट माँगें, और जीतने वाला प्रॉम्प्ट एजेंट के पास वापस ले जाएँ।
आम एरर ठीक करना
ज़्यादातर विफलताएँ तीन समूहों में आती हैं: सर्वर कभी शुरू नहीं होता, टोकन गायब होता है, या फ़ाइलें कहीं अनपेक्षित जगह पहुँच जाती हैं।
सर्वर कभी शुरू नहीं होता
लक्षण
संभावित कारण
समाधान
Cursor में लाल स्टेटस, टूल लिस्ट खाली
ऐप को npx नहीं मिला
npx का पूरा पाथ इस्तेमाल करें, या Windows पर cmd /c वाला फ़ॉर्म
Codex में स्टार्टअप टाइमआउट दिखता है
पहली लॉन्च पर पैकेज डाउनलोड हो रहा है
startup_timeout_sec बढ़ाएँ, और npx कमांड एक बार खुद चलाएँ
तुरंत बंद हो जाता है
Node.js 18 से पुराना है
Node अपग्रेड करें और क्लाइंट दोबारा शुरू करें
कॉन्फ़िग बदलने के बाद टूल गायब
क्लाइंट में अब भी पुराना कॉन्फ़िग है
सर्वर को बंद करके चालू करें, या सेशन दोबारा शुरू करें
अपने कॉन्फ़िग की सटीक कमांड एक सामान्य टर्मिनल में चलाएँ। अगर वहाँ एरर आती है, तो समस्या सर्वर या आपके एनवायरनमेंट में है, Cursor या Codex में नहीं।
टोकन और कोटा एरर
ऑथेंटिकेशन एरर लगभग हमेशा इसका मतलब होता है कि वेरिएबल उस प्रोसेस में नहीं है जो सर्वर लॉन्च करता है, भले ही वह आपके शell में मौजूद हो। उसी टर्मिनल में प्रिंट करके देखें जहाँ से आप क्लाइंट शुरू करते हैं। अगर आप get_configuration_status जैसा स्टेटस टूल इस्तेमाल करते हैं, तो पहले उसे कॉल करें और मॉडल को दोष देने से पहले उसका जवाब पढ़ें।
कोटा या रेट लिमिट के जवाब Google से आते हैं, MCP से नहीं। धीमे चलें, एक बार में एक इमेज माँगें, और Google AI Studio में अपना उपयोग जाँचें। तंग लूप में बार-बार कोशिश करने से थ्रॉटल और लंबा खिंचता है।
PicassoIA पर Nano Banana चलाएँ
हर इमेज के लिए लोकल सर्वर ज़रूरी नहीं है। जब आप कोई प्रॉम्प्ट जल्दी टेस्ट करना चाहते हैं, कोई नतीजा शेयर करना चाहते हैं, या टोकन मैनेज करने से बचना चाहते हैं, तब ब्राउज़र का रास्ता तेज़ है।
मॉडल पेज खोलें और अपना प्रॉम्प्ट टाइप करें। वही फ़ोटोग्राफ़िक शब्द इस्तेमाल करें जो आप MCP एजेंट को देते।
वह आस्पेक्ट रेशियो चुनें जो आपके स्लॉट से मेल खाए। 16:9 हीरो बैनर के लिए ठीक है, 1:1 प्रोडक्ट ग्रिड के लिए।
जनरेट करें, देखें, और प्रॉम्प्ट को अंधाधुंध दोबारा चलाने के बजाय परिष्कृत करें। एक बार में एक चीज़ बदलें।
नतीजा डाउनलोड करें और अपने प्रोजेक्ट में डालें, या एजेंट के लिए रेफ़रेंस के रूप में रखें।
जब पहला नतीजा करीब हो लेकिन सही न हो, तो दो सिबलिंग मॉडल आज़माने लायक हैं। Nano Banana 2 नई पीढ़ी है, और Nano Banana 2 Lite ड्राफ़्ट के लिए गति के बदले थोड़ी गुणवत्ता छोड़ता है। Nano Banana Pro उन फ़ाइनल एसेट के लिए है जिन्हें ज़्यादा रेज़ोल्यूशन चाहिए।
स्टिल्स को वीडियो में बदलें
आपके एडिटर वर्कफ़्लो की कोई स्टिल इमेज एक छोटी क्लिप बन सकती है। हीरो इमेज लें, एक इमेज-टू-वीडियो मॉडल खोलें और मूवमेंट बताएँ: धीरे-धीरे पास आता कैमरा, मग से उठती भाप, दीवार पर सरकती रोशनी। Seedance 2.0 बिल्ट-इन ऑडियो के साथ वीडियो बनाता है, Seedance 2.5 Lite 10 सेकंड तक की क्लिप देता है, और Veo 3.1 एक और विकल्प है, जब आप Google के इमेज मॉडल के साथ Google का वीडियो मॉडल भी चाहते हों।
कोड से PicassoIA को कॉल करें
PicassoIA के पास डेवलपर API और एक MCP कनेक्टर भी है। API https://api.picassoia.com/v1 पर है और एक Bearer टोकन इस्तेमाल करता है जो pia_sk_ से शुरू होता है। यह Replicate जैसे फ़्लो को फ़ॉलो करता है: POST /v1/models/{owner}/{name}/predictions से प्रेडिक्शन बनाएँ, GET /v1/predictions/{id} को पोल करें, फिर नतीजा पढ़ें। सीमाओं में प्रति अकाउंट 5 समवर्ती प्रेडिक्शन और प्रति प्रॉम्प्ट 4,000 कैरेक्टर शामिल हैं।
एक ईमानदार चेतावनी: API और MCP कनेक्टर के ज़रिए उपलब्ध मॉडल picassoia/picassoia-image, picassoia/picassoia-image-editor-pro, picassoia/picassoia-video और picassoia/seedance-2.5-lite हैं। Nano Banana इस छोटी सूची में नहीं है, इसलिए इसके लिए ब्राउज़र पेज इस्तेमाल करें। फिर भी आप PicassoIA Image Editor Pro और PicassoIA Image पेज लिंक करके देख सकते हैं कि हर एक क्या करता है। API एक्सेस आपके प्लान पर निर्भर करता है, और प्राइसिंग और API पेजों की शब्दावली अलग है, इसलिए इस पर कुछ बनाने से पहले अपना प्लान कन्फ़र्म करें।
अपने प्रोजेक्ट पर आज़माएँ
अब आपके पास पूरा चक्र है: एक सर्वर जो शुरू होता है, एक टोकन जो git से बाहर रहता है, ऐसे प्रॉम्प्ट जो फ़ाइलों और कैमरों के नाम लेते हैं, और उन विफलताओं के समाधान जो ज़्यादातर लोगों को पहले ही कदम पर रोक देती हैं। अपने मौजूदा प्रोजेक्ट में एक असली स्लॉट चुनें, जैसे हीरो बैनर या प्रोडक्ट टाइल, और आज ही ऊपर दिया Cursor या Codex सेटअप चलाएँ।
अगर कॉन्फ़िग फ़ाइल छूने से पहले देखना है कि मॉडल क्या करता है, तो PicassoIA पर उसे खोलें, इस आर्टिकल का कोई एक प्रॉम्प्ट चिपकाएँ, और नतीजे की तुलना अपने एजेंट के नतीजे से करें। पहले Nano Banana आज़माएँ, फिर picassoia.com/en/all-models पर बाकी इमेज और वीडियो मॉडल देखें। रोशनी, लेंस और आस्पेक्ट रेशियो के साथ प्रयोग करें, और जो प्रॉम्प्ट काम करें उन्हें अपने कोड के बगल वाली फ़ाइल में रखें।