Manual
Agents and MCP
tassix_mcp serves the engine over the Model Context Protocol (stdio, headless), so an AI agent can build a scene, play it with its scripts, look at it and fix what it finds, while a person reviews every change.
Connect
cargo xtask mcp
builds a release snapshot of the server with the managed runtime and the sample scripts, makes it current, and prints the claude mcp add command to register it (the repository's .mcp.json does the same for this folder). The launcher it registers swaps in newer snapshots by itself between requests, keeping the edited scene, its undo history and the reviews. The server takes --scripts <dll> for your own script assemblies, and opens Unity projects with scene_open.
Tools
| Tool | What it does |
|---|---|
scene_open / scene_save | Open a JSON scene, a Unity scene or a Unity project; save as JSON or back into the .unity file |
scene_query | The scene tree with component fields (the live game in play mode) |
scene_edit | An atomic list of edits (create, reparent, transform, add components, set fields): one undo step and one reviewable change |
scene_undo / scene_redo | History |
play_enter / play_step / play_exit | Play the scene with its scripts, step deterministic frames with injected keyboard and mouse input, and go back to the edited scene |
view_screenshot | The live scene through its cameras, or from any viewpoint |
console_read | Script logs, warnings, errors and exceptions |
scripts_reload | Hot reload changed scripts into the running game |
exec | Run a C# snippet inside the engine (with the person's approval) |
review_status | The review panel's link |
Resources: the scene, the console, script errors, project settings, the Scripting API Tassix has (tassix://docs/api, per type at tassix://docs/api/{type}) and the compatibility page (tassix://docs/compatibility). Prompts: playtest, fix_errors and port_check.
Review
The server serves a review panel on http://127.0.0.1:47823 (review_status gives the link with its access token). It shows the scene as the engine renders it, the console, and every scene_edit as a transaction a person accepts or reverts. The person sets how much the agent may do alone: apply edits without review, apply and review after (the default), or wait for approval of destructive edits or of every edit; and whether exec never runs, asks each time (the default) or runs freely. TASSIX_EDIT_PERMISSION and TASSIX_CODE_PERMISSION set the levels a session starts with.
Without an agent
tassix_editor runs the same editor commands from a JSON-lines script: cargo run -p tassix_editor -- --script apps/editor_cli/examples/build_and_undo.jsonl.
From docs/agents.md in the repository.