cast-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@cast-mcpscan my library and list available audiobooks"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
cast-mcp
Standalone HTTP MCP server for playing audiobooks and local TTS on home speakers.
The service exposes both MCP tools for agents and plain HTTP endpoints for physical devices. Audiobooks are read from ./media by default and streamed to speakers through signed session URLs backed by ffmpeg.
Supported speaker providers:
Google Cast
Sonos
Speaker IDs are provider-prefixed, for example cast:boys-room-speaker or sonos:kitchen. Existing unprefixed Cast IDs still work as a compatibility fallback.
It also includes fully local TTS for short spoken messages. Docker defaults to Piper with the en_GB-jenny_dioco-medium voice and falls back to espeak-ng if Piper fails.
Local Setup
bun install
cp .env.example .env
mkdir -p media data
bun run startRelated MCP server: sonos-mcp
Docker
cp .env.example .env
mkdir -p media data
docker compose up -d --buildDocker mounts ./media as /media:ro and ./data as /data.
Library Layout
See MEDIA.md for detailed instructions on where to put audiobook files and what formats are supported.
Each folder under ./media is treated as one book:
media/
the-hobbit/
metadata.json
001.mp3
002.mp3Optional metadata.json:
{
"id": "the-hobbit",
"title": "The Hobbit",
"author": "J.R.R. Tolkien"
}Supported input extensions are currently .mp3, .m4a, .m4b, .aac, .wav, .flac, and .ogg. Streams are transcoded to MP3.
Endpoints
GET /healthPOST /mcpGET /booksPOST /scanGET /speakersPOST /playPOST /sayPOST /stopGET /status/:speakerIdGET /media/stream.mp3?sessionId=...&sig=...GET /tts/:id/audio.mp3?sig=...
Control endpoints require Authorization: Bearer <CONTROL_AUTH_TOKEN> when configured. MCP uses MCP_AUTH_TOKEN.
OpenCode MCP Config
{
"mcp": {
"cast-audio": {
"type": "remote",
"url": "http://127.0.0.1:4130/mcp",
"enabled": true,
"headers": {
"Authorization": "Bearer {env:CAST_MCP_TOKEN}"
}
}
}
}This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server exposing the AceDataCloud Fish Audio API (text-to-speech with voice conditioning)
MCP server for Text-to-Speech
- mcpOAuthco.aistoryhub
Remote MCP server for AIStoryHub: stories, chapters, story bible, Voiceprints, AI generation.
MCP server for Speech-to-Text
Related MCP Servers
- AlicenseBqualityCmaintenanceMCP server for ElevenReader TTS service. Enables document management, URL/ebook upload, voice configuration, and progress tracking.171MIT
- FlicenseNot gradedqualityBmaintenanceMCP server for controlling Sonos speakers. Currently early scaffolding with a temporary discover tool.-
- AlicenseNot gradedqualityCmaintenanceEnables searching and retrieving audiobooks, authors, and tracks from LibriVox through an MCP interface.14MIT
- AlicenseNot gradedqualityAmaintenanceA Go MCP server for inspecting and safely operating Audiobookshelf libraries.MIT