Prepare the server locally
Run this once before adding it to Claude Code.
npm install
npm run buildRegister it in Claude Code
claude mcp add -e "CASTLECALL_URL=${CASTLECALL_URL}" castlecall -- node /path/to/castlecall-mcp/dist/cli.jsReplace any placeholder paths in the command with the real path on your machine.
CASTLECALL_URL+ 2 optionalMake your agent remember this setup
castlecall's config, env vars, and the gotchas you hit — recalled in every future Claude Code, Cursor, and Codex session.
npx conare@latestFree · one command · indexes the sessions already on disk. Set up in the browser instead →
What it does
- Integrates with CastleCall home PA systems on Raspberry Pi
- Supports local text-to-speech via Piper
- Supports cloud-based text-to-speech via ElevenLabs
- Exposes a simple announce tool for voice broadcasting
Tools 1
announcePlay a text-to-speech announcement on CastleCall.Environment Variables
CASTLECALL_URLrequiredURL of your CastleCall instanceCASTLECALL_PROVIDERTTS provider: piper (default) or elevenlabsCASTLECALL_VOICE_IDElevenLabs voice IDTry it
Original README from ctf2009/castlecall-mcp
CastleCall MCP
An MCP server that exposes a text-to-speech announce tool for CastleCall — a home PA/announcement system for Raspberry Pi.
Supports Piper (local) and ElevenLabs (cloud) TTS providers via stdio transport.
Setup
npm install
npm run build
Configuration
| Variable | Required | Description |
|---|---|---|
CASTLECALL_URL |
Yes | URL of your CastleCall instance (e.g. http://192.168.1.50:3000) |
CASTLECALL_PROVIDER |
No | TTS provider: piper (default) or elevenlabs |
CASTLECALL_VOICE_ID |
When using ElevenLabs | ElevenLabs voice ID |
Usage
Claude Desktop / Claude Code
Add to your MCP settings:
{
"mcpServers": {
"castlecall": {
"command": "node",
"args": ["/path/to/castlecall-mcp/dist/cli.js"],
"env": {
"CASTLECALL_URL": "http://192.168.1.50:3000",
"CASTLECALL_PROVIDER": "piper"
}
}
}
}
ElevenLabs example:
{
"mcpServers": {
"castlecall": {
"command": "node",
"args": ["/path/to/castlecall-mcp/dist/cli.js"],
"env": {
"CASTLECALL_URL": "http://192.168.1.50:3000",
"CASTLECALL_PROVIDER": "elevenlabs",
"CASTLECALL_VOICE_ID": "your-voice-id"
}
}
}
}
Tool
`announce`
Play a text-to-speech announcement on CastleCall.
| Parameter | Type | Required | Description |
|---|---|---|---|
text |
string | Yes | The text to announce |