हमारी साइट के पास अब सिर्फ़ पेज नहीं, tools भी हैं
actmorehuman.com पर आने वाले AI agent ने अब तक वही किया है जो हर साइट पर हर agent करता है। उसने HTML पढ़ा, अंदाज़ा लगाया कि कौन-सा div search box है, और जो बटन जैसा दिखा उस पर क्लिक कर दिया। हमने redesign शिप किया तो वह टूट गया। कोई modal खुला तो वह खो गया।
वह दौर ख़त्म। आज से साइट agents को अपने काम की एक typed सूची देती है, और वे उन कामों को सीधे कॉल करते हैं।
इसका मानक WebMCP है, एक W3C प्रस्ताव जो किसी पेज को यह घोषित करने देता है कि उसके पास कौन-से tools हैं, उस हर agent के लिए जो उसे देख रहा है। हमने दस tools शिप किए हैं।
Agent अब क्या कर सकता है
चार read-only tools, जो कुछ बदलते नहीं और जिन्हें बेझिझक कॉल किया जा सकता है:
search_guidesऔरget_guideसाइट की हर गाइड तक पहुँचते हैं, जो सब ग्यारह भाषाओं में प्रकाशित हैंlist_assistantsऔरget_setup_stepsबताते हैं कि ChatGPT, Claude, Gemini, Grok, Perplexity और Copilot, हर एक ने अपनी custom-instructions सेटिंग कहाँ छिपाई है, और उसमें क्या डालना है
तीन जो कुछ बनाते हैं:
get_wizard_optionsऔरbuild_humanizer_promptवही prompt बनाते हैं जो साइट का wizard बनाता है, बिना इसके कि विज़िटर wizard में क्लिक करता चलेhumanize_textAI टेक्स्ट को चार टोन में से किसी एक में दोबारा लिखता है, 20 से 6,000 अक्षरों तक
तीन जो कॉमर्स या मेलबॉक्स को छूते हैं:
list_productsबताता है कि हम क्या बेचते हैं और आज उसकी कीमत क्या है, जिसमें add-ons के साथ एक कीमत वाला Company Voice कॉन्फ़िगरेशन भी शामिल हैstart_checkoutएक Stripe session खोलता हैsubscribe_to_updatesएक पुष्टि वाला ईमेल भेजने की माँग करता है
पूरे विवरण वही हैं जो agents पढ़ते हैं, और वे अपनी सीमाएँ ख़ुद बताते हैं। list_products कहता है कि सूची छोटी हो सकती है क्योंकि वह सिर्फ़ वही लौटाता है जो बिक्री पर है। humanize_text कहता है कि हर कॉल पर पैसा लगता है और उसी टेक्स्ट पर दोबारा कोशिश नहीं करनी चाहिए। जो agent धुंधले विवरण पर योजना बनाता है, वह ख़राब योजनाएँ बनाता है।
लिखने वाले tools रुककर पूछते हैं
start_checkout और subscribe_to_updates तब तक पूरे नहीं होते जब तक कोई इंसान पेज पर आए डायलॉग में उन्हें मंज़ूर न कर दे। किसी के भी क्लिक करने से पहले डायलॉग प्रोडक्ट, कीमत और ईमेल पता बता देता है। जो tool पुष्टि माँगता है पर दिखाने को कुछ ख़ास नहीं रखता, वह build फ़ेल कर देता है, इसलिए बिना किसी चीज़ से जुड़ा "क्या आप पक्का हैं?" शिप नहीं हो सकता।
Subscribe करना इसके ऊपर double opt-in है। Tool एक पुष्टि वाला ईमेल भेजता है और यह लौटाता है कि उसने ईमेल भेजा, सब्सक्रिप्शन नहीं। ईमेल को नज़रअंदाज़ करें तो कुछ नहीं हुआ। Agent किसी पते को सूची में नहीं डाल सकता, और हम भी नहीं।
humanize_text पीछे चुपचाप fetch करने के बजाय दिखने वाले फ़ॉर्म को चलाता है। विज़िटर अपना टेक्स्ट बॉक्स में आते और दोबारा लिखे जाते देखता है। साझा सतह का पूरा मतलब यही है: आपको अपनी स्क्रीन पर, उसी पेज पर जो आप देख रहे हैं, दिखना चाहिए कि agent ने क्या किया।
जो agents browser में नहीं हैं
वही tools /api/mcp पर MCP के ज़रिए भी चलते हैं, इसलिए बिना browser वाला कोई coding agent या desktop असिस्टेंट भी उन्हें कॉल कर सकता है। दोनों transports एक ही pipeline से गुज़रते हैं, और इसीलिए उनके guards आपस में अलग-अलग दिशा में नहीं जा सकते।
Read-only tools वहाँ खुले हैं। humanize_text नहीं है, और वजह नीरस है मगर बताने लायक: remote endpoint पर कोई authentication नहीं है, इसलिए model बजट ख़र्च करने वाला tool खोल देने से विज़िटर के browser में लोड हुआ कोई भी पेज हमारा बजट उनके ज़रिए ख़र्च कर सकता। पढ़ना खुला रहता है। ख़र्च करने के लिए ऐसा कॉलर चाहिए जिसे हम पहचान सकें।
स्कोरकार्ड, ख़राब हिस्से समेत
webmcp.com डायरेक्टरी ने छह पेज स्कैन किए और नतीजे को A ग्रेड दिया। उसे नौ tools मिले, जो सही है। दसवाँ, humanize_text, उसी feature flag के पीछे है जिसके पीछे humanizer पेज है, और जब तक वह flag बंद है, tool कभी रजिस्टर नहीं होता और कभी सूचीबद्ध नहीं होता। जो क्षमता कॉल पर फ़ेल हो जाए, उसका विज्ञापन करना उसके न होने से बदतर है।
स्कैन को विवरण और input की सीमाएँ पसंद आईं, और उसने एक असली कमी बताई: किसी भी tool में output schemas नहीं हैं। हर tool बिल्कुल साफ़ बताता है कि अंदर क्या जाता है, और कोई भी नहीं बताता कि बाहर क्या आता है। Agent को यह जानने के लिए हमारा आउटपुट parse करना पड़ता है। यह जायज़ चोट है और सूची में है।
पैमाना समझने के लिए: डायरेक्टरी में 522 verified साइटें और 3,387 tools हैं। उन सबमें, 51% पेज को चलाते हैं, 44% सिर्फ़ सवालों के जवाब देते हैं, और 5% पैसे या किसी प्रतिबद्धता को छूते हैं। हम तीनों खानों में आते हैं।
हमने यह क्यों किया
Assistants पहले से इस साइट को पढ़ते हैं। लोग ChatGPT से पूछते हैं कि Claude का custom-instructions बॉक्स कहाँ है और उन्हें हमारे लिखे पेजों से बना जवाब मिलता है। पढ़ा जाना अच्छा है। इस्तेमाल किया जा सकना कुछ और है, और अगला कदम वही है।
एक तर्क भी है जो हम वैसे भी रखते। Agentic वेब दो तरफ़ जा सकता है। या तो agents साइटों को scrape करते हैं और साइटें पार्स की जाने वाली निष्क्रिय सतहें बन जाती हैं, या साइटें अपना तर्क अपने पास रखती हैं और उसे अपनी शर्तों पर सामने रखती हैं, अपने guards, अपनी rate limits और अपने पुष्टि वाले डायलॉग के साथ। हम दूसरा रास्ता चलाना पसंद करेंगे। ऐसा checkout जो तभी आगे बढ़ता है जब कोई इंसान डायलॉग में उसे मंज़ूर करे, रुकावट नहीं है। वह साइट का अपने व्यवहार पर काबू रखना है।
शिप होने से पहले सुरक्षा समीक्षा के दो दौरों में चार समस्याएँ मिलीं, सब ठीक हुईं: MCP route पर खुला CORS, एक error path जो agent के देखने से पहले retry का समय निगल जाता था, एक bridge जो बिना origin वाले कॉलर्स को स्वीकार करता था, और एक handler जो किसी दूसरे module के error टेक्स्ट पर शाखा बनाता था। 67 फ़ाइलों में 898 tests पास हैं, जिनमें 254 नए हैं।
आज़माएँ
साइट को WebMCP-सक्षम browser में खोलें और अपने agent से em dashes पर कोई गाइड ढूँढने को कहें, या add-ons के साथ Company Voice engagement की कीमत निकालने को। वह search_guides या list_products कॉल करेगा और बताएगा कि क्या लौटा। उससे कुछ ख़रीदने को कहें तो वह रुकेगा और फ़ैसला आपके हाथ में देगा।
स्कोरकार्ड webmcp.com पर सार्वजनिक है। Output schemas अगला काम हैं।
---
यह AI की मदद से लिखा गया है। इसमें किया गया हर दावा छपने से पहले किसी इंसान ने जाँचा है। अगर AI का लिखा उस जाँच में खरा नहीं उतरता, तो वह छपने लायक नहीं है।