Agent readinessโ€ขSeptember 28, 2026

    NLWeb: Answering Natural-Language Questions at /ask

    A conversational endpoint that answers questions from your schema.org data. The exact request we send and the response shape we accept.

    What we check

    We send one request to your site's /ask path:

    POST /ask
    Content-Type: application/json
    Accept: application/json
    
    {"query": "what is this site about"}

    The check passes when the response is a 2xx, is not HTML, parses as JSON, contains schema.org "@type" entries, and either has a results or items array or is itself a typed object. A catch-all route that answers 200 with your homepage does not pass.

    What NLWeb is

    NLWeb is an open project Microsoft introduced in 2025. It gives a site a question-answering endpoint: an agent asks in plain language, and the site answers with structured results drawn from its own schema.org data, instead of the agent scraping pages and guessing. An NLWeb instance can also act as an MCP server, so the same setup serves conversational agents and tool-calling clients.

    Who it suits

    NLWeb is more work than the other standards in this section. You need a pipeline that indexes your content and a model to answer questions from it. It makes most sense for large catalogs that change often, such as listings, events, recipes or inventory, where answers have to come from live data. A small marketing site gets little from it.

    How to set it up

    1. Make sure your pages already carry good schema.org markup. NLWeb answers from that data, so gaps there become gaps in answers.
    2. Deploy the open-source NLWeb implementation, or a managed service that hosts the pipeline for you.
    3. Expose it at /ask on your main domain and accept POST requests with a JSON body.
    4. Return results as schema.org objects, each with an @type.

    Test it

    curl -s -X POST https://yoursite.com/ask \
      -H "Content-Type: application/json" -H "Accept: application/json" \
      -d '{"query": "what is this site about"}'

    You should see JSON with a results array and "@type" values, not an HTML page.

    ๐Ÿ’ก Quick win

    Before deciding on NLWeb, check your schema.org coverage in the Schema Markup part of your report. If your pages have little structured data, fixing that helps AI search today and is the groundwork NLWeb needs anyway.

    Was this article helpful?