Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
VRC_MCP_PROXY_DISABLENoComma- or space-separated list of behavior names to disable (e.g., 'read_console_strip,canary')

Capabilities

Features and capabilities supported by this server

CapabilityDetails
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

NameDescription
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 action="search", prefer paging (page_size, page_number) and keep generate_preview=false (previews can add large base64 blobs).

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:

  • ping: Check if Cinemachine is available

  • ensure_brain: Ensure CinemachineBrain exists on main camera

  • get_brain_status: Get Brain state (active camera, blend, etc.)

CAMERA CREATION:

  • create_camera: Create camera with preset (third_person, freelook, follow, dolly, static, top_down, side_scroller). Falls back to basic Camera without Cinemachine.

CAMERA CONFIGURATION:

  • set_target: Set Follow and/or LookAt targets on a camera

  • set_priority: Set camera priority for Brain selection

  • set_lens: Configure lens (fieldOfView, nearClipPlane, farClipPlane, orthographicSize, dutch)

  • set_body: Configure Body component (bodyType to swap, plus component properties)

  • set_aim: Configure Aim component (aimType to swap, plus component properties)

  • set_noise: Configure Noise component (amplitudeGain, frequencyGain)

EXTENSIONS:

  • add_extension: Add extension (extensionType: CinemachineConfiner2D, CinemachineDeoccluder, CinemachineImpulseListener, CinemachineFollowZoom, CinemachineRecomposer, etc.)

  • remove_extension: Remove extension by type

CAMERA CONTROL:

  • set_blend: Configure default blend (style: Cut/EaseInOut/Linear/etc., duration)

  • force_camera: Override Brain to use specific camera

  • release_override: Release camera override

  • list_cameras: List all cameras with status

CAPTURE:

  • screenshot: Capture a screenshot. By default (no camera specified) uses ScreenCapture API, which captures all render layers including Screen Space - Overlay UI canvases. Specifying a camera uses direct camera rendering, which EXCLUDES Screen Space - Overlay canvases (use only when you need a specific viewpoint without UI). Supports include_image=true for inline base64 PNG, batch='surround' for 6-angle contact sheet, batch='orbit' for configurable grid, view_target/view_position for positioned capture, and capture_source='scene_view' to capture the active Unity Scene View viewport.

  • screenshot_multiview: Shorthand for screenshot with batch='surround' and include_image=true.

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):

  • list_packages: List all installed packages

  • search_packages: Search Unity registry by keyword

  • get_package_info: Get details about a specific installed package

  • ping: Check package manager availability

  • status: Poll async job status (job_id required for list/search; optional for add/remove/embed)

INSTALL/REMOVE:

  • add_package: Install a package (name, name@version, git URL, or file: path)

  • remove_package: Remove a package (checks dependents; use force=true to override)

REGISTRIES:

  • list_registries: List all scoped registries

  • add_registry: Add a scoped registry (e.g., OpenUPM)

  • remove_registry: Remove a scoped registry

UTILITY:

  • embed_package: Copy package to local Packages/ for editing

  • resolve_packages: Force re-resolution of all packages

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:

  • get_type: Member summary (names only) for a class. Requires class_name.

  • get_member: Full signature detail for one member. Requires class_name + member_name.

  • search: Type name search across loaded assemblies. Requires query. Optional scope.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
editor_stateCanonical editor readiness snapshot. Includes advice and server-computed staleness. URI: mcpforunity://editor/state
editor_active_toolCurrently active editor tool (Move, Rotate, Scale, etc.) and transform handle settings. URI: mcpforunity://editor/active-tool
camerasList 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_apiDocumentation for GameObject resources. Use find_gameobjects tool to get instance IDs, then access resources below. URI: mcpforunity://scene/gameobject-api
project_layersAll 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_itemsProvides a list of all menu items. URI: mcpforunity://menu-items
prefab_apiDocumentation for Prefab resources. Use manage_asset action=search filterType=Prefab to find prefabs, then access resources below. URI: mcpforunity://prefab-api
editor_prefab_stageCurrent 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_infoStatic project information including root path, Unity version, and platform. This data rarely changes. URI: mcpforunity://project/info
renderer_featuresLists all URP renderer features on the active renderer with type, name, and active state.
rendering_statsSnapshot of rendering performance statistics (draw calls, batches, triangles, frame time, etc.).
editor_selectionDetailed information about currently selected objects in the editor, including GameObjects, assets, and their properties. URI: mcpforunity://editor/selection
project_tagsAll tags defined in the project's TagManager. Read this before using add_tag or remove_tag tools. URI: mcpforunity://project/tags
get_testsProvides the first page of Unity tests (default 50 items). For filtering or pagination, use the run_tests tool instead. URI: mcpforunity://tests
tool_groupsAvailable tool groups and their tools. Use manage_tools to activate/deactivate groups per session. URI: mcpforunity://tool-groups
unity_instancesLists all running Unity Editor instances with their details. URI: mcpforunity://instances
volumesLists all Volume components in the active scene with their profiles, effects, and settings.
editor_windowsAll currently open editor windows with their titles, types, positions, and focus state. URI: mcpforunity://editor/windows

Latest Blog Posts

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