WebMCP ڈویلپر گائیڈ: 0% اپنانے کے معیارات فراہم کرنا

میں نے مخصوص HTTP ہیڈرز کے لیے انٹرنیٹ پر سرفہرست 200,000 ویب سائٹس میں سے 111,076 کو اسکین کیا۔ بالکل 0 ملا۔

کسی ایک ڈومین نے پروڈکشن میں WebMCP کی پیشکش نہیں کی۔ ایک بھی فارچیون 500 سائٹ نہیں۔ یہ ایک اسٹارٹ اپ نہیں ہے جو آگے بڑھنے کی کوشش کر رہا ہے۔ ڈویلپر کے کھیل کے میدانوں کے لیے بھی یہی ہوتا ہے جو نیچے لینا بھول جاتے ہیں۔ صفر

تو میں نے دو سائٹوں پر پہنچا دیا۔

یہ وہی ہے جو میں نے پایا:

انڈیکس

شرطیں

نفاذ کے سیکشن کی پیروی کرنے کے لیے آپ کو ضرورت ہو گی:

  • Node.js 18+ npm یا pnpm

  • کوئی راستہ نہیں SvelteKit یا Next.js پروجیکٹس (یہ مضمون دونوں کا احاطہ کرتا ہے)

  • Chrome 146+ Canary ویب ایم سی پی ٹول رجسٹریشن کی جانچ کے لیے (کروم کینری چینل سے ڈاؤن لوڈ کریں)

  • TypeScript اور JSON اسکیما کی تعریفوں کا بنیادی علم

  • Vercel، Netlify یا اس جیسی سائٹس پر تعینات سائٹیں ( .well-known واضح نقطہ نظر)

کسی AI ایجنٹس یا خصوصی براؤزر ایکسٹینشن کی ضرورت نہیں ہے۔ آپ کی پروڈکشن سائٹ میں خلل سے بچنے کے لیے غیر کینری براؤزرز میں عمل درآمد کی کارکردگی خود بخود کم ہو جاتی ہے۔

WebMCP واقعی کیا ہے (اور یہ 2026 میں کیوں اہمیت رکھتا ہے)

اگر آپ AI ٹریفک ڈیٹا دیکھ رہے ہیں، تو ایک نمبر تھوڑا خوفناک ہو سکتا ہے۔ ClaudeBot کا کرال ٹو ریفرنس ریشو 10,600:1 ہے۔ اس کا مطلب یہ ہے کہ کلاڈ ہر 10,600 صفحات پر ایک ریفرل کلک بھیجتا ہے۔

حالیہ مہینوں میں اس شرح میں 16.9 فیصد کمی واقع ہوئی ہے۔ لیکن اس سے ظاہر ہونے والے نمونے اہم ہیں۔ AI ایجنٹس سوالات کے جوابات دینے کے لیے ویب پڑھ رہے ہیں۔ وہ اسے آپ کی سائٹ پر واپس نہیں بھیجتے ہیں تاکہ آپ خود پڑھ سکیں۔

موجودہ معیاری ماڈل کرال، اقتباس اور جواب ہے۔ صارفین کو جوابات ملتے ہیں۔ تمہیں کچھ نہیں ملتا۔

WebMCP ایک مختلف ماڈل تجویز کرتا ہے۔ HTML کو رینگنے کے بجائے، AI ایجنٹ سائٹ ٹولز کو براہ راست کال کر سکتا ہے۔ مواد تلاش کریں۔ سٹرکچرڈ ڈیٹا تلاش کریں۔ API کے ساتھ تعامل کریں۔ یہ کھرچنے اور خلاصہ کرنے کے بارے میں نہیں ہے، یہ پوچھنے اور جواب دینے کے بارے میں ہے۔

تفصیلات W3C کمیونٹی گروپ ڈرافٹ ہے۔ کروم 146 کینری کا جزوی نفاذ ہے۔ پروڈکشن براؤزر سپورٹ جلد از جلد 2027 میں آئے گا۔

بہرحال میں نے اسے پہنچا دیا۔ یہاں پوری کہانی ہے:

اپنانے کے وکر کے بارے میں کوئی بات نہیں کر رہا ہے۔

اس سے پہلے کہ میں اس کی وضاحت کروں کہ میں نے کیا بنایا ہے، یہ وہ ڈیٹا ہے جس کی وجہ سے میں اسے بنانا چاہتا ہوں۔

میں نے 17-23 مئی 2026 کے ہفتے کے لیے Cloudflare Radar AI Insights ڈیٹا کھینچ لیا، جس میں 111,076 اسکین شدہ ڈومینز سرفہرست 200,000 میں شامل ہیں۔

