Text Chat Format
Specification
An open, vendor‑neutral protocol for structured messaging. Designed for interoperability between chat platforms, AI agents, and messaging infrastructure. Simple. Extensible. Secure.
Core Specification
Message envelope, content types, routing, and base protocol semantics. The foundation of TCF.
Transport Bindings
WebSocket, HTTP/2, and gRPC transport specifications with examples and best practices.
Extension Registry
Official and community extensions: typing indicators, read receipts, reactions, threads, and more.
Security Model
End‑to‑end encryption, message signing, authentication flows, and threat model documentation.
Implementations
Reference libraries in Rust, TypeScript, Python, and Go. SDKs, testing tools, and compliance suite.
JSON Schema
Machine‑readable schemas for all TCF message types. Validate your implementation automatically.
Changelog
Track the evolution of TCF from v0.1.0 to the latest draft. Breaking changes, additions, and migrations.
Contribute
Join the working group, submit proposals, report issues, or help with documentation and tooling.
FAQ
Common questions about TCF, comparisons with other protocols, and migration guides.
Quick Example
{
"tcf_version": "0.4",
"message_id": "01JEXM3A...",
"timestamp": "2026-06-01T12:00:00Z",
"sender": { "id": "alice@example.com" },
"recipient": { "id": "room:general" },
"content": {
"type": "text",
"body": "Hello, TCF! 👋",
"format": "markdown"
}
}