CastleCall MCP Server

Local setup required. This server has to be cloned and prepared on your machine before you register it in Claude Code.
1

Set the server up locally

Run this once to clone and prepare the server before adding it to Claude Code.

Run in terminal
npm install
npm run build
2

Register it in Claude Code

After the local setup is done, run this command to point Claude Code at the built server.

Run in terminal
claude mcp add -e "CASTLECALL_URL=${CASTLECALL_URL}" castlecall -- node "<FULL_PATH_TO_CASTLECALL_MCP>/dist/index.js"

Replace <FULL_PATH_TO_CASTLECALL_MCP>/dist/index.js with the actual folder you prepared in step 1.

Required:CASTLECALL_URL+ 2 optional
README.md

Exposes a text-to-speech announcement tool for the CastleCall home PA system

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

Tools (1)

announcePlay a text-to-speech announcement on CastleCall.

Environment Variables

CASTLECALL_URLrequiredURL of your CastleCall instance
CASTLECALL_PROVIDERTTS provider: piper (default) or elevenlabs
CASTLECALL_VOICE_IDElevenLabs voice ID

Configuration

claude_desktop_config.json
{"mcpServers": {"castlecall": {"command": "node", "args": ["/path/to/castlecall-mcp/dist/cli.js"], "env": {"CASTLECALL_URL": "http://192.168.1.50:3000", "CASTLECALL_PROVIDER": "piper"}}}}

Try it

Announce to the house that dinner is ready in 5 minutes.
Use the PA system to say: The laundry cycle has finished.
Broadcast a message saying: Please remember to turn off the lights before leaving.

Frequently Asked Questions

What are the key features of CastleCall MCP?

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.

What can I use CastleCall MCP for?

Automating household announcements via AI agents. Sending voice notifications from home automation scripts. Integrating custom AI-generated messages into a home PA system.

How do I install CastleCall MCP?

Install CastleCall MCP by running: npm install && npm run build

What MCP clients work with CastleCall MCP?

CastleCall MCP works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep CastleCall MCP docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Need the old visual installer? Open Conare IDE.
Open Conare