معیاری گود لینے کی شرح تقریباً ڈومین
Robot.txt 83% ~92,193
AI قواعد (ai.txt / llms.txt) 79% ~87,750
سائٹ کا نقشہ 68% ~75,532
لنک ہیڈر 9.6% ~10,663
مارک ڈاون مذاکرات 5.3% ~5,887
OAuth تلاش 5.2% ~5,776
مواد سگنل ~4.7% ~5,221
یونیورسل تجارتی پروٹوکول 4.4% ~4,888
API کیٹلاگ 0.15% ~167
ایجنٹ ٹیکنالوجی 0.13% ~144
MCP سرور کارڈ 0.11% ~122
ویب بوٹ کی توثیق 0.022% ~24
A2A ایجنٹ کارڈ 0.0081% ~9
اے سی پی 0.0036% ~4
ایم پی پی 0.0018% ~2
x402 ادائیگی 0.0009% ~1
ویب ایم سی پی 0% 0
اے پی 2 0% 0

اس ٹیبل کو دوبارہ پڑھیں۔ 17 منفرد معیارات ہیں جن کے ذریعے ویب خود کو AI دور کے بنیادی ڈھانچے کے لیے درجہ بندی کرتا ہے۔ سب سے نچلے درجے کے، MCP سرور کارڈز، ٹیبل کے اختتام تک، انٹرنیٹ پر سب سے زیادہ تکنیکی سائٹس میں صفر کے قریب ہیں۔

WebMCP 1% تک پہنچنے کے لیے جدوجہد نہیں کرتا ہے۔ یہ ابھی شروع نہیں ہوا ہے۔

اس ڈیٹا سے کچھ چیزیں سامنے آئیں۔

سب سے پہلے، Googlebot کی غلبہ کی کہانی ختم ہو گئی ہے۔ گوگل نے گزشتہ سال کے دوران بوٹ کی تمام سرگرمیوں کے تقریباً 70% سے کم ہو کر 40% تک کمی دیکھی ہے۔ سب سے اوپر پانچ AI بوٹس فی الحال تمام AI بوٹ HTTP ٹریفک کا 71% ہیں۔ Googlebot 26.2%، Meta-ExternalAgent 13.3%، Bytespider 11.4%، GPTBot 10.5%، اور ClaudeBot 9.3% ہے۔

دوسرا: AI بوٹ کی 8.7% درخواستوں کا نتیجہ 403 ممنوعہ غلطیوں سے ہوتا ہے۔ یہ کوئی اتفاق نہیں ہے۔ کوئی AI کرالر کو بلاک کرنے کے لیے پالیسی کال کر رہا ہے۔ تاہم، کسی کرالر کو مسدود کرنا کسی AI ایجنٹ کو ڈومین کے بارے میں سوالات کے جوابات دینے سے نہیں روکتا اگر اس کا مواد پہلے سے ترتیب دیا گیا ہو۔ جہاز چلا گیا ہے۔

تیسرا، یہ وہی ہے جو واقعی پورے منصوبے کی حوصلہ افزائی کرتا ہے. ان معیارات کی لمبی دم صرف اشاریہ سازی کے بجائے تعامل کی طرف رجحان ہے۔ robots.txt اور ai.txt اجازتوں کے بارے میں ہیں۔ WebMCP، A2A ایجنٹ کارڈ اور x402 ادائیگیاں سبھی فعالیت کے بارے میں ہیں۔ یہ نہ صرف یہ بتاتا ہے کہ AI ایجنٹ کیا دیکھ سکتا ہے، بلکہ یہ بھی کہ وہ آپ کی سائٹ پر کیا کر سکتا ہے۔

میرے خیال میں 2026 میں بنیادی ڈھانچے کا کچھ دلچسپ کام ہونے والا ہے، اجازتوں سے صلاحیتوں کی طرف منتقلی۔

اپ ڈیٹ (مئی 2026 کے آخر میں): چونکہ ہم نے یہ مسودہ لکھا ہے، گوگل نے ابھی تک اپنی سب سے مضبوط دلیل پیش کی ہے۔ Lighthouse 13.3.0 (7 مئی 2026) نے کروم میں "ایجنٹ براؤزنگ” آڈیٹنگ کے زمرے کو ڈیفالٹ پر ترقی دی، جس میں WebMCP ٹول رجسٹریشن، ایکسیسبیلٹی ٹری کوالٹی، اور llms.txt کی موجودگی کے لیے تمام صفحات کو اسکور کیا۔ پلیٹ فارم کے مالکان گیم شروع ہونے سے پہلے ہی اسکور بورڈ بنا رہے ہیں اور سائٹ کو گود لینے کی شرح اب بھی ~0% ہے۔ موجودہ ٹولز اور ان کو استعمال کرنے والے لوگوں کے درمیان فاصلہ وہ ونڈو ہے جس میں یہ مضمون خود حل کرتا ہے۔

میں نے واقعی کیا پہنچایا: دو سائٹس، دو نقطہ نظر

میں دو سائٹس چلاتا ہوں: chudi.dev (میری ذاتی سائٹ، SvelteKit) اور citability.dev (ایک پروڈکٹ جو AI حوالہ جات کی شرح کو ماپتا ہے)۔

