three.ws Audio runs on your own machine — the client starts it, so there is no endpoint to ping. 197 installs a week from npm. Last commit 18 Sep 2026.
Text-to-speech, speech-to-text, audio-to-face lipsync, and motion-capture clips for 3D agents.
We read the source, 20 h ago · rules 3dff92dd89df
A value the model can set ends up inside a file or shell call. That is not a flaw by itself — for a terminal server it is the job — but it is where things go wrong when it is not.
await fs.writeFile(out, bytes);
Things with no honest explanation: a promise that contradicts the code, code that runs at install time while hiding what it does, data leaving the machine.
'http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/default/token',
What this server is able to do. For an MCP server this is often the job itself — a terminal server runs commands because that is what it is for. Listed so you know what you are plugging in, not as an accusation.
return redis.eval(ROLLBACK_FLOOR_LUA, [key], [String(delta)]);
filePath = path.join(ROOT_PUBLIC, url);
const child = spawn(command[0], command.slice(1), { stdio: 'inherit', shell: false });
exec(compile(job["code"], "<three-ws-blender-mcp>", "exec"), namespace)
const drop = STANDING_HIP_HEIGHT * (root.height - 1) + root.rise;
if (reset) { state.cursor = null; state.total = 0; grid.innerHTML = skeletons(); stateEl.hidden = true; }
'UklGRmQBAABXQVZFZm10IBAAAAABAAEAQB8AAIA+AAACABAAZGF0YUABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA…
const TELEGRAM_API = 'https://api.telegram.org';
<script type="module" src="https://three.ws/agent-3d/latest/agent-3d.js"></script>
Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.
That is not a flaw by itself — but it is where things go wrong when it is not the job. We re-read this code on every release. Watch it and you hear from us the day another one appears.
This server runs on your own machine — install it with the package manager and the client starts it for you. Package name taken from the official registry entry.
claude mcp add audio-mcp -- npx -y @three-ws/audio-mcp
{
"mcpServers": {
"audio-mcp": {
"args": [
"-y",
"@three-ws/audio-mcp"
],
"command": "npx"
}
}
}
[mcp_servers.audio-mcp]
command = "npx"
args = ["-y", "@three-ws/audio-mcp"]
{
"mcpServers": {
"audio-mcp": {
"args": [
"-y",
"@three-ws/audio-mcp"
],
"command": "npx"
}
}
}
{
"mcpServers": {
"audio-mcp": {
"args": [
"-y",
"@three-ws/audio-mcp"
],
"command": "npx"
}
}
}
This one needs environment variables set before it will start:
THREE_WS_BASE (Base URL of the three.ws API that serves the audio/animation endpoints. Override only when self-hosting or targeting a preview deployment.), THREE_WS_API_KEY (Optional three.ws API key (bearer token). Raises the metered TTS/ASR/Audio2Face rate limits and unlocks your own private/unlisted motion-capture clips. Leave unset to use the public surface anonymously.), THREE_WS_TIMEOUT_MS (Per-request timeout in milliseconds for the live audio/animation calls (synthesis and recognition are real upstream model calls).).
The author declared them in the registry entry; get the values from the project itself.
Give your AI agents the ability to listen. Microphone capture and speech-to-text.
Give your AI agents the ability to listen. Microphone capture and speech-to-text.
Speech-to-text transcription for AI agents.
Turn text or an image into an animation-ready 3D model (GLB): generate, rig, animate, retexture.
Screenshot, diff, audit and sitemap-capture any web page — 5 MCP tools for AI agents.
AI voice generation: text-to-speech and voice cloning from any MCP client.
Transcribe audio and video with Speechmatics speech-to-text from Claude and any MCP client.
Pronunciation scoring, speech-to-text, and text-to-speech for language learning
Answers built from our own checks of this server.