Repository navigation
Changed
- Tool payloads carry real JSON types too: counts, coordinates, morph values, parameter
min/max/default andon/activeflags are numbers and booleans instead of quoted strings, and
a null value isnullrather than"null". Timestamps and enum names stay strings, as do the
parameters sent to the Hub API, which expects them that way.
Fixed
- Protocol values are now real JSON types. VaM's SimpleJSON quotes everything it serialises,
solistChanged,subscribe,isError, JSON-RPC error codes and — most importantly — the
JSON-RPCidall went out as strings. Clients built on the official MCP SDK validate against
the spec schema and match responses by id, so they rejected the handshake and fell back to the
legacy SSE transport until they timed out. opencode could not connect at all; it can now. statusreportedvaMVersionfromApplication.version, which is the Unity player version
("1.0"). It now usesSuperController.GetVersion()and reports the actual VaM build.scripts/deploy.shandscripts/install-bepinex.shresolvedVAM_ROOTone level too high
(the scripts alreadycdto the repo root), so with the repo inside the VaM folder they wrote
to the parent of the VaM install. Both now resolve it correctly and refuse to run against a
directory with noVaM_Datain it.
Install: drop VaMMCP.dll into <VaM>\BepInEx\plugins\ (BepInEx 5.4.x x64
required), start VaM, then point your MCP client at http://127.0.0.1:9837/mcp.