Loading...
Loading...
UE5 Audio MCP plugin TCP control. Use when sending commands to the Unreal Editor plugin, building MetaSounds graphs via TCP, scanning blueprints, listing assets, or debugging the plugin connection on port 9877.
npx skill4agent add koshimazaki/ue-audio-skills mcp-plugin127.0.0.1:9877# Python SDK
from ue_audio_mcp.ue5_connection import get_ue5_connection
conn = get_ue5_connection()
resp = conn.send_command({"action": "ping"})
# Raw TCP
python3 -c "
import socket, struct, json
s = socket.socket(); s.settimeout(5); s.connect(('127.0.0.1', 9877))
p = json.dumps({'action':'ping'}).encode()
s.sendall(struct.pack('>I', len(p)) + p)
r = s.recv(4); l = struct.unpack('>I', r)[0]; print(json.loads(s.recv(l)))
"| Command | Params | Returns |
|---|---|---|
| — | engine, version, project, features[] |
| Command | Params | Returns |
|---|---|---|
| asset_type (Source/Patch/Preset), name | asset_type, name |
| interface | — |
| name, path (/Game/...) | name, path |
| Command | Params | Returns |
|---|---|---|
| name, type, default? | name, type |
| name, type | name, type |
| Command | Params | Returns |
|---|---|---|
| id, node_type, position? [x,y] | id, node_type |
| node_id, input, value | node_id, input |
| from_node, from_pin, to_node, to_pin | all four |
__graph__| Command | Params | Returns |
|---|---|---|
| name? | — |
| — | — |
| — | — |
| Command | Params | Returns |
|---|---|---|
| name, type, default? | name, type |
| id, variable_name, delayed? | id, variable_name |
| id, variable_name | id, variable_name |
| Command | Params | Returns |
|---|---|---|
| referenced_asset (/Game/...) | referenced_asset |
| — | — |
| Command | Params | Returns |
|---|---|---|
| filter?, limit? (200) | nodes[], total, shown |
| asset_path | nodes[], edges[] |
| — | names[], count |
| enabled (bool) | enabled |
| Command | Params | Returns |
|---|---|---|
| function, args? | function, return_value? |
| class_filter?, path?, limit? | assets[], total, shown |
| asset_path, audio_only?, include_pins? | graphs[], audio_summary |
scripts/ms_node_specs.json{"action":"create_builder", "asset_type":"Source", "name":"MySine"}
{"action":"add_interface", "interface":"MetaSound"}
{"action":"add_graph_output", "name":"Out Mono", "type":"Audio"}
{"action":"add_node", "id":"osc", "node_type":"UE::Sine::Audio"}
{"action":"set_default", "node_id":"osc", "input":"Frequency", "value":440}
{"action":"connect", "from_node":"osc", "from_pin":"Audio", "to_node":"__graph__", "to_pin":"Out Mono"}
{"action":"build_to_asset", "name":"MySine", "path":"/Game/Audio/MCP"}{"action":"create_builder", "asset_type":"Source", "name":"FilteredSynth"}
{"action":"add_interface", "interface":"MetaSound"}
{"action":"add_graph_output", "name":"Out Mono", "type":"Audio"}
{"action":"add_graph_input", "name":"Cutoff", "type":"Float", "default":"2000.0"}
{"action":"add_node", "id":"osc", "node_type":"UE::Saw::Audio"}
{"action":"add_node", "id":"filt", "node_type":"UE::Biquad Filter::Audio"}
{"action":"add_node", "id":"env", "node_type":"AD Envelope"}
{"action":"add_node", "id":"mul", "node_type":"UE::Multiply::Audio"}
{"action":"connect", "from_node":"osc", "from_pin":"Audio", "to_node":"filt", "to_pin":"In"}
{"action":"connect", "from_node":"__graph__", "from_pin":"Cutoff", "to_node":"filt", "to_pin":"Cutoff Frequency"}
{"action":"connect", "from_node":"filt", "from_pin":"Out", "to_node":"mul", "to_pin":"Primary Operand"}
{"action":"connect", "from_node":"env", "from_pin":"Out Envelope", "to_node":"mul", "to_pin":"Operand"}
{"action":"connect", "from_node":"mul", "from_pin":"Out", "to_node":"__graph__", "to_pin":"Out Mono"}
{"action":"build_to_asset", "name":"FilteredSynth", "path":"/Game/Audio/MCP"}{"action":"list_assets", "class_filter":"Blueprint"}
{"action":"scan_blueprint", "asset_path":"/Game/BP_Player", "audio_only":true}
{"action":"list_assets", "class_filter":"MetaSoundSource"}
{"action":"get_node_locations", "asset_path":"/Game/Audio/MS_Gunshot"}python scripts/scan_project.py --full-export --import-db --rebuild-embeddingscreate_builder__graph__/Game//Engine/..list_node_classesue5_plugin/UEAudioMCP/Source/UEAudioMCP/Private/Commands/ue5_plugin/UEAudioMCP/Source/UEAudioMCP/Private/AudioMCPTCPServer.cppsrc/ue_audio_mcp/tools/src/ue_audio_mcp/knowledge/metasound_nodes.py