Wai
What is Wai
WAI (Web Agent Interface) is a standardized JSON schema that exposes public information about a company for use by various agents, such as automated bots and AI assistants.
Use cases
Use cases for WAI include providing company information to chatbots, enabling digital assistants to answer user queries about a business, and integrating with other AI systems for enhanced data access.
How to use
To use WAI, companies must serve their WAI JSON file publicly at specified endpoints (e.g., http://exampledomain.com/wai) via GET requests, allowing agents to retrieve and consume the information.
Key features
Key features of WAI include a machine-readable format, comprehensive company details, support for multiple public API endpoints, and the ability to reference additional data through MCP contexts.
Where to use
WAI can be used in various fields including e-commerce, customer service, and digital marketing, where automated agents need to access and utilize company information.
Clients Supporting MCP
The following are the main client software that supports the Model Context Protocol. Click the link to visit the official website for more information.
Overview
What is Wai
WAI (Web Agent Interface) is a standardized JSON schema that exposes public information about a company for use by various agents, such as automated bots and AI assistants.
Use cases
Use cases for WAI include providing company information to chatbots, enabling digital assistants to answer user queries about a business, and integrating with other AI systems for enhanced data access.
How to use
To use WAI, companies must serve their WAI JSON file publicly at specified endpoints (e.g., http://exampledomain.com/wai) via GET requests, allowing agents to retrieve and consume the information.
Key features
Key features of WAI include a machine-readable format, comprehensive company details, support for multiple public API endpoints, and the ability to reference additional data through MCP contexts.
Where to use
WAI can be used in various fields including e-commerce, customer service, and digital marketing, where automated agents need to access and utilize company information.
Clients Supporting MCP
The following are the main client software that supports the Model Context Protocol. Click the link to visit the official website for more information.
Content

WAI - Web Agent Interface
WAI (Web Agent Interface) is a standardized JSON schema designed to expose public information about a company and its agent-facing services for consumption by automated bots, digital assistants, and AI agents. By providing a single, machine-readable /wai endpoint, agents can discover, integrate, and subscribe to your organization’s capabilities—whether RESTful APIs, push/event feeds, or agent-to-agent interfaces.
This README covers:
- Overview
- Endpoints
- Schema Sections
- Business Information
- Website Public API
- Website Agent Interfaces
- Example JSON (
wai.json) - Publishing and Usage
- Extensibility
Overview
The WAI JSON document must be served publicly at the following endpoints via GET requests:
http://<your-domain>/waihttps://<your-domain>/wai
When an agent fetches /wai, it receives:
- Business Information: Core company details and metadata.
- Website Public API: A registry of your REST/HTTP endpoints.
- Website Agent Interfaces: Agent-facing capabilities, including event feeds, MCP contexts, and A2A interfaces.
By centralizing discovery in /wai, you streamline onboarding, enable dynamic integration, and reduce documentation overhead.
Endpoints
GET /wai # Returns the full WAI JSONGET /wai.json # Alias for compatibility
Additional endpoints (e.g., /agent/<name>.json, /api/...) are listed inside the WAI payload.
Schema Sections
- WAI Information Key
- businessInformation (object)
- publicAPI (array)
- agentInterfaces (array)
Each section conforms to a well-defined structure (see details below).
Root WAI information
Information about wai schema version used, and when the file was created.
wai_version: number # WAI schema version, default to 1
updated: string # MM/DD/YYYY when last updated
Business Information
The businessInformation object holds your organization’s core profile.
businessInformation:
name: string
legalName: string
description: string
tagline?: string
industry?: [string]
keywords?: [string]
founded?: string # ISO date preferred
website: string # URL
logo?: string # URL
social?: [ # multiple social links
{
platform: string # e.g. "twitter"
link: string # full URL
description?: string # e.g. "company news"
}
]
locations?: [object] # Inline locations or omit for large sets
ownedBusinesses?: [object] # use a shallow version of the businessInformation,
additional?: { employees?: number, other?: object }
Location Schema
The locations array within the businessInformation section can include one or more physical places relevant to the business (e.g., headquarters, retail stores, warehouses).
Each location object follows this structure:
locations:
- name: string # e.g. "Main Headquarters"
type?: string # e.g. "office", "retail", "warehouse", "laboratory", "clinic", "restaurant", "club"
address:
street: string
city: string
stateProvince: string
postalCode: string
country: string
geo:
latitude: number # Decimal degrees (e.g., 37.7749)
longitude: number # Decimal degrees (e.g., -122.4194)
contacts: [
{
type: string # Phone, email, fax, email,
value: string # full qualifying number or address, Phone # must include country code within parentesys i.e.(+1)
name: string # Name or description of the contact, i.e. Sales, Support, Etc...
}
]
hours?:
monday: string # e.g. "09:00-17:00"
tuesday: string
wednesday: string
thursday: string
friday: string
saturday: string
sunday: string
holidays:[
{
name: string # Publicly known and recognized holidays, i.e.
fromDate?: string # MM/DD if an holiday is not fixed on a date, leave this blank.
number_of_days?: number # Number of days from the stated day.
}
]
Owned Businesses Schema
When the company for this WAI file controls or own other companies; this is the place to provide a shallow version of the businessInformation schema can be provided as reference. For more details the agent will go to the controlled company website to get the wai file.
The ownedBusiness structure can have the following structure, with 2 required fields.
name: string
website: string # URL
description?: string
Public API
The publicAPI array catalogs your RESTful or HTTP-based endpoints.
publicAPI:
- endpoint: string # full URL, e.g. "https://.../api/products"
type: string # e.g. "REST"
options:
method: string # "GET", "POST", etc.
parameters:
- name: string # parameter name
required: boolean # true/false
type: string # "string", "integer", etc.
description?:string # optional description
Agent Interfaces
The agentInterfaces array lists agent-facing contexts and services.
agentInterfaces:
- name: string # e.g. "Calendar Booking"
description: string # human-readable summary
interfaceUrl: string # URL to the context/schema JSON
interfaceType: string # e.g. "MCP", "A2A", "Event", "Webhook"
Supported interfaceType values:
- MCP: Model Context Protocol files for structured AI workflows.
- A2A: Direct agent-to-agent synchronization interfaces.
- Event: Publish/subscribe event feeds (e.g. fraud alerts).
- Webhook: HTTP callbacks for real-time handoffs.
Example JSON (wai.json)
{
"wai_version": 1,
"updated": "04/16/2025",
"businessInformation": {
"name": "Example Business Inc.",
"legalName": "Example Business Incorporated",
"description": "A cutting-edge provider of innovative solutions tailored for digital transformation.",
"tagline": "Empowering your digital journey",
"industry": [
"Technology",
"IT",
"Cloud Solutions"
],
"keywords": [
"innovation",
"digital",
"transformation"
],
"founded": "2010-05-12",
"website": "https://www.examplebusiness.com",
"logo": "https://www.examplebusiness.com/assets/logo.png",
"social": [
{
"platform": "facebook",
"link": "https://facebook.com/examplebusiness",
"description": "company page"
},
{
"platform": "twitter",
"link": "https://twitter.com/examplebiz",
"description": "product updates"
},
{
"platform": "linkedin",
"link": "https://linkedin.com/company/examplebusiness",
"description": "corporate profile"
}
],
"locations": [],
"ownedBusinesses": [],
"additional": {
"employees": 150,
"other": {
"certifications": [
"ISO9001",
"Tech Innovator Award 2023"
]
}
}
},
"publicAPI": [
{
"endpoint": "https://example.com/api/products",
"type": "REST",
"options": {
"method": "GET",
"parameters": [
{
"name": "perPage",
"required": false,
"type": "integer"
},
{
"name": "page",
"required": false,
"type": "integer"
}
]
}
},
{
"endpoint": "https://example.com/api/subscribeemail",
"type": "REST",
"options": {
"method": "POST",
"parameters": [
{
"name": "email",
"required": true,
"type": "string"
},
{
"name": "phone",
"required": false,
"type": "string"
}
]
}
}
],
"agentInterfaces": [
{
"name": "Calendar Booking",
"description": "Check availability and book meetings via our calendar API.",
"interfaceUrl": "https://exampledomain.com/agent/calendar-booking.json",
"interfaceType": "MCP"
},
{
"name": "Order Management",
"description": "Place and manage orders via our public ordering system.",
"interfaceUrl": "https://exampledomain.com/agent/order-management.json",
"interfaceType": "MCP"
},
{
"name": "Inventory Sync",
"description": "Agent-to-agent stock synchronization for partner platforms.",
"interfaceUrl": "https://exampledomain.com/agent/inventory-sync.json",
"interfaceType": "A2A"
},
{
"name": "Live Chat Relay",
"description": "Real-time handoff between AI assistant and human chat operator.",
"interfaceUrl": "https://exampledomain.com/agent/live-chat-relay.json",
"interfaceType": "Webhook"
},
{
"name": "Fraud Alert",
"description": "Push notifications of suspicious transactions to security agents.",
"interfaceUrl": "https://exampledomain.com/agent/fraud-alert.json",
"interfaceType": "Event"
}
]
}
Publishing and Usage
- Place your
wai.jsonat the root of your public web server. - Configure your web server to serve them at
/waiand/wai.json. - Agents simply
GET /waito discover everything your company want to share, and what action interfaces your website provides.
Extensibility
- Add new APIs by appending to
publicAPI. - Add new agent interfaces by appending to
agentInterfaceswith the appropriateinterfaceType. - Versioning: bump
updatedfield and replace the old wai.json file.
Dev Tools Supporting MCP
The following are the main code editors that support the Model Context Protocol. Click the link to visit the official website for more information.