اس مقصد کے لیے میں نے دو تجرباتی لیبارٹریوں میں اپنا علاج کیا۔

تجربہ 1: chudi.dev (SvelteKit، پولی فل اپروچ)

میری ذاتی سائٹ ایک SvelteKit ایپ ہے۔ SvelteKit آپ کو تیزی سے تکرار کرنے، اپنے مواد کو سادہ رکھنے اور تیزی سے آگے بڑھنے کی اجازت دیتا ہے۔

موجودہ WebMCP تفصیلات بیان کرتی ہے: navigator.modelContext براؤزر API۔ خاص طور پر، registerTool() ایک طریقہ جو ایک صفحہ کو اسی براؤزر کے سیاق و سباق میں کام کرنے والے AI ایجنٹ کو کال کے قابل ٹول کا اعلان کرنے کی اجازت دیتا ہے۔ وضاحتیں تیار ہوتی رہتی ہیں۔ Chrome 146 Canary جزوی طور پر نافذ ہے لیکن تفصیلات کے مطابق نہیں ہے۔ registerTool() ابھی تک

کہ @mcp-b/global پولی فلز اس خلا کو پُر کرتے ہیں۔ یہ ہے provideContext() وہ اصول جو Chrome 146+ Canary میں کام کرتے ہیں اور دوسرے براؤزرز میں خود بخود انحطاط پذیر ہوتے ہیں (کوئی غلطیاں نہیں، UX ٹوٹنا نہیں)۔

یہ رہی چابی۔ src/lib/webmcp.tsکل 146 لائنیں ہیں۔

// src/lib/webmcp.ts
// WebMCP polyfill integration for chudi.dev
// Spec: W3C Community Group Draft (pre-production)
// Polyfill: @mcp-b/global (navigator.modelContext.provideContext convention)

import { browser } from '$app/environment';

interface WebMCPTool {
  name: string;
  description: string;
  inputSchema: Record;
  handler: (args: Record) => Promise;
}

interface PostSearchResult {
  slug: string;
  title: string;
  excerpt: string;
  publishedAt: string;
  tags: string[];
}

// Only runs in browser context; degrades silently in SSR + non-Canary
export async function initWebMCP(posts: PostSearchResult[]) {
  if (!browser) return;

  // Feature-detect the polyfill convention, not the spec method
  const ctx = (navigator as any).modelContext;
  if (!ctx?.provideContext) return;

  const tools: WebMCPTool[] = [
    {
      name: 'searchPosts',
      description: 'Search chudi.dev articles by keyword. Returns matching posts with title, excerpt, and URL.',
      inputSchema: {
        type: 'object',
        properties: {
          query: {
            type: 'string',
            description: 'Search term to match against post titles and content'
          }
        },
        required: ['query']
      },
      handler: async ({ query }: { query: string }) => {
        const q = String(query).toLowerCase();
        return posts
          .filter(p =>
            p.title.toLowerCase().includes(q) ||
            p.excerpt.toLowerCase().includes(q) ||
            p.tags.some(t => t.toLowerCase().includes(q))
          )
          .map(p => ({
            title: p.title,
            excerpt: p.excerpt,
            url: `https://chudi.dev/blog/${p.slug}`,
            publishedAt: p.publishedAt
          }));
      }
    },
    {
      name: 'listPosts',
      description: 'List all published posts on chudi.dev, newest first.',
      inputSchema: {
        type: 'object',
        properties: {
          limit: {
            type: 'number',
            description: 'Maximum number of posts to return (default: 10)'
          }
        }
      },
      handler: async ({ limit = 10 }: { limit?: number }) => {
        return posts.slice(0, limit).map(p => ({
          title: p.title,
          url: `https://chudi.dev/blog/${p.slug}`,
          publishedAt: p.publishedAt,
          tags: p.tags
        }));
      }
    },
    {
      name: 'getAuthorContext',
      description: 'Get structured context about Chudi Nnorukam: expertise, current projects, contact.',
      inputSchema: {
        type: 'object',
        properties: {}
      },
      handler: async () => ({
        name: 'Chudi Nnorukam',
        role: 'AI Harness Engineer',
        focus: ['AI-visible web architecture', 'agentic SEO', 'Claude Code harness engineering'],
        currentProjects: ['citability.dev', 'chudi.dev', 'Tradeify'],
        contact: 'https://chudi.dev/contact',
        writing: 'https://chudi.dev/blog'
      })
    }
  ];

  try {
    await ctx.provideContext({
      name: 'chudi-dev',
      description: 'Content and context for chudi.dev - AI harness engineering and agentic web architecture',
      tools
    });
  } catch (e) {
    // Silently swallow; polyfill convention may change before spec lands
    console.debug('[webmcp] provideContext failed:', e);
  }
}

