جولائی میں ایمسٹرڈیم کے 200 ریستورانوں پر کیے گئے ایک ٹیسٹ سے معلوم ہوا کہ موجودہ AI اسسٹنٹ ٹیبل ریزرویشن مکمل نہیں کر سکتے کیونکہ بکنگ ویجیٹ (widget) ایک iframe کے اندر چھپا ہوتا ہے۔

iframe ایجنٹس کو کیوں روکتا ہے

زیادہ تر آن لائن ریزرویشن ٹولز ایک ایمبیڈڈ (embedded) iframe کی صورت میں فراہم کیے جاتے ہیں۔ ایک وزیٹر "Reserve" بٹن پر کلک کرتا ہے، ایک کیلنڈر سامنے آتا ہے، اور صارف وقت کا انتخاب کرتا ہے۔ ایک انسان کے لیے یہ عمل کام کرتا ہے؛ لیکن ایک AI ایجنٹ کے لیے یہ رک جاتا ہے۔

  • ایجنٹ مین HTML پیج کو پارس (parse) کرتا ہے۔
  • بکنگ بٹن ایک مختلف ڈومین پر موجود URL کی طرف اشارہ کرتا ہے۔
  • براؤزر اس URL کو ایک iframe کے اندر لوڈ کرتا ہے، جس سے وہ پیرنٹ پیج (parent page) سے الگ ہو جاتا ہے۔

چونکہ same-origin policy پیرنٹ پیج کے اسکرپٹس کو iframe کے DOM کو پڑھنے یا اس کے نیٹ ورک کالز کو روکنے سے روکتی ہے، اس لیے ایک AI ایجنٹ جو پیج کا مواد پڑھتا ہے اور HTTP درخواستیں بھیجتا ہے، اسے صرف بٹن نظر آتا ہے۔ اسے کیلنڈر، وقت کے سلٹس (time slots)، یا کنفرمیشن کا عمل کبھی نظر نہیں آتا۔ اگر وہ بٹن پر کلک کر بھی دے، تب بھی اسے captchas حل کرنے ہوں گے، لے آؤٹ کی تبدیلیوں کے مطابق ڈھلنا ہوگا، یا ان anti-automation دفاعی نظاموں سے بچنا ہوگا جو بہت سی بکنگ سروسز استعمال کرتی ہیں۔

مشین کے قابل پڑھنے والے لنک کی کمی

163 فعال ریستوران ویب سائٹس کے ایک الگ آڈٹ میں صرف نو ایسی سائٹس ملیں جنہوں نے مشین کے قابل پڑھنے والا بکنگ ڈیٹا فراہم کیا تھا۔ ان نو سائٹس نے schema.org مارک اپ کا استعمال کرتے ہوئے بنیادی معلومات—نام اور پتہ—لسٹ کی تھیں، لیکن ان میں سے کسی میں بھی ایسی ریزرویشن ایکشنز شامل نہیں تھیں جنہیں ایجنٹ استعمال کر سکے۔ Schema.org اس مقصد کے لیے ReserveAction جیسے ٹائپس کی تعریف کرتا ہے، پھر بھی زیادہ تر سائٹس صرف وضاحتی میٹا ڈیٹا (metadata) شائع کرتی ہیں، قابل عمل ہدایات نہیں۔

عملی طور پر، ایک اسسٹنٹ ایسے اسٹرکچرڈ ڈیٹا کی تلاش میں ہوتا ہے جو اسے بتائے کہ کام کیسے کرنا ہے، نہ کہ صرف یہ کہ کام کیا ہے۔ ReserveAction یا اس کے متبادل اینڈ پوائنٹ (endpoint) کے بغیر، ایجنٹ انسانی کلک کی نقل کرنے پر مجبور ہو جاتا ہے، جو کہ جیسا کہ اوپر بیان کیا گیا ہے، ناقابل بھروسہ ہے۔

ایک عملی حل جو UI کو خراب نہیں کرتا

  1. بکنگ API شائع کریں – ایک ہلکا پھلکا HTTP اینڈ پوائنٹ بنائیں جو دستیابی کی پوچھ گچھ اور ریزرویشن بنانے کے لیے JSON درخواستیں قبول کرے۔ API تاریخ، وقت، افراد کی تعداد، اور کنفرمیشن کوڈ جیسے فیلڈز واپس کرتا ہے۔ کوئی بھی ایجنٹ پیج رینڈر کیے بغیر اسے استعمال کر سکتا ہے۔
  2. API کو قابلِ دریافت بنائیں – کسی معروف مقام پر پوائنٹر رکھیں، جیسے کہ /.well-known/booking، یا پیج کے schema.org مارک اپ میں ReserveAction انٹری شامل کریں۔ یہ ایجنٹس کو بتاتا ہے کہ "یہاں بکنگ کا ایک پروگراماتی طریقہ موجود ہے" جس کے لیے اسکریپنگ (scraping) کی ضرورت نہیں ہوتی۔
  3. Model Context Protocol (MCP) اپنائیں – MCP اسسٹنٹس کو براہ راست بیرونی ٹولز استعمال کرنے، ان پٹ بھیجنے اور اسٹرکچرڈ آؤٹ پٹ حاصل کرنے کی اجازت دیتا ہے۔ بڑے AI فراہم کنندگان پہلے ہی MCP کو سپورٹ کرتے ہیں، اس لیے ایک ریستوران جو MCP کے ہم آہنگ اینڈ پوائنٹ کو نافذ کرتا ہے، اسے ایجنٹس کے ذریعے ایک بلٹ ان فنکشن کی طرح کال کیا جا سکتا ہے۔

یہ اقدامات انسانی صارفین کے لیے ویژول iframe کو برقرار رکھتے ہوئے ایجنٹس کو اسی ریزرویشن ڈیٹا تک ایک صاف ستھرا اور قابل اعتماد راستہ فراہم کرتے ہیں۔

خلاصہ

ایک iframe کے اندر کیلنڈر کو ایمبیڈ کرنا انسانوں کے لیے ویژول بہاؤ کو تو محفوظ رکھتا ہے لیکن AI اسسٹنٹس کو اندھا کر دیتا ہے۔ ایک معمولی، اچھی طرح سے دستاویزی (well-documented) بکنگ API شامل کرنا اور اسے معیاری میٹا ڈیٹا یا MCP کے ذریعے مشتہر کرنا، ویب سائٹ کو مکمل طور پر تبدیل کیے بغیر ریزرویشن کا ایک نیا چینل کھول دیتا ہے۔ یہ کوشش ڈیجیٹل اسسٹنٹس کی اگلی نسل کے لیے ویزیبلٹی (visibility) کو بڑھاتی ہے، اور اس کے خطرے کو انہی سیکیورٹی کنٹرولز کے ذریعے سنبھالا جا سکتا ہے جو پہلے سے موجود UI پر استعمال ہو رہے ہیں۔