आपके एजेंट ने साइट लिख दी। प्रकाशित भी उसी को करने दें।
harvis.dev एक रिमोट MCP सर्वर है। एक बार जोड़ दीजिए, और आपके AI क्लाइंट को deploy_site टूल मिल जाता है, जो फ़ाइलों का पूरा फ़ोल्डर ऑनलाइन कर देता है और चालू पता लौटा देता है — न खाता, न API की, न कुछ इंस्टॉल करना।
AI क्लाइंट और सेवा के बीच एक मानक प्लग
Model Context Protocol एक खुला मानक है, जिससे सहायक को ऐसे कामों की सूची दी जाती है जो वह सचमुच कर सकता है। आपके एजेंट के पास फ़ाइलें पहले से हैं और वह जानता है कि आपने क्या माँगा; कमी सिर्फ़ बातचीत के बाहर काम करने के रास्ते की है। MCP सर्वर ठीक वही देता है — नाम वाले टूल की सूची, हर एक इतना साफ़ बताया हुआ कि मॉडल को पता चले कि कब उसे उठाना है। harvis.dev ठीक एक टूल देता है, और वह वेबसाइट प्रकाशित करता है।
सर्वर एक ही बार जोड़ें
आपके क्लाइंट की कॉन्फ़िग फ़ाइल में एक URL, या टर्मिनल में एक कमांड। उसके बाद हर बातचीत में जुड़ाव बना रहता है।
मॉडल को टूल दिखता है, API नहीं
न कोई एंडपॉइंट याद रखना, न curl जोड़ना, न कोई की चिपकाना। वह पढ़ता है कि deploy_site क्या करता है और तब बुलाता है जब आपने प्रकाशित करने को कहा हो।
आप बातचीत से बाहर जाते ही नहीं
एक लैंडिंग पेज माँगिए और उसी जवाब में चालू पता पाइए। बीच में न निर्यात, न अपलोड का कदम, न कोई बिल्ड पाइपलाइन।
एक URL, कोई भी MCP क्लाइंट
Streamable HTTP, कोई प्रमाणीकरण नहीं। रिमोट MCP वाले क्लाइंट पता जैसा है वैसा ही लेते हैं; सिर्फ़ stdio बोलने वाले क्लाइंट, जैसे Claude Desktop, mcp-remote के ज़रिए जुड़ते हैं। अपना चुनिए और ब्लॉक कॉपी कर लीजिए।
https://harvis.dev/api/mcp
$ claude mcp add --transport http harvis https://harvis.dev/api/mcpTest it from a terminal
Not sure the address is reachable from where you are? The MCP Inspector asks the server what tools it has, over the same transport a client uses — nothing to install, and no account. If deploy_site comes back, the server is fine and anything still broken is in your client's config.
$ npx -y @modelcontextprotocol/inspector --cli https://harvis.dev/api/mcp --transport http --method tools/list{
"tools": [
{
"name": "deploy_site",
"description": "Publish a static website to harvis.dev and get a live public URL back instantly...",
"inputSchema": {
"type": "object",
"properties": { "files": { ... }, "name": { ... }, "subdomain": { ... } },
"required": ["files"]
}
}
]
}Rather install from a directory? harvis is listed on Glama's MCP registry, pointing at the same server URL.
एक टूल, और वह एक ही काम करता है
deploy_site साइट की हर ज़रूरी फ़ाइल लेता है और प्रकाशित कर देता है। पथ साइट की जड़ से सापेक्ष होते हैं और स्लैश इस्तेमाल करते हैं; index.html ज़रूर रखिए। पाठ जैसा है वैसा जाता है, चित्र और बाकी बाइनरी फ़ाइलें base64 में।
| फ़ील्ड | प्रकार | यह क्या है |
|---|---|---|
| files | array · अनिवार्य | साइट की हर फ़ाइल: एक पथ, उसका कंटेंट, और text या base64 एन्कोडिंग। कुल 500 फ़ाइलें और 50 MB तक। |
| name | string | साइट का पढ़ने लायक नाम, डैशबोर्ड में दिखता है। वेब पता वैसे भी बन ही जाता है। |
| deployToken | string | किसी साइट का निजी टोकन, जिसे उसे बनाने वाले डिप्लॉय ने लौटाया था। इसे भेजने पर नई साइट बनने के बजाय वही साइट अपनी जगह अपडेट हो जाती है। |
| subdomain | string | जिस साइट को अपडेट किया जा रहा है उसका पता। वैकल्पिक, और सिर्फ़ उसके deployToken के साथ ही स्वीकार होता है — अकेले यह कुछ साबित नहीं करता, इसलिए अपडेट की अनुमति नहीं दे सकता। |
एक सार्वजनिक लिंक, और एक निजी
टूल एक टेक्स्ट लौटाता है जिसे मॉडल आपको पढ़कर सुनाता है। चालू URL सार्वजनिक है और साझा करने को तैयार। क्लेम लिंक निजी है: उसे खोलिए, मुफ़्त साइन इन कीजिए, और साइट आपके खाते से जुड़ जाएगी, जहाँ आप उसे बदल या मिटा सकते हैं। तब तक साइट अनाम रहती है, और बिना क्लेम की गई साइट आख़िरी डिप्लॉय के 24 घंटे बाद वापस ले ली जाती है — इसलिए क्लेम लिंक उसी दिन खोल लीजिए, क्योंकि खो जाने पर वह वापस नहीं मिलता।
Site deployed successfully. Live site: https://happy-panda-482.harvis.page Claim link (private): https://harvis.dev/claim/xxxxxxxx-... Subdomain: happy-panda-482 Deploy token (private): xxxxxxxx-xxxx-... Files hosted: 7
वही साइट बदलने के लिए दोबारा डिप्लॉय कीजिए
हर डिप्लॉय एक निजी deployToken भी लौटाता है। अगली बार उसे साथ भेजिए और वही साइट अपनी जगह बदल जाएगी, पता वही रहेगा — क्लेम करने से पहले भी और बाद में भी। उसे छोड़ दीजिए तो नए पते पर नई साइट मिलेगी, जो दूसरे मसौदे के लिए ठीक है, जिसे आप मिटाने के बजाय मिलाकर देखना चाहते हैं।
सवाल
कॉन्फ़िग चिपकाने से पहले लोग यही पूछते हैं।
क्या मुझे खाता चाहिए?
नहीं। MCP सर्वर कोई भी क्रेडेंशियल नहीं लेता, और इसके ज़रिए किया गया डिप्लॉय अनाम होता है — इसीलिए क्लेम लिंक लौटता है। साइन अप मुफ़्त है और तभी चाहिए जब आप साइट को 24 घंटे से ज़्यादा रखना चाहें या बाद में उसे संभालना चाहें।
क्या मेरा एजेंट इससे कुछ और भी कर सकता है?
नहीं। deploy_site ही इकलौता टूल है जो यह सर्वर खोलता है, और वह आपकी दी हुई फ़ाइलें प्रकाशित करने के अलावा कुछ नहीं करता। न वह आपका खाता पढ़ सकता है, न किसी की साइटें सूचीबद्ध कर सकता है, न कुछ मिटा सकता है। harvis.dev का बाकी सब कुछ HTTP API पर खाता की के पीछे है, जिसे यह सर्वर छूता तक नहीं।
मेरा क्लाइंट रिमोट MCP सर्वर नहीं चलाता।
तब वह stdio बोलता है, और mcp-remote दोनों के बीच पुल बनाता है — ऊपर Claude Desktop और Zed के ब्लॉक यही करते हैं। आपकी मशीन पर सिर्फ़ Node.js चाहिए; पहली बार चलने पर npx पुल उतार लेता है।
इस पर क्या रखा जा सकता है?
स्टैटिक फ़ाइलें: HTML, CSS, JavaScript, चित्र, फ़ॉन्ट, वह सब जो ब्राउज़र माँग सकता है। सर्वर-साइड कोड नहीं चलता। फ़ॉर्म अपवाद हैं — किसी फ़ॉर्म पर harvis-form एट्रिब्यूट लगाइए और भरे हुए जवाब बिना अपने बैकएंड के आपके डैशबोर्ड में आ जाएँगे।
क्या इसे MCP क्लाइंट के बिना इस्तेमाल कर सकते हैं?
हाँ। जो एजेंट कमांड चला सकता है वह npx harvis से प्रकाशित करता है, और जो सिर्फ़ HTTP रिक्वेस्ट कर सकता है वह बिना की के /api/upload पर फ़ाइलें POST कर सकता है। दोनों रास्ते /llms.txt पर लिखे हैं — यही वह पेज है जो ऐसे सहायक को देना चाहिए जिसके पास इसका टूल न हो।
आस-पास कोई एजेंट नहीं?
वही डिप्लॉय आपके टर्मिनल से, ब्राउज़र से या किसी स्क्रिप्ट से भी होता है — MCP सर्वर अंदर आने का एक दरवाज़ा है, इकलौता नहीं।