ٹول جان بوجھ کر صرف پڑھنے کے لیے ہے۔ کوئی تحریری کارروائیاں نہیں ہیں، کوئی توثیق نہیں ہے، کوئی سیشن کی حالت نہیں ہے۔ تصریح اس پرت پر توثیق کی وضاحت نہیں کرتی ہے، اور ہم کوئی ایسی چیز فراہم نہیں کرنا چاہتے تھے جو ایک ایسے معیار کے لیے حفاظتی سطح بنائے جو اب بھی تیار ہو رہا ہے۔

میں کال کرتا ہوں initWebMCP() SvelteKit لے آؤٹ لوڈ فنکشن میں پوسٹس اری کو پاس کریں۔

// src/routes/+layout.ts
import { initWebMCP } from '$lib/webmcp';
import type { LayoutLoad } from './$types';

export const load: LayoutLoad = async ({ fetch }) => {
  const res = await fetch('/api/posts');
  const posts = await res.json();

  // Non-blocking; runs only in browser context
  initWebMCP(posts);

  return { posts };
};

صاف علیحدگی۔ لے آؤٹ سے کوئی فرق نہیں پڑتا کہ WebMCP کامیاب ہے یا نہیں۔ پولی فل چپکنے والی ہوسکتی ہے یا نہیں۔

تجربہ 2: citability.dev (Next.js، مینی فیسٹ اپروچ)

میری دوسری سائٹ، citability.dev، کو ایک مختلف نقطہ نظر کی ضرورت ہے۔ یہ پروڈکٹ ایک حقیقی API سے لیس ہے۔ جب WebMCP پیداوار تک پہنچ جاتا ہے، تو ہم چاہتے ہیں کہ AI ایجنٹ فوری طور پر citability.dev کو کال کرنے کے قابل ہو۔

اس کے لیے میں .well-known/webmcp مینی فیسٹ پاتھ، پولی فل نہیں۔ مینی فیسٹ اپروچ اس بات سے بہتر طور پر ہم آہنگ ہوتا ہے کہ کس طرح سرور سائیڈ MCP دریافت تصریح کے تیار ہونے کے ساتھ کام کرتی ہے۔

مینی فیسٹ اس پر واقع ہے: public/.well-known/webmcp:

ایک لائیو WebMCP مینی فیسٹ citability.dev/.well-known/webmcp پر دستیاب ہے، ایک JSON دستاویز جو کہ ایجنٹ کی کالبلز جیسے کہ run_citability_scan اور request_audit کے ساتھ ان کے ان پٹ اسکیما اور شرح کی حدود کا اعلان کرتی ہے۔

{
  "name": "citability",
  "version": "1.0.0",
  "description": "AI citation rate measurement for websites. Run a scan to see how often ChatGPT, Claude, and Perplexity cite your domain.",
  "tools": [
    {
      "name": "run_citability_scan",
      "description": "Run a free citation rate scan for a domain. Checks how often ChatGPT, Claude, and Perplexity cite the domain across 20 test queries.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "domain": {
            "type": "string",
            "description": "The domain to scan, e.g. example.com"
          }
        },
        "required": ["domain"]
      },
      "endpoint": "/api/scan",
      "method": "POST",
      "pricing": {
        "type": "free",
        "cost": 0
      }
    },
    {
      "name": "request_audit",
      "description": "Request a full citation audit with detailed recommendations. Returns a Stripe checkout URL for the selected tier.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "domain": {
            "type": "string",
            "description": "The domain to audit"
          },
          "tier": {
            "type": "string",
            "enum": ["starter", "growth", "authority"],
            "description": "Audit tier"
          }
        },
        "required": ["domain", "tier"]
      },
      "endpoint": "/api/audit/request",
      "method": "POST"
    },
    {
      "name": "get_audit_result",
      "description": "Retrieve a completed audit result by audit ID.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "audit_id": {
            "type": "string"
          }
        },
        "required": ["audit_id"]
      },
      "endpoint": "/api/audit/{audit_id}",
      "method": "GET"
    },
    {
      "name": "list_audit_tiers",
      "description": "List available citability audit tiers with pricing and feature details.",
      "inputSchema": {
        "type": "object",
        "properties": {}
      },
      "endpoint": "/api/tiers",
      "method": "GET"
    }
  ]
}

ہم نے آپ کا A2A ایجنٹ کارڈ درج ذیل پتے پر بھیجا: .well-known/agent.json:

{
  "@context": "https://schema.org",
  "@type": "SoftwareApplication",
  "name": "citability",
  "url": "https://citability.dev",
  "description": "Measure and improve your AI citation rate across ChatGPT, Perplexity, and Claude.",
  "applicationCategory": "DeveloperApplication",
  "featureList": [
    "AI citation rate scanning",
    "Per-AI-engine breakdown",
    "Citation improvement recommendations",
    "Audit reports with actionable fixes"
  ],
  "offers": {
    "@type": "Offer",
    "price": "0",
    "priceCurrency": "USD",
    "description": "Free scan available"
  },
  "provider": {
    "@type": "Person",
    "name": "Chudi Nnorukam",
    "url": "https://chudi.dev"
  }
}

