AquaSynth/tools/AquaSynthDingsMcp
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-08-21 21:18:45 +02:00
..
AgentInstrumentRegistry.cs Share Dings MCP across agent sessions 2026-08-21 21:18:45 +02:00
AquaSynthDingsMcp.csproj Share Dings MCP across agent sessions 2026-08-21 21:18:45 +02:00
DingService.cs Centralize Dings playback and volume 2026-07-15 01:18:09 +01:00
DingsHostClient.cs Centralize Dings playback and volume 2026-07-15 01:18:09 +01:00
DingTools.cs Share Dings MCP across agent sessions 2026-08-21 21:18:45 +02:00
Program.cs Share Dings MCP across agent sessions 2026-08-21 21:18:45 +02:00
README.md Share Dings MCP across agent sessions 2026-08-21 21:18:45 +02:00

AquaSynth Dings MCP

Stdio MCP bridge for synthesized agent notifications. Event motif says what happened; curated instrument timbre says which agent spoke.

All MCP instances are command bridges. One persistent AquaSynthDingsHost.exe owns the WASAPI session named AquaSynth Dings, the Aqua synthesis child, mixer, master volume, and mute state. Windows Volume Mixer and MCP volume tools address the same session.

Do not register the STDIO bridge globally in an agent harness that creates a separate MCP client for every root agent, subagent, or critic. STDIO ownership means one resident .NET bridge per client even though audio authority is already shared by AquaSynthDingsHost.exe. Run one supervised Streamable HTTP MCP server instead and point every agent at its loopback endpoint:

AquaSynthDingsMcp.exe --http http://127.0.0.1:17878

The HTTP server is machine-singleton and keeps only MCP session-to-instrument assignments. Each agent session is assigned a stable timbre automatically and may claim another with claim_instrument; play_ding then uses that assignment without an instrument argument. AquaSynthDingsHost.exe remains the sole audio-session and playback owner.

Install the per-user singleton on Windows:

.\scripts\install-dings-mcp-task.ps1
dotnet run --project tools/AquaSynthDingsMcp

Direct smokes and controls:

dotnet run --project tools/AquaSynthDingsMcp -- --play task.complete warm-bell
dotnet run --project tools/AquaSynthDingsMcp -- --get-volume
dotnet run --project tools/AquaSynthDingsMcp -- --set-volume 0.5
dotnet run --project tools/AquaSynthDingsMcp -- --mute true

MCP tools are play_ding, get_agent_instrument, claim_instrument, list_ding_events, list_instruments, stop_dings, get_volume, set_volume, and mute_dings.

Instrument availability is catalog-only. Additions must satisfy mechanical curation checks and then survive listening/identification tests; see docs/research/auditory-notifications/README.md.