# Esek Widget Protocol > First-party chat widget channel. Same internal Contact / > Conversation / Message and AI agent as WhatsApp; transport is > our own REST + WebSocket instead of Meta. ## Specs - [OpenAPI 3.1 (REST)](https://docs.esek.io/openapi.yaml) - [AsyncAPI 2.6 (WebSocket events)](https://docs.esek.io/asyncapi.yaml) - [Overview / README](https://docs.esek.io/README.md) - [Auth model](https://docs.esek.io/auth.md) - [Identity & cross-channel merge](https://docs.esek.io/identity-and-merge.md) ## JSON Schemas - [cloudevent.json](https://docs.esek.io/schemas/cloudevent.json) - [interactive.json](https://docs.esek.io/schemas/interactive.json) - [message.json](https://docs.esek.io/schemas/message.json) - [visitor-session.json](https://docs.esek.io/schemas/visitor-session.json) ## Tooling - MCP server: https://github.com/zaksie/esek-widget-mcp (npx esek-widget-mcp) - Web widget: https://github.com/zaksie/esek-widget-web