## Summary
Adds the [CoplayDev unity-mcp](https://github.com/CoplayDev/unity-mcp)
server as a third MCP integration in OCGS, alongside the existing
`aseprite` and `godot` MCPs. Mirrors the established patterns
throughout.
- **MCP config**: New `mcp.unity` block in `opencode.json` (HTTP,
`localhost:8080`, disabled by default) — same opt-in shape as
`mcp.godot`
- **Skill docs**: New §7.4 in `setup-engine/SKILL.md` (root + core
module copies, byte-identical) covering prerequisites, install,
Editor-running constraint, manual config fallback, and troubleshooting
- **Agent references**: All 5 unity specialists (`unity-specialist` + 4
sub-specialists) gain a `## MCP Integration` section with
domain-specific tool hints
- **Module version**: `engine-unity` bumped 0.6.0 → 0.7.0
- **Changelog**: New `v0.4.0 — Unity MCP Integration` section in
`UPGRADING.md`
## Transport choice
HTTP (`http://localhost:8080/mcp`), the upstream default. Unity MCP runs
as a package inside Unity Editor, not as a standalone CLI, so it differs
from the godot/aseprite `command: [...]` shape — this is a deliberate,
documented divergence.
## Test Plan
- [x] `node tests/agents/validate.mjs` → 182/182 PASS (51 agents, 77
skills, 53 commands, 1 cross-reference)
- [x] `node .opencode/plugins/tests/test-*.mjs` → 11/11 files, 129/129
scenarios PASS
- [x] `opencode.json` valid JSON
- [x] §7.4 unity-mcp content byte-identical between
`.opencode/skills/setup-engine/SKILL.md` and
`.opencode/modules/core/skills/setup-engine/SKILL.md` (modular framework
invariant preserved)
- [x] All 5 unity specialists have `## MCP Integration` section with
identical closing clause
- [x] Pre-existing §7.4 (Build & Run Setup for SFML3/Raylib) renumbered
to §7.5 in root monolith; no renumbering needed in core copy
(SFML3/Raylib are optional modules absent from core)
## Non-blocking follow-ups
Two spec-inherited tool-name nits surfaced during final review — fixable
in a follow-up spec amendment, do not block merge:
- `manage_package` (singular) → `manage_packages` (plural) in
`unity-addressables-specialist.md` and `setup-engine/SKILL.md` §7.4
references
- `list_scenes` in §7.4 "Verify" example isn't a documented tool;
closest is `manage_scene(action="get_active")`
## Notes
- Spec and plan files in `framework/docs/superpowers/` were created
locally and intentionally NOT committed to this branch (treated as
local-only working artifacts)
- Per the implementation plan, an automated smoke-test skill for Unity
is out of scope (Unity in batchmode is finicky); integration is
interactive-dev only
Summary
Adds the CoplayDev unity-mcp server as a third MCP integration in OCGS, alongside the existing
asepriteandgodotMCPs. Mirrors the established patterns throughout.mcp.unityblock inopencode.json(HTTP,localhost:8080, disabled by default) — same opt-in shape asmcp.godotsetup-engine/SKILL.md(root + core module copies, byte-identical) covering prerequisites, install, Editor-running constraint, manual config fallback, and troubleshootingunity-specialist+ 4 sub-specialists) gain a## MCP Integrationsection with domain-specific tool hintsengine-unitybumped 0.6.0 → 0.7.0v0.4.0 — Unity MCP Integrationsection inUPGRADING.mdTransport choice
HTTP (
http://localhost:8080/mcp), the upstream default. Unity MCP runs as a package inside Unity Editor, not as a standalone CLI, so it differs from the godot/asepritecommand: [...]shape — this is a deliberate, documented divergence.Test Plan
node tests/agents/validate.mjs→ 182/182 PASS (51 agents, 77 skills, 53 commands, 1 cross-reference)node .opencode/plugins/tests/test-*.mjs→ 11/11 files, 129/129 scenarios PASSopencode.jsonvalid JSON.opencode/skills/setup-engine/SKILL.mdand.opencode/modules/core/skills/setup-engine/SKILL.md(modular framework invariant preserved)## MCP Integrationsection with identical closing clauseNon-blocking follow-ups
Two spec-inherited tool-name nits surfaced during final review — fixable in a follow-up spec amendment, do not block merge:
manage_package(singular) →manage_packages(plural) inunity-addressables-specialist.mdandsetup-engine/SKILL.md§7.4 referenceslist_scenesin §7.4 "Verify" example isn't a documented tool; closest ismanage_scene(action="get_active")Notes
framework/docs/superpowers/were created locally and intentionally NOT committed to this branch (treated as local-only working artifacts)