WkMCP is a young project. Security fixes are released for the latest tagged version only.
Please do not open a public GitHub issue for a security problem. Instead, report it privately via GitHub's "Report a vulnerability" flow (https://github.com/Guikingone/WkMCP/security/advisories/new) or contact the maintainer directly. Include a description, reproduction steps, and the version affected. We will acknowledge receipt promptly and coordinate a fix and disclosure.
This server is a powerful local automation tool. The following are security-relevant:
- Subprocess execution. The server drives the WolvenKit CLI (
cp77tools) and the daemon as local processes; tools that take a path can write files in the game folders. - HTTP transport. When
WKMCP_TRANSPORT=httpis set, the server exposes MCP over HTTP. It binds loopback by default and requires a bearer token; a non-loopback bind without a token makes the server refuse to start (fail-closed). Seedocs/HTTP_TRANSPORT.md. Remote exposure equals remote code execution on the host and the game. - Live bridge. The
live_*tools execute arbitrary Lua in a running game (TCP127.0.0.1:27010only, no auth) and can mutate game state. Seedocs/LIVE_BRIDGE.md.
When hardening a deployment: keep the HTTP transport on loopback behind a TLS
reverse proxy, always set WKMCP_HTTP_TOKEN, and never expose the live
bridge beyond the local machine.