songbird-mcp
Standalone MCP (Model Context Protocol) server for Songbird — bridges LLM clients (Claude Desktop, Claude Code, etc.) to the running app.What it owns
- MCP JSON-RPC protocol handling (initialize, tools/list, tools/call, ping)
- UDS bridge client connecting to
~/.songbird/mcp.sock - Tool registry:
list_sync_commands,dispatch_command,run_terminal_command
Public API
Binary only (songbird-mcp). No library API — other crates do not
depend on this.
How it fits
Reads JSON-RPC on stdio from the LLM client, forwards tool calls over a Unix Domain Socket tosongbird-app (which hosts the UDS listener in
mcp_bridge.rs). Depends on serde_json, dirs, and env_logger.
Tests
Manual integration: start the app, thenecho '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{}}' | cargo run -p songbird-mcp.