ue5-wwise-setup — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited ue5-wwise-setup (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Set up complete Wwise projects programmatically: bus hierarchies, RTPCs, switches, events, SoundBanks, and AudioLink routing.
Common object types: Sound, RandomSequenceContainer, SwitchContainer, BlendContainer, ActorMixer, Event, Bus, AuxBus, GameParameter, Switch, State.
All calls use curl -s -X POST http://127.0.0.1:8090/waapi with JSON body:
{
"uri": "ak.wwise.core.object.create",
"args": { ... },
"options": {}
}Key format rules:
args contains the call parametersoptions is top-level (NOT inside args), used for return fieldsreturn goes in options, NOT in args"options": {} even if empty\\Busses\\Default Work Unit\\Main Audio Bus{
"uri": "ak.wwise.core.object.get",
"args": { "from": {"id": ["{GUID}"]} },
"options": { "return": ["id", "name", "type", "path"] }
}curl -s -X POST http://127.0.0.1:8090/waapi -H "Content-Type: application/json" -d '{
"uri": "ak.wwise.core.object.create",
"args": {
"parent": "\\Busses\\Default Work Unit\\Main Audio Bus",
"type": "Bus",
"name": "SFX",
"onNameConflict": "merge"
},
"options": {}
}'curl -s -X POST http://127.0.0.1:8090/waapi -d '{
"uri": "ak.wwise.core.object.setProperty",
"args": {"object": "{GUID}", "property": "Volume", "value": -6.0},
"options": {}
}'curl -s -X POST http://127.0.0.1:8090/waapi -d '{
"uri": "ak.wwise.core.object.setReference",
"args": {"object": "{GUID}", "reference": "OutputBus", "value": "{BUS_GUID}"},
"options": {}
}'curl -s -X POST http://127.0.0.1:8090/waapi -d '{
"uri": "ak.wwise.core.object.delete",
"args": {"object": "{GUID}"},
"options": {}
}'# By ID
"from": {"id": ["{GUID}"]}
# By type
"from": {"ofType": ["Event"]}
# Text search
"from": {"search": ["AudioLink"]}
# By path
"from": {"path": ["\\Events\\Default Work Unit"]}
# Children of object
"transform": [{"select": ["children"]}]curl -s -X POST http://127.0.0.1:8090/waapi -d '{
"uri": "ak.wwise.core.project.save", "args": {}, "options": {}
}'# Play in Wwise transport (NOT ak.soundengine.postEvent)
curl -s -X POST http://127.0.0.1:8090/waapi -d '{
"uri": "ak.wwise.ui.commands.execute",
"args": {"command": "TransportPlayDirectly", "objects": ["{EVENT_GUID}"]},
"options": {}
}'# Force reload project from disk
"command": "ForceReloadProject"
# Save project
"uri": "ak.wwise.core.project.save"rename, replace and fail)\\Busses\\Default Work Unit\\...argsak.wwise.core.undo.beginGroup … endGroup, so one undo reverts the batchRead these when the task needs them:
src/ue_audio_mcp/tools/core.py, objects.py, events.py, preview.py, templates.pysrc/ue_audio_mcp/knowledge/wwise_types.pysrc/ue_audio_mcp/templates/wwise/research/research_waapi_mcp_server.md$ARGUMENTS
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.