vrc-mcp-proxy
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| VRC_MCP_PROXY_DISABLE | No | Comma- or space-separated list of behavior names to disable (e.g., 'read_console_strip,canary') |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| debug_request_contextA | Return the current FastMCP request context details (client_id, session_id, and meta dump). |
| execute_codeA | Execute arbitrary C# code inside the Unity Editor. The code runs as a method body with access to UnityEngine and UnityEditor namespaces. Use 'return' to send data back. Compiled in-memory — no script files created. Actions: execute (run code), get_history (list past executions), replay (re-run a history entry), clear_history. NOTE: safety_checks blocks known dangerous patterns but is not a full sandbox. Compiler options: 'auto' (Roslyn if available, else CodeDom), 'roslyn' (C# 12+, requires Microsoft.CodeAnalysis), 'codedom' (C# 6 only). |
| execute_menu_itemB | Execute a Unity menu item by path. |
| find_gameobjectsA | Search for GameObjects in the scene by name, tag, layer, component type, or path. Returns instance IDs only (paginated). Then use mcpforunity://scene/gameobject/{id} resource for full data, or mcpforunity://scene/gameobject/{id}/components for component details. For CRUD operations (create/modify/delete), use manage_gameobject instead. |
| manage_assetA | Performs asset operations (import, create, modify, delete, etc.) in Unity. Tip (payload safety): for |
| manage_cameraA | Manage cameras (Unity Camera + Cinemachine). Works without Cinemachine using basic Camera; unlocks presets, pipelines, and blending when Cinemachine is installed. Use ping to check Cinemachine availability. SETUP:
CAMERA CREATION:
CAMERA CONFIGURATION:
EXTENSIONS:
CAMERA CONTROL:
CAPTURE:
|
| manage_editorA | Controls and queries the Unity editor's state and settings. Read-only actions: telemetry_status, telemetry_ping. Modifying actions: play, pause, stop, set_active_tool, add_tag, remove_tag, add_layer, remove_layer, deploy_package, restore_package, undo, redo. For prefab editing (open/save/close prefab stage), use manage_prefabs. deploy_package copies the configured MCPForUnity source folder into the project's installed package location (triggers recompile, no confirmation dialog). restore_package reverts to the pre-deployment backup. undo/redo perform Unity editor undo/redo and return the affected group name. |
| manage_gameobjectA | Performs CRUD operations on GameObjects. Actions: create, modify, delete, duplicate, move_relative, look_at. NOT for searching — use the find_gameobjects tool to search by name/tag/layer/component/path. NOT for component management — use the manage_components tool (add/remove/set_property) or mcpforunity://scene/gameobject/{id}/components resource (read). |
| manage_packagesA | Manage Unity packages: query, install, remove, embed, and configure registries. QUERY (read-only):
INSTALL/REMOVE:
REGISTRIES:
UTILITY:
|
| manage_sceneA | Performs CRUD operations on Unity scenes. Read-only actions: get_hierarchy, get_active, get_build_settings, get_loaded_scenes, scene_view_frame. Modifying actions: create (with optional template), load (with optional additive flag), save, close_scene, set_active_scene, move_to_scene, validate (with optional auto_repair). For build settings management (add/remove/enable scenes), use manage_build(action='scenes'). For screenshots, use manage_camera (screenshot, screenshot_multiview actions). |
| refresh_unityA | Request a Unity asset database refresh and optionally a script compilation. Can optionally wait for readiness. |
| read_consoleA | Gets messages from or clears the Unity Editor console. Defaults to 10 most recent entries. Use page_size/cursor for paging. Note: For maximum client compatibility, pass count as a quoted string (e.g., '5'). The 'get' action is read-only; 'clear' modifies ephemeral UI state (not project data). |
| set_active_instanceA | Set the active Unity instance for this client/session. Accepts Name@hash, hash prefix, or port number (stdio only). |
| unity_reflectA | Inspect Unity's live C# API via reflection. Use this to verify that classes, methods, and properties exist before writing C# code — training data may be wrong or outdated. Actions:
|
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| editor_state | Canonical editor readiness snapshot. Includes advice and server-computed staleness. URI: mcpforunity://editor/state |
| editor_active_tool | Currently active editor tool (Move, Rotate, Scale, etc.) and transform handle settings. URI: mcpforunity://editor/active-tool |
| cameras | List all cameras in the scene (Unity Camera + CinemachineCamera) with status. Includes Brain state, Cinemachine camera priorities, pipeline components, follow/lookAt targets, and Unity Camera info. URI: mcpforunity://scene/cameras |
| gameobject_api | Documentation for GameObject resources. Use find_gameobjects tool to get instance IDs, then access resources below. URI: mcpforunity://scene/gameobject-api |
| project_layers | All layers defined in the project's TagManager with their indices (0-31). Read this before using add_layer or remove_layer tools. URI: mcpforunity://project/layers |
| menu_items | Provides a list of all menu items. URI: mcpforunity://menu-items |
| prefab_api | Documentation for Prefab resources. Use manage_asset action=search filterType=Prefab to find prefabs, then access resources below. URI: mcpforunity://prefab-api |
| editor_prefab_stage | Current prefab editing context if a prefab is open in isolation mode. Returns isOpen=false if no prefab is being edited. URI: mcpforunity://editor/prefab-stage |
| project_info | Static project information including root path, Unity version, and platform. This data rarely changes. URI: mcpforunity://project/info |
| renderer_features | Lists all URP renderer features on the active renderer with type, name, and active state. |
| rendering_stats | Snapshot of rendering performance statistics (draw calls, batches, triangles, frame time, etc.). |
| editor_selection | Detailed information about currently selected objects in the editor, including GameObjects, assets, and their properties. URI: mcpforunity://editor/selection |
| project_tags | All tags defined in the project's TagManager. Read this before using add_tag or remove_tag tools. URI: mcpforunity://project/tags |
| get_tests | Provides the first page of Unity tests (default 50 items). For filtering or pagination, use the run_tests tool instead. URI: mcpforunity://tests |
| tool_groups | Available tool groups and their tools. Use manage_tools to activate/deactivate groups per session. URI: mcpforunity://tool-groups |
| unity_instances | Lists all running Unity Editor instances with their details. URI: mcpforunity://instances |
| volumes | Lists all Volume components in the active scene with their profiles, effects, and settings. |
| editor_windows | All currently open editor windows with their titles, types, positions, and focus state. URI: mcpforunity://editor/windows |
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Ryan6-VRC/vrc-mcp-proxy'
If you have feedback or need assistance with the MCP directory API, please join our Discord server