citability.dev A2A ایجنٹ کارڈ کے ساتھ، آپ دریافت شدہ ڈومینز میں سرفہرست 0.0081% ہوں گے۔ یہ کوئی بڑا کلب نہیں ہے۔

میں نے شپنگ آئٹمز سے کیا سیکھا جو کسی اور کے پاس نہیں ہے۔

یہ ہے جس کی میں نے توقع کی تھی: کوئی ایجنٹ ٹریفک نہیں ہے، نوشتہ جات میں کوئی دلچسپ چیز نہیں ہے، اور یہ ایک صاف لیکن غیر فعال عمل ہے جس کی میں نشاندہی کر سکتا ہوں۔

یہ ہے اصل میں کیا ہوا: 23 فروری 2026 کو، ہم نے chudi.dev سے WebMCP ٹول جاری کیا۔ اگلے 93 دنوں میں بیرونی AI ایجنٹوں کی طرف سے کوئی کال نہیں آئی ہے۔ searchPosts, listPostsیا getAuthorContext. صفر ہم نے citability.dev بھیج دیا ہے۔ .well-known/webmcp 22 مئی کو چار پروڈکشن گریڈ ٹولز کے ساتھ شروع ہوتا ہے، بشمول مفت اسکیننگ اینڈ پوائنٹس۔ ایجنٹ نے مجھے اگلے 5 دنوں تک دوبارہ فون نہیں کیا۔ run_citability_scan. دونوں سائٹس کے لیے Vercel کے ایج فنکشن کال لاگز بالکل وہی ٹریفک دکھاتے ہیں جس کی آپ توقع کر سکتے ہیں: انسانی براؤزرز، گوگل بوٹ کرال کرنے والا HTML، ClaudeBot کرال کرنے والا HTML، اور GPTBot کرال کرنے والا HTML۔ کوئی بھی WebMCP ٹول کو کال نہیں کرتا ہے۔

chudi.dev کے لیے ورسل آبزرویبلٹی لاگ صرف روٹین کرالر ٹریفک اور 404 بوٹ پروبس دکھاتا ہے، بغیر کسی کال کے سائٹ کے ویب ایم سی پی ٹولز (سرچ پوسٹس، لسٹ پوسٹس، گیٹ آتھر)۔

کالعدم نتائج اس تجربے کا سب سے زیادہ معلوماتی حصہ ہیں۔

پولی فل کے قوانین (.provideContext()) حتمی وضاحتیں نہیں ہیں۔ کروم 146 کینری کا نفاذ پولی فل کے استعمال سے مختلف طریقہ کے دستخط کو نشانہ بناتا ہے۔ اس کا مطلب ہے کہ فی الحال پروڈکشن میں کوئی ایسا براؤزر نہیں ہے جو میرے فراہم کردہ کوڈ کو چلاتا ہو۔ پولی فل خاموشی سے گل جاتی ہے۔ میرا ٹول اعلان اور تیار ہے۔ ابھی تک کوئی فون کال نہیں۔

یہ ناکامی نہیں ہے۔ چشمی کے مستحکم ہونے سے پہلے پہلی موور پوزیشننگ کی طرح نظر آتی تھی۔

یہاں میں اس بارے میں وضاحت کرنا چاہتا ہوں کہ "پوزیشننگ” کا اصل مطلب کیا ہے۔ کیونکہ یہ صرف مارکیٹنگ کی زبان نہیں ہے۔

ایک بار جب تصریح پروڈکشن براؤزرز تک پہنچ جاتی ہے، درست نفاذ کے ساتھ سائٹس کو اس بنیاد پر ترتیب دیا جائے گا کہ جو بھی سرچ میکانزم پہلے آئے گا۔ 2009 میں robots.txt کے لیے، ابتدائی اختیار کرنے والوں نے گوگل بوٹس کے رویے میں تبدیلی سے پہلے کرال پالیسیاں قائم کیں۔ 2010 میں اوپن گراف کے ساتھ، معیارات کو وسیع پیمانے پر سمجھے جانے سے پہلے درست میٹا ڈیٹا والے صفحات کے پیش نظارہ زیادہ امیر ہو گئے۔ 2027 میں WebMCP کے لیے، جب بھی اسے جاری کیا جائے گا، اس تصریح کو نافذ کرنے والے AI ایجنٹس فوری طور پر ٹاسک ٹول ڈیکلریشن کے ساتھ سائٹس کو کال کر سکیں گے۔

متبادل انتظار کرنا اور بعد میں لاگو کرنا ہے۔ لیکن اس سیاق و سباق میں "بعد میں” کا مطلب ہے کہ اس کو اسی وقت لاگو کرنا جیسے ہر کسی کے، جب انفراسٹرکچر کا فائدہ ختم ہوجاتا ہے۔

دوسری قدر بھی ہے۔ جانیں جب کہ قیاس ابھی بھی پلاسٹک ہے۔

