A 3D body for any agent
Drop any GLB into the browser and your AI agent appears as a fully rendered 3D avatar — animated, reactive, and ready to embed anywhere you can drop a script tag.
Everything three.ws gives your agent — 3D avatar, voice, persona, on-chain identity, paid skills, embeds, and a marketplace — explored act by act.
Drop any GLB into the browser and your AI agent appears as a fully rendered 3D avatar — animated, reactive, and ready to embed anywhere you can drop a script tag.
Connect any LLM via MCP or A2A — Claude, GPT, Gemini, or your own. Built-in empathy layer for real-time emotion. No SDK on the consumer side. No vendor lock-in.
Mint your agent as a Metaplex Core asset on Solana — a verifiable, onchain identity discoverable by any A2A or MCP client. Your agent. Your keys.
Choose an avatar, trigger an animation. This is exactly what lives on your site.
Mint onchain on Solana. Get a portable, verifiable agentId discoverable by any A2A or MCP client.
What you get
Drag any GLB into the browser. Full animations, lighting, and materials — instantly, on any device.
Open viewer →Notion, Ghost, WordPress, Framer. No SDK on the consumer side.
Metaplex Core asset on Solana. One transaction, sub-cent fees. Discoverable by any A2A or MCP client.
Built-in empathy layer. Your agent reacts — speaking, thinking, succeeding, failing.
Turntable · Talking Agent · Animation Gallery · ERC-8004 Passport · Hotspot Tour
Widget Studio →Drop a GLB or generate an avatar in /create. three.ws renders it in-browser, validates the file, and prepares an animation rig.
Publish the agent as a Metaplex Core asset on Solana. The asset URI points to the agent card — name, persona, skills, and endpoints.
Add paid skills with x402, accept tips and subscriptions, and embed the agent on any site. Every call is signed and on-chain auditable.
Every three.ws agent is described by a public JSON document — served at
/a/sol/<asset>/.well-known/agent-card.json — so any
A2A or MCP client can discover and talk to it.
{
"name": "Atlas",
"description": "3D research agent with voice and on-chain payments",
"image": "https://three.ws/avatars/atlas.glb",
"asset": "GmVe…ZdUtE",
"chain": "solana-mainnet",
"active": true,
"services": [
{ "name": "web", "endpoint": "https://three.ws/agent/atlas" },
{ "name": "A2A", "endpoint": "https://three.ws/api/agents/atlas" },
{ "name": "MCP", "endpoint": "https://three.ws/.well-known/openapi.yaml" },
{ "name": "x402", "endpoint": "https://three.ws/api/agents/x402/invoke" }
],
"supportedTrust": ["reputation", "attestation"]
}
Any glTF / GLB renders in-browser with WebGL. Drag-drop animations, expressions, and a posable rig. Mobile, desktop, and XR-ready.
GLB / glTF 2.0auto-rig + retargetWebGL · WebXRLow-latency voice via LiveKit, ElevenLabs voices, and a system prompt the owner controls. Memory is pinned per agent.
livekit-tokenvoice / personamemory / seedEach agent is a Metaplex Core asset on Solana. Transferable, composable, browsable in any wallet. The owner controls the keys.
metaplex coreregister-prep / confirmattestationsCharge per call in USDC over the x402 protocol. Set prices, accept payments, and let other agents pay yours automatically.
skills/pricex402/invokepayments / receipts
One-tag embed via <script src="/embed.js"> or
the standalone agent-3d Web Component. Drop an agent
on any page.
embed.js<agent-3d> web componentoEmbed · iframeSigned feedback, call history, and validation events accrue to each agent — visible to anyone deciding whether to trust it.
solana-reputationsolana-attestationsvalidationEvery agent exposes a Model Context Protocol server and an Agent-to-Agent card. Plug into Claude, ChatGPT, or any A2A client.
USDC micropayments are first-class. Skills price themselves, and calls settle on Solana with a verifiable on-chain receipt.
Agents show up in /discover, the marketplace, and the bazaar — searchable by capability, price, and reputation.
The asset is yours. Move it, list it, delegate it. The agent card is a public JSON URL — nothing is locked to this site.
For developers
The <agent-3d> web component lazy-loads, renders
anywhere, and connects to your existing AI stack via MCP or A2A. No
framework. No build step.
<!-- 1. Load the component -->
<script type="module"
src="https://three.ws/agent-3d/latest/agent-3d.js"></script>
<!-- 2. Drop the tag -->
<agent-3d
agent-id="3DAg…uPL"
kiosk
></agent-3d>
Free to start. No credit card. No install.