three.ws Herald
io.github.nirholasv0.1.0Updated Sep 30, 2026
Tell your human in person: a 3D character walks onto their open browser tab and says it out loud.
Installation
In SourceWeft
- Open three.ws Herald in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
@three-ws/herald-mcp
Let your agent tell you something in person.
An MCP server with one idea behind it: when an agent finishes something that mattered, or gets stuck, it should not add a line to a log you will never scroll back to. It should walk up to you and say so.
Wire this in, and it does. Your own 3D companion appears in the corner of whatever browser tab you have open, gestures, and says the line out loud, with a link to click through.
Tools
Install
Claude Code:
Claude Desktop / Cursor (mcp.json):
The key
Create one at three.ws/dashboard/developers
with the herald:announce scope, and put it in THREE_WS_API_KEY.
An announcement is always delivered to the key owner's own live sessions. There is no recipient parameter: this server cannot be pointed at anybody else, so the worst a leaked key can do is annoy the person who leaked it. Revoke it in the same place.
When to use it (and when not to)
Announcements are scarce on purpose. The receiving client applies an importance floor, a rate limit, dedupe, quiet hours, and a freshness window, so anything that does not clear the bar is dropped rather than queued. That is the feature: an interruption only works while it is rare.
Good: a long job finished, a job failed, a decision is needed, something broke, money moved.
Bad: progress updates, "starting step 3 of 7", anything the person can read later. Those belong in the notification inbox (@three-ws/notifications-mcp).
If nothing is open to hear it, the line expires in about five minutes. The rail is a live channel, not an archive.
Example calls
How it reaches a browser
POST /api/herald/announce queues the line on the account's rail; the page
listens over SSE and hands it to @three-ws/herald,
which decides whether it clears the person's own rules and then delivers it
through the 3D companion (or an accessible card when there is no GPU).
Try the whole loop, including the rules engine, at three.ws/herald.
License
Apache-2.0.
Source: packages/herald-mcp/README.md at commit 8a1fd5d
Tools
0Version history
1- v0.1.0LatestSep 30, 2026