W3C کمیونٹی گروپ ڈرافٹ ان طریقوں سے تبدیل ہوا ہے جس کی مجھے توقع نہیں تھی۔ کہ registerTool() تفصیلات میں طریقے مختلف طریقے سے برتاؤ کرتے ہیں: provideContext() پولی فل کنونشن۔ ظاہری جگہ (/.well-known/webmcp) ابھی تک معیاری نہیں ہے۔ WebMCP پرت پر توثیق ابھی تک حل نہیں ہوئی ہے۔ جلدی بھیجنے سے، میں نے پہلے ہی ان میں سے دو فرقوں کا سامنا کیا ہے اور ان کے مطابق ڈھال لیا ہے۔

وہ حصہ جس نے حقیقت میں مجھے حیران کر دیا: آج اپنانے کے وکر کا کیا مطلب ہے۔

اس ڈیٹا ٹیبل پر واپس جائیں۔ نوٹ کریں کہ وکر کہاں ٹوٹتا ہے۔

ڈبل لائن سے اوپر کی کوئی بھی چیز (robots.txt بذریعہ OAuth تلاش) بامعنی اپنانے سے باہر ہے۔ سائٹ دراصل یہ کرتی ہے۔ پیرنٹ گروپ کے ذیلی ڈومینز، 5.3% پر مارک ڈاؤن گفت و شنید اور 5.2% پر OAuth تلاش، ہزاروں ڈومینز کی نمائندگی کرتے ہیں جو فعال طور پر مواد یا شناخت کے بارے میں ساختی معلومات AI ایجنٹس کو منتقل کرتے ہیں۔

ڈبل لائن کے نیچے ہر چیز بنیادی طور پر صفر ہے۔ یہ کم سنگل ہندسوں میں نہیں ہے۔ یہ 0 ہے یا 0 کے بہت قریب ہے۔

یہ لکیری وکر نہیں ہے۔ یہ ایک چٹان ہے۔ اور چٹان غیر فعال اور فعال سگنلنگ کے درمیان فرق سے بالکل مطابقت رکھتی ہے۔

غیر فعال سگنلز: robots.txt، ai.txt، سائٹ کا نقشہ، لنک ہیڈر، مواد کے سگنل۔ یہ ایجنٹ کو بتاتا ہے کہ آپ کے پاس کیا ہے اور کیا آپ اس کے استعمال پر رضامند ہیں۔

فعال خصوصیات: WebMCP، A2A ایجنٹ کارڈ، x402 ادائیگیاں، ACP۔ یہ ایجنٹوں کو بتاتا ہے کہ وہ بنیادی ڈھانچے کے ساتھ کیا کر سکتے ہیں۔

یہاں کوئی کلف نہیں ہے کیونکہ ڈویلپرز فعال خصوصیت کے معیارات کو نہیں جانتے ہیں۔ اس کی وجہ یہ ہے کہ معیار ابھی تک مستحکم نہیں ہیں۔ آپ ادائیگی کے پروٹوکول کو رول آؤٹ نہیں کر سکتے ہیں جس پر رقم خرچ ہوتی ہے اگر قیاس پرواز کے وسط میں تبدیل ہوتا ہے۔

لیکن یہاں مسئلہ ہے۔ نہ ہی چٹان پر معیار مستحکم ہے۔ ایکسٹینشنز کو مسلسل robots.txt میں شامل کیا جاتا ہے۔ ai.txt/llms.txt اب بھی متحرک ہے۔ سائٹ نے اسے بہرحال بھیج دیا کیونکہ غلط معلومات کے لیے سطح کا رقبہ چھوٹا تھا۔

اگر میں غلط سمجھتا ہوں تو WebMCP کا سطحی رقبہ بڑا ہے۔ تاہم، آپ اسے صرف پڑھنے کے معاملات میں صحیح طریقے سے استعمال کر سکتے ہیں۔ یہ تینوں ٹولز AI کو آپ کے مواد کو اسکین کرنے اور آپ کون ہیں کے بارے میں سٹرکچرڈ ڈیٹا کو بازیافت کرنے کی اجازت دیتے ہیں، یہ سب صفر کے قریب دھماکے کے رداس کے ساتھ ہیں۔ جب وضاحتیں تبدیل ہوتی ہیں، 146 لائنوں کو اپ ڈیٹ اور دوبارہ تقسیم کیا جاتا ہے۔

جلد شروع کرنے کی قیمت بہت کم ہے۔ دیر سے ہونے کی قیمت واضح نہیں ہے، لیکن شاید حقیقی ہے۔

WebMCP ابھی بھیجنے کا طریقہ (مکمل نفاذ کا راستہ)

اگر آپ خود اس پر عمل درآمد کرنا چاہتے ہیں، تو یہ وہی راستہ ہے جس کی میں نے پیروی کی:

مرحلہ 1: پولی فل انسٹال کریں (SvelteKit / Vite پر مبنی پروجیکٹ)

npm install @mcp-b/global

Next.js کے لیے، مینی فیسٹ اپروچ پولی فل سے زیادہ صاف ہے۔

