Software

NLWeb is primarily a protocol — it defines a standard way for agents, applications, and humans to communicate using natural language. Like any protocol, interoperability is the goal: any client that speaks NLWeb can talk to any server that implements it, regardless of the underlying technology.

But every protocol benefits from a reference implementation, and we are making one available.

Reference Implementation

The reference implementation is built on a simple but powerful observation: most websites are fundamentally collections of items — news articles, recipes, movies, products, restaurant listings, job postings, and so on. Thanks to Schema.org (used by over 100 million websites), RSS, and other standard formats, there are already well-established ways to describe these items in a structured, machine-readable form.

The NLWeb reference implementation leverages this existing structure. It ingests items described using these standard vocabularies and uses LLMs to provide intelligent, conversational search over them. Rather than keyword matching, it understands intent, handles context, and returns semantically relevant results — all exposed through the NLWeb protocol.

Deployments

This code is already in use in several places. Microsoft News uses it to power conversational interfaces over its news content. We look forward to continued development from the community and to seeing NLWeb adopted across a wide range of sites and applications.

Source Code

The reference implementation is open source and available on GitHub:

github.com/nlweb-ai/NLWeb