Safe MCP server for Plastic SCM, Unity Version Control, and Unity DevOps Version Control source-control workspaces (cm 10.0.16.6656+, including 11.x).
UVCS MCP connects AI IDEs and coding agents to the local cm CLI through a fixed allowlist of documented SCM commands. It helps agents inspect source-control workspace state, prepare changes, create branches and labels, run guarded checkins, and perform merges without arbitrary shell access.
Current release: 1.1.0. Supported cm clients: 10.0.16.6656 and newer. Validated end-to-end on Plastic SCM 10.x and Unity Version Control / Unity DevOps Version Control 11.x.
UVCS MCP is not a Unity Editor automation server. It does not control scenes, GameObjects, Play Mode, Unity packages, editor windows, builds, or runtime objects.
It works with the Plastic SCM / Unity Version Control cm CLI and focuses on source-control workflows: status, pending changes, branches, labels, checkins, locks, diffs, and merges.
Ask your AI IDE to install this MCP server from the GitHub repository URL.
For example:
Install this MCP server from https://github.com/ProAnima/unity-version-control-mcp, configure it for my Plastic SCM / Unity Version Control source-control workspace, and run uvcs_doctor.
Or install manually:
git clone https://github.com/ProAnima/unity-version-control-mcp.git uvcs-mcp
cd uvcs-mcp
node src/cli.js init-local --client=cursor,codex,claude-code,opencode,antigravity,kiro --workspace="D:/Repositories/YourWorkspace"Restart your MCP client, then ask it to run:
uvcs_doctor
uvcs_workspace_status
Preview config changes without writing:
node src/cli.js init-local --client=all --workspace="D:/Repositories/YourWorkspace" --print-configWindows:
node src/cli.js init-local --client=cursor,codex,claude-code,opencode,antigravity,kiro,windsurf --workspace="D:\Repositories\YourWorkspace"macOS:
node src/cli.js init-local --client=cursor,codex,claude-code,opencode,antigravity,kiro,windsurf --workspace="$HOME/Repositories/YourWorkspace"Linux:
node src/cli.js init-local --client=cursor,codex,claude-code,opencode,antigravity,kiro,windsurf --workspace="$HOME/Repositories/YourWorkspace"If cm is not in PATH, add --cm=/path/to/cm or set UVCS_CM_PATH.
npx -y @proanima/uvcs-mcp init --client=cursor,codex --workspace="D:/Repositories/YourWorkspace"Manual MCP block:
{
"command": "npx",
"args": ["-y", "@proanima/uvcs-mcp"],
"env": {
"UVCS_WORKSPACE": "D:/Repositories/YourWorkspace",
"UVCS_MCP_MODE": "readonly"
}
}- Cursor
- Cursor global
- Codex
- Claude Desktop
- Claude Code
- OpenCode
- OpenCode global
- Antigravity
- Kiro
- Kiro global
- Windsurf
- Default mode is
readonly. - Protocol handling is provided by the official MCP TypeScript SDK.
- Tool input is validated server-side with strict schemas.
- Write tools require
UVCS_MCP_MODE=standard. - Critical write operations use
*_preparefollowed by matching*_confirm. - Write confirmations are serialized per workspace.
- Repository delete, repository rename, arbitrary
cm, arbitrary shell execution, and rawcm apistartup are not exposed. - Optional JSONL audit logging is available with
UVCS_AUDIT_LOG=/path/to/uvcs-mcp-audit.jsonl.
uvcs_doctoruvcs_workspace_statusuvcs_pending_changesuvcs_branch_infouvcs_locksuvcs_unity_meta_diagnosticsuvcs_style_rulesuvcs_style_setup_checkuvcs_style_init_prepare/uvcs_style_init_confirmuvcs_name_previewuvcs_release_planuvcs_diff_fileuvcs_cleanup_candidatesuvcs_branch_safety_reportuvcs_update_workspace_prepare/uvcs_update_workspace_confirmuvcs_changeset_analyticsuvcs_add_prepare/uvcs_add_confirmuvcs_branch_create_prepare/uvcs_branch_create_confirmuvcs_label_create_prepare/uvcs_label_create_confirmuvcs_switch_workspace_prepare/uvcs_switch_workspace_confirmuvcs_merge_prepare/uvcs_merge_confirmuvcs_checkin_prepare/uvcs_checkin_confirm
npm test
npm run check
npm run smoke:fakeRun the real Plastic SCM smoke test against a disposable or safe workspace:
npm run smoke:plastic -- "D:/Repositories/YourWorkspace"The smoke test creates temporary branches, labels, checkins, and a merge through MCP tools.
- Use GitHub Issues for reproducible bugs, client setup problems, and compatibility reports.
- Use feature requests for new SCM workflows or MCP tools.
- Do not include secrets, access tokens, private server credentials, or full proprietary logs in public issues.
- For security reports, see Security Policy.
- Install
- Clients
- Security
- Security Review
- Compatibility
- Publishing
- Automation Style
- Production Readiness
- Troubleshooting
- Rules for Agents
- Contributing
- Support
- Wiki Source
- Changelog
Ian Panaev, ProAnimaStudio, 2026. Contact: proanimastudio@gmail.com.