# No npm package needed; just create the manifest file
mkdir -p public/.well-known
touch public/.well-known/webmcp

مرحلہ 2: پہلے ٹول کی وضاحت صرف پڑھنے کے لیے کریں۔

سب سے پہلے، فیصلہ کریں کہ آپ کا AI ایجنٹ کس ساختی ڈیٹا سے استفسار کر سکتا ہے۔ کے ساتھ شروع کریں:

  • تلاش کا آلہ (ایک سوال لیتا ہے اور مماثل مواد واپس کرتا ہے)

  • فہرست کا آلہ (حالیہ یا متعلقہ اشیاء لوٹاتا ہے)

  • سیاق و سباق کے اوزار (کسی سائٹ یا پروڈکٹ کے بارے میں ساختی میٹا ڈیٹا واپس کریں)

تحریری کام کے ساتھ شروع نہ کریں۔ تفصیلات اس پرت پر تصدیق کی وضاحت نہیں کرتی ہیں۔ صرف پڑھنے والے ٹولز کی کوئی محفوظ سطح نہیں ہے۔

مرحلہ 3: SvelteKit Polyfill کو مربوط کریں۔

بنانا src/lib/webmcp.ts اوپر کے پیٹرن کی بنیاد پر۔ یہاں اہم نکات ہیں:

if (!browser) return;                          // Guard SSR
const ctx = (navigator as any).modelContext;
if (!ctx?.provideContext) return;              // Guard non-Canary

دونوں محافظ غیر گفت و شنید ہیں۔ اسے بھول جاؤ browser گارڈ پھینک دے گا۔ ReferenceError: navigator is not defined ایس ایس آر کے دوران۔ اسے بھول جاؤ provideContext گارڈ غیر پولی فلڈ براؤزرز میں ظاہر ہوتا ہے۔ modelContext.

مرحلہ 4: Next.js مینی فیسٹ اپروچ

بنانا public/.well-known/webmcp (کوئی توسیع نہیں، application/json) اور اسے ٹول کی تعریف کے ساتھ بھریں۔ مواد کی صحیح قسم کے ساتھ فراہم کردہ:

// app/api/well-known/webmcp/route.ts
import { NextResponse } from 'next/server';

export async function GET() {
  const manifest = {
    name: 'your-site',
    version: '1.0.0',
    description: 'What your site does',
    tools: [
      // your tool definitions
    ]
  };

  return NextResponse.json(manifest, {
    headers: {
      'Access-Control-Allow-Origin': '*',
      'Cache-Control': 'public, max-age=86400'
    }
  });
}

CORS ہیڈر اہم ہیں۔ براؤزر سیاق و سباق میں چلنے والے AI ایجنٹ صفحہ کے علاوہ دوسرے ذرائع سے اس اختتامی نقطہ تک پہنچتے ہیں۔

مرحلہ 5: جب آپ وہاں ہوں تو اپنا A2A ایجنٹ کارڈ شامل کریں۔

یہ پہلے ہی بنایا جا رہا ہے۔ .well-known ڈائریکٹری A2A AgentCard JSON کی 20 لائنوں پر مشتمل ہے اور اسکین شدہ ڈومینز میں سب سے اوپر 0.0081% میں ہے۔ اگر آپ اسے پہلے سے موجود ہونے کے دوران نہیں بھیجتے ہیں تو آپ اسے آسانی سے میز پر رکھ سکتے ہیں۔

مرحلہ 6: کروم کینری میں ٹیسٹ کریں۔

Chrome 146+ Canary ڈاؤن لوڈ کریں۔ سائٹ کھولیں۔ DevTools، Console ٹیب کو کھولیں۔ چلائیں:

navigator.modelContext?.provideContext

chudi.dev ہوم پیج (عنوان:

پولی فل لوڈ ہونے پر فنکشن ظاہر ہوتا ہے۔ جب واپس آیا undefinedیا تو پولی فل لوڈ نہیں ہے (ابتدائی کوڈ کو چیک کریں) یا یہ مطابقت پذیر کینری بلڈ میں نہیں ہے۔

فی الحال ان ٹولز کو کال کرنے والے کوئی پروڈکشن AI ایجنٹ نہیں ہیں۔ آپ جانچ کر رہے ہیں کہ کیا بنیادی ڈھانچہ تیار ہے، نہ کہ یہ استعمال میں ہے۔

"اب کیوں پریشان ہو؟” کے عملی جوابات

ہر ڈویلپر جس سے میں نے اس پروجیکٹ کے بارے میں بات کی ہے وہی سوال پوچھتا ہے۔ 0% اپنانے کے ساتھ کیوں لانچ کریں جب آپ 2027 میں لانچ کر سکتے ہیں جب براؤزر اسے مقامی طور پر سپورٹ کرتے ہیں اور قیاس مستحکم ہے؟

جواب کے تین حصے ہیں۔

سب سے پہلے، یہ فی الحال لاگو کرنے کے لئے سستا ہے. میرا chudi.dev نفاذ 146 لائنوں کا ہے۔ citability.dev مینی فیسٹ JSON کی 60 لائنوں اور ایک Next.js پاتھ پر مشتمل ہے۔ یہ ملٹی سپرنٹ انفراسٹرکچر پروجیکٹ نہیں ہے۔ اگر تصریح نمایاں طور پر تبدیل ہوتی ہے تو لائن 146 کو اپ ڈیٹ کریں۔

دوسرا: سیکھنے کے مرکبات۔ چشمی اب بھی پلاسٹک ہیں. WebMCP کے بارے میں پڑھنا اور اسے نافذ کرنا دو مختلف سرگرمیاں ہیں۔ عمل درآمد کے بعد آپ کے پاس کیا سوالات ہیں؟ registerTool() مختلف provideContext()اصل میں تلاش کیسے کام کرتی ہے، اور جب دو ٹولز کا ایک ہی نام ہوتا ہے تو کیا ہوتا ہے، ایسے سوالات ہیں جو میں نے نہ پوچھے ہوتے اگر میں نے صرف قیاس کو پڑھا ہوتا۔ یہ علم 2027 سے پہلے کے قابل ہے، اس کے بعد نہیں۔

تیسرا: ڈیٹا بتاتا ہے کہ گود لینے کے منحنی خطوط میں ایک چٹان ہے، اور اس چٹان میں ابتدائی حرکت پذیری ہے۔ جب robots.txt سپورٹ صفر کے قریب سے بامعنی اپنانے تک چلا گیا، تو یہ بتدریج نہیں ہوا۔ ایسا اس لیے ہوا کیونکہ گوگل بوٹ نے اسے نافذ کرنا شروع کر دیا اور صحیح نفاذ والی سائٹوں کو فائدہ ہوا۔ جو بھی نفاذ یا دریافت کا طریقہ کار WebMCP کو اپنانے کو متحرک کرتا ہے، یہ ممکنہ طور پر اسی وکر کی پیروی کرے گا۔ اگر آپ پہلے سے ہی وہاں موجود ہیں، تو پہاڑ کے حرکت کرنے پر اس کے دائیں جانب رہنا آسان ہے۔

اس میں سے کوئی بھی یقینی نہیں ہے۔ وضاحتیں نمایاں طور پر تبدیل ہو سکتی ہیں۔ براؤزر سپورٹ 2027 کے بعد دستیاب ہو سکتا ہے۔ AI ایجنٹس مکمل طور پر مختلف سرچ میکانزم بھی نافذ کر سکتے ہیں۔ ہم نے ایک نفاذ جاری کیا ہے جس کے لیے اہم دوبارہ کام کی ضرورت پڑ سکتی ہے۔

یہ ٹھیک ہے متبادل انتظار کرنا ہے، اور انتظار کا مطلب ہے کہ جلد شروع کرنے والوں کے مقابلے میں دیر سے شروع کرنا۔

ہم آگے کہاں جائیں؟

Cloudflare ڈیٹا ویب پر AI انفراسٹرکچر کی موجودگی کے لیے مقابلہ کرنے والے 17 معیارات کو ظاہر کرتا ہے۔ زیادہ تر ڈویلپرز نے ٹاپ 3 یا 4 کو لاگو کیا ہے: robots.txt، ai.txt کی ایک قسم، اور ایک سائٹ کا نقشہ۔

وکر کا نچلا حصہ 0 ہے۔ یہ ایک نقطہ آغاز ہے، چھت نہیں۔

اگر آپ کی سائٹ میں ایسا مواد ہے جو براؤزر کے تناظر میں AI ایجنٹ کے لیے مفید ہے، تو آپ کو صرف پڑھنے کے لیے WebMCP ٹول بنانا چاہیے۔ اگر آپ کے پروڈکٹ میں ایک API ہے جسے آپ کے AI ایجنٹ کو کال کرنے کے قابل ہونے کی ضرورت ہے، تو لکھنے کے لیے ایک مینی فیسٹ موجود ہے۔ ان میں سے کسی کو بھی قیاس کے مستحکم ہونے کا انتظار کرنے کی ضرورت نہیں ہے۔

دونوں چل رہے ہیں۔ ابھی تک کسی کو بھی نہیں بلایا گیا۔ لیکن جب ایسا ہوتا ہے تو انفراسٹرکچر تیار ہے۔

اگر آپ اندازہ لگانا چاہتے ہیں کہ AI ایجنٹس آج آپ کے مواد کے ساتھ دراصل کس طرح مشغول ہیں، نہ صرف 2027 میں، ہم نے بالکل ایسا کرنے کے لیے citability.dev بنایا۔ مفت اسکیننگ، اکاؤنٹ کی ضرورت نہیں ہے۔

گود لینے کا وکر کہیں سے شروع ہوتا ہے۔ اب WebMCP کے ساتھ، کہ کہیں آپ ہیں۔

اوپر تک سکرول کریں۔