Cast
Servidor MCP para Google Cast — descubra dispositivos, reproduza mídia, controle o volume, inicie aplicativos e gerencie filas via stdio
GitHubExperimente este MCPPatrocinado
Documentação
cast-mcp
Servidor MCP para Google Cast — descubra dispositivos na sua rede local via mDNS, reproduza mídia, controle o volume, inicie aplicativos e gerencie filas, tudo via stdio. Não são necessárias variáveis de ambiente ou chaves de API; o servidor se conecta diretamente aos receptores Cast usando o protocolo castv2.
Instalação
bunx @daanrongen/cast-mcp
Ferramentas (17 no total)
| Domínio | Ferramentas | Cobertura |
|---|---|---|
| Descoberta | discover_devices | Escaneia a rede local em busca de dispositivos com Cast via mDNS |
| Mídia | play_media, pause, resume, stop, seek, get_media_status | Controle de reprodução e status da mídia |
| Fila | load_queue, queue_next, queue_prev | Enfileiramento de playlists e navegação |
| Aplicativos | get_status, launch_app, stop_app | Ciclo de vida de aplicativos nos receptores Cast |
| Volume | get_volume, set_volume, mute, unmute | Controle de volume e mudo |
Configuração
Claude Desktop
Edite ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"cast": {
"type": "stdio",
"command": "bunx",
"args": ["@daanrongen/cast-mcp"]
}
}
}
Claude Code CLI
claude mcp add cast -- bunx @daanrongen/cast-mcp
Desenvolvimento
bun install
bun run dev # run with --watch
bun test # run test suite
bun run typecheck # type check without emitting
bun run build # bundle to dist/main.js
bun run inspect # open MCP Inspector in browser
Inspeção local
bun run inspect inicia o MCP Inspector contra a build local:
bun run build && bun run inspect
Isso abre a interface do Inspector no seu navegador, onde você pode chamar qualquer ferramenta interativamente e inspecionar os formatos de requisição e resposta.
Arquitetura
src/
├── config.ts # (no env config required)
├── main.ts # Entry point — ManagedRuntime + StdioServerTransport
├── domain/
│ ├── CastClient.ts # Context.Tag service interface (port)
│ ├── errors.ts # CastError, DeviceNotFoundError
│ ├── models.ts # Schema.Class models (CastDevice, MediaStatus, …)
│ ├── discovery.test.ts # Discovery domain tests
│ ├── media.test.ts # Media domain tests
│ └── volume.test.ts # Volume domain tests
├── infra/
│ ├── CastClientLive.ts # Layer.scoped — mDNS discovery + castv2 connections
│ └── CastClientTest.ts # In-memory test adapter
└── mcp/
├── server.ts # McpServer wired to ManagedRuntime
├── utils.ts # formatSuccess, formatError
└── tools/ # discovery.ts, media.ts, queue.ts, apps.ts, volume.ts
Licença
MIT