voicemeeter-mcp
An MCP (Model Context Protocol) server for controlling Voicemeeter (Basic, Banana, or Potato) on Windows: strip and bus gains, mutes, output routing, live levels, macro buttons, presets, and audio-engine restarts.
- Uses the official Voicemeeter Remote API (via voicemeeter-api).
- Windows-only, local-only — the Remote API is an in-process DLL, so this server must run on the PC where Voicemeeter runs. From another machine, connect over SSH stdio (example below).
- Every mutating tool accepts
dry_run=trueand returns a preview instead of acting.
Quick start (on the Voicemeeter PC)
# select your edition: basic | banana | potato (default: banana)
set VM_MCP_KIND=banana
claude mcp add voicemeeter -s user -- uvx voicemeeter-mcp
From a different machine (SSH stdio):
claude mcp add voicemeeter -s user -- ssh streampc "uvx voicemeeter-mcp"
Tools
| Tool | Purpose |
|---|---|
mixer_state |
full snapshot: every strip/bus with label, gain, mute, routing |
set_strip_gain / mute_strip |
input fader control |
set_strip_routing |
send a strip to A1/A2/A3/B1/B2 outputs |
set_bus_gain / mute_bus |
output control |
get_levels |
live post-fader levels — find silent or clipping paths |
trigger_macro_button |
press a Voicemeeter macro button |
load_preset |
load a settings XML |
restart_audio_engine |
the classic crackle fix |
health_check |
connection + version |
A typical agent ask: "the game audio is too loud on stream" →
mixer_state to find the strip by label → set_strip_gain(strip, -12).
Development
pip install -e '.[dev]'
ruff check src tests && pytest
Tests run anywhere (fake Remote API); only live use requires Windows.
License
MIT
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file voicemeeter_mcp-0.1.1.tar.gz.
File metadata
- Download URL: voicemeeter_mcp-0.1.1.tar.gz
- Upload date:
- Size: 9.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7c8d6114f646751ffcb8db76501f24752dfe1c5cb4f94272c71fee1ed05ac021
|
|
| MD5 |
f2f2cfd8bce90280eda5fc4343a360c7
|
|
| BLAKE2b-256 |
6af0b3cce9749d79102d6666c1426ce493101b51a1e62e56fb1fcc4b6adf3ae4
|
Provenance
The following attestation bundles were made for voicemeeter_mcp-0.1.1.tar.gz:
Publisher:
publish.yml on aaronckj/voicemeeter-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
voicemeeter_mcp-0.1.1.tar.gz -
Subject digest:
7c8d6114f646751ffcb8db76501f24752dfe1c5cb4f94272c71fee1ed05ac021 - Sigstore transparency entry: 2274556427
- Sigstore integration time:
-
Permalink:
aaronckj/voicemeeter-mcp@2c42a1ebd98280ed82e6fdaff58277e13d41363a -
Branch / Tag:
refs/tags/v0.1.1 - Owner: https://github.com/aaronckj
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@2c42a1ebd98280ed82e6fdaff58277e13d41363a -
Trigger Event:
push
-
Statement type:
File details
Details for the file voicemeeter_mcp-0.1.1-py3-none-any.whl.
File metadata
- Download URL: voicemeeter_mcp-0.1.1-py3-none-any.whl
- Upload date:
- Size: 9.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
30c5ca333c9c8f66f194f66f68acd41e8d4fbccc343758ecb898eeaa1f30d1a5
|
|
| MD5 |
7237e2bfd3658776ca93d994e17926a3
|
|
| BLAKE2b-256 |
648c1e4ef02dbfe1698f2883aea613ae614bf5f12a8115cd82a49a63c052dd16
|
Provenance
The following attestation bundles were made for voicemeeter_mcp-0.1.1-py3-none-any.whl:
Publisher:
publish.yml on aaronckj/voicemeeter-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
voicemeeter_mcp-0.1.1-py3-none-any.whl -
Subject digest:
30c5ca333c9c8f66f194f66f68acd41e8d4fbccc343758ecb898eeaa1f30d1a5 - Sigstore transparency entry: 2274556494
- Sigstore integration time:
-
Permalink:
aaronckj/voicemeeter-mcp@2c42a1ebd98280ed82e6fdaff58277e13d41363a -
Branch / Tag:
refs/tags/v0.1.1 - Owner: https://github.com/aaronckj
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@2c42a1ebd98280ed82e6fdaff58277e13d41363a -
Trigger Event:
push
-
Statement type: