NLWeb
NLWeb is an open-source Microsoft project that adds a natural-language ask interface to websites, returning Schema.org JSON. Each instance is an MCP server.
What is NLWeb?
NLWeb (Natural Language Web) is an open-source project from Microsoft that adds a conversational interface to a website. Visitors and AI agents can ask the site questions in plain language, and it answers from the site’s own content, returning JSON structured with Schema.org vocabulary. Every NLWeb instance also acts as a Model Context Protocol (MCP) server.
Microsoft announced NLWeb at its Build conference in May 2025. Coverage credited R.V. Guha, who earlier helped create RSS, RDF and Schema.org. The repository describes the goal as a foundational layer for the “AI Web” and positions NLWeb as being “to MCP/A2A what HTML is to HTTP.” It is released under the MIT license.
How it works
At a high level, per the GitHub repository:
- Ingest existing data. NLWeb loads the semi-structured data many sites already publish, mainly Schema.org markup and RSS feeds.
- Store it for retrieval. Content goes into a supported vector store such as Qdrant, Milvus, Elasticsearch, Postgres, Snowflake, Azure AI Search or Cloudflare AutoRAG.
- Answer with a model. A core
askmethod accepts a natural-language question; NLWeb retrieves relevant items and uses a language model to respond. - Return structured output. Responses are JSON using Schema.org types, so both a chat widget and an agent can consume them.
- Expose to agents. Because each instance is an MCP server, MCP-capable assistants can query the site directly.
From SEO to AEO and GEO
In classic SEO, Schema.org markup was mostly a path to rich results: stars, prices and breadcrumbs on a results page. Site search was a separate, usually keyword-based box. NLWeb merges those ideas. The same structured data becomes the knowledge base for a conversational interface, and the site itself becomes something an AI agent can query, not only crawl.
| Classic SEO | NLWeb-style AEO/GEO |
|---|---|
| Schema.org for rich results | Schema.org as agent-readable data |
| Keyword site search | Natural-language ask endpoint |
| Crawlers fetch pages | Agents query the site via MCP |
What carries over: accurate, complete structured data and well-organized content. What is unsettled: how many AI engines or agents will query NLWeb endpoints in practice. Adoption beyond early partners is still limited, so treat it as an emerging option, not a standard.
There is also a strategic question for publishers and vendors: an NLWeb endpoint lets agents get answers from your content without visiting your pages. That may suit a docs site or product catalog, where the goal is correct usage, more than a content site that depends on visits.
What to do about it
- Audit your Schema.org markup for completeness and accuracy: Organization, Product or SoftwareApplication, Article, FAQPage where genuine. This pays off whether or not you adopt NLWeb.
- Keep RSS or Atom feeds for blogs and changelogs; NLWeb and many other tools ingest them.
- Pilot on a contained content set, such as docs or a resource library, if you have engineering capacity.
- Treat the MCP endpoint as a public API: rate-limit it, monitor it and decide what content it may expose.
- Track the project on GitHub before committing roadmap time; interfaces may change.
Common mistakes
- Assuming NLWeb is required for AI citations. It is not.
- Feeding it thin or inconsistent markup, which produces poor answers.
- Exposing content you would not publish, such as internal pricing notes, through an agent endpoint.
Related terms
Sources
- microsoft/NLWeb, GitHub
- Schema.org, vocabulary reference
- Model Context Protocol introduction, modelcontextprotocol.io
Frequently asked questions
Who created NLWeb?
Microsoft released NLWeb as an open-source project at Microsoft Build in May 2025. Press coverage credits R.V. Guha, a Microsoft Technical Fellow known for his earlier work on RSS, RDF and Schema.org. The code is on GitHub under microsoft/NLWeb with an MIT license.
Do I need NLWeb to appear in AI search?
No. ChatGPT, Perplexity, Google AI Overviews and similar engines crawl and cite ordinary web pages. NLWeb is an optional layer for sites that want to offer their own conversational search and expose their content to agents through MCP. It is not a requirement for AI visibility.
What does NLWeb need from my site?
Structured, semi-structured content it can load: Schema.org markup, RSS feeds or similar data. It stores that content in a vector database it supports, such as Qdrant, Elasticsearch, Postgres or Azure AI Search, and uses a language model to answer questions over it.