Tool Reference

Complete catalog of all 76+ tools available in BlueprintForge (UE5) and Manny (Unity). Tools are organized by category and callable via chat or MCP protocol.

7

Core Tools

26

Script / Blueprint

6

AnimTools

18+

AI Router

Core Tools

7 tools — Project management, diagnostics, caching, and undo support

health_check

Verify that the plugin server is running and responsive. Returns server version, uptime, registered tool count, and memory usage.

Parameters: none
status

Get the current state of the editor and plugin. Reports open scene/level, active selection, connected providers, bridge status, and recent errors.

Parameters: none
asset_search

Search the project's asset database by name, type, path, or label. Supports glob patterns and regex filtering. Returns matching asset paths with metadata.

Parameters: query (string) — Search pattern; type (string, optional) — Asset type filter; limit (int, optional) — Max results
cache_read

Read a value from the plugin's key-value cache. Used for storing intermediate results, session data, and user preferences between tool invocations.

Parameters: key (string) — Cache key to read
cache_refresh

Write or update a value in the plugin cache, or clear a specific key. Optionally set a TTL (time-to-live) for auto-expiration.

Parameters: key (string) — Cache key; value (any, optional) — Value to store; ttl (int, optional) — Expiration in seconds
transaction_list

List recent editor transactions (tool operations) with timestamps, descriptions, and undo capability flags. Useful for reviewing what changes have been made.

Parameters: limit (int, optional) — Number of recent transactions to return
transaction_undo

Undo a specific transaction by ID or undo the most recent transaction. Reverts all editor changes made by that tool invocation.

Parameters: transactionId (string, optional) — Specific transaction to undo; omit to undo the latest

ScriptTools / BlueprintTools

26 tools — Code generation, scene management, materials, and editor automation

Manny: C# scripts via Roslyn • BlueprintForge: Blueprint graph nodes

Script / Code Management

create_script

Generate a new C# script (Unity) or Blueprint class (UE5) from a natural language description or template. Supports MonoBehaviour, ScriptableObject, interface, and plain C# class types. Roslyn analysis validates the generated code before saving.

Parameters: name (string) — Script/class name; description (string) — What the script should do; type (string, optional) — MonoBehaviour, ScriptableObject, etc.; path (string, optional) — Output path
modify_script

Edit an existing script by adding, removing, or changing code sections. Uses Roslyn for syntax-safe modifications in Unity. Describe the change in natural language or provide specific code to insert.

Parameters: path (string) — Script asset path; modification (string) — What to change; code (string, optional) — Specific code to insert
delete_script

Delete a script file from the project. Removes the asset and cleans up any meta files. Registers a transaction for undo support.

Parameters: path (string) — Script asset path
compile_scripts

Trigger a domain reload and recompilation of all scripts. Returns compile status, error count, and warning details. Useful after generating or modifying multiple scripts.

Parameters: none

Variables & Methods

create_variable

Add a serialized field, property, or constant to an existing script. Supports all C# types, default values, attributes ([SerializeField], [Header], [Range]), and access modifiers.

Parameters: scriptPath (string); name (string); type (string); defaultValue (any, optional); attributes (string[], optional)
modify_variable

Change the type, default value, access modifier, or attributes of an existing variable in a script.

Parameters: scriptPath (string); name (string); changes (object) — Fields to modify
delete_variable

Remove a variable declaration from a script. Optionally removes references to the variable in the same file.

Parameters: scriptPath (string); name (string); removeReferences (bool, optional)
create_method

Add a new method to an existing script. Specify parameters, return type, body, and attributes. Generates properly formatted C# with XML documentation comments.

Parameters: scriptPath (string); name (string); returnType (string); parameters (object[], optional); body (string, optional); description (string, optional)
modify_method

Edit the body, parameters, return type, or attributes of an existing method. Describe the change in natural language for AI-assisted modification.

Parameters: scriptPath (string); name (string); changes (object)
delete_method

Remove a method from a script. Cleans up associated comments and blank lines.

Parameters: scriptPath (string); name (string)

Scene & GameObject Management

spawn_gameobject

Create a new GameObject in the active scene (Unity) or spawn an Actor in the current level (UE5). Set name, position, rotation, scale, and parent. Optionally create from a prefab/Blueprint.

Parameters: name (string); position (vector3, optional); rotation (vector3, optional); scale (vector3, optional); parent (string, optional); prefab (string, optional)
move_gameobject

Set the world or local transform of an existing object. Supports absolute positioning, relative offsets, and look-at targeting.

Parameters: name (string); position (vector3, optional); rotation (vector3, optional); scale (vector3, optional); space (string, optional) — "world" or "local"
delete_gameobject

Remove an object from the scene by name or path. Supports recursive deletion of child hierarchies. Registers a transaction for undo.

Parameters: name (string); includeChildren (bool, optional)
set_property

Set a serialized property value on a component or object by reflection. Works with any serializable field type including custom classes and arrays.

Parameters: target (string) — Object/component path; property (string); value (any)
add_component

Add a component to a GameObject (Unity) or ActorComponent to an Actor (UE5). Supports built-in and custom component types. Optionally set initial property values.

Parameters: target (string); componentType (string); properties (object, optional)
remove_component

Remove a component from a GameObject or Actor by type name. If multiple components of the same type exist, specify an index.

Parameters: target (string); componentType (string); index (int, optional)

Prefabs & Assets

create_prefab

Save a scene object as a reusable prefab asset (Unity) or Blueprint class (UE5). Captures the full component hierarchy and property values.

Parameters: source (string) — Scene object name; path (string) — Asset save path
modify_prefab

Open a prefab in edit mode, apply changes (add/remove components, update properties), and save. Changes propagate to all instances.

Parameters: path (string); modifications (object) — Changes to apply

Materials & Rendering

create_material

Create a new material asset. Automatically selects the appropriate shader for the active render pipeline (Built-in Standard, URP Lit, HDRP Lit). Set color, metallic, smoothness, emission, and texture properties.

Parameters: name (string); shader (string, optional); color (color, optional); metallic (float, optional); smoothness (float, optional); emission (color, optional)
assign_material

Assign a material to a renderer component on a scene object. Supports material slot indices for multi-material meshes.

Parameters: target (string); materialPath (string); slotIndex (int, optional)
assign_mesh

Assign a mesh asset to a MeshFilter/MeshRenderer (Unity) or StaticMeshComponent (UE5) on a scene object.

Parameters: target (string); meshPath (string)

Editor Utilities

save_scene

Save the currently open scene (Unity) or level (UE5) to disk.

Parameters: path (string, optional) — Save to a new path (Save As)
open_scene

Open a scene or level file in the editor. Prompts to save unsaved changes before switching.

Parameters: path (string) — Scene/level asset path
execute_menu_item

Execute a Unity menu item or UE5 editor command by path. Useful for triggering built-in editor operations like Play, Build, or custom menu extensions.

Parameters: menuPath (string) — e.g., "Edit/Project Settings..." or "Tools/Build All"
setup_input

Configure input actions and bindings. Unity: creates Input Action Assets or legacy Input Manager entries. UE5: sets up Enhanced Input actions and mappings.

Parameters: actionName (string); inputType (string); bindings (object[]) — Key/button bindings
batch_operation

Execute multiple tool calls in a single transaction. All operations succeed or fail together, with a single undo point. Useful for complex multi-step operations.

Parameters: operations (object[]) — Array of tool calls with names and parameters

AnimTools

6 tools — Mecanim Animator (Unity) and Animation Blueprint (UE5) automation

anim_query

Inspect an Animator controller (Unity) or Animation Blueprint (UE5). Returns the full structure: layers, state machines, states, transitions, parameters, and blend trees.

Parameters: controller (string) — Animator asset path; layer (int, optional) — Specific layer index
anim_state_machine

Create or modify a state machine within an Animator controller. Add a new layer with a sub-state machine, or restructure an existing one.

Parameters: controller (string); name (string); layer (int, optional); defaultState (string, optional)
anim_state

Add, modify, or remove a state in an Animator state machine. Configure state speed, motion time, mirror, cycle offset, and IK settings.

Parameters: controller (string); stateMachine (string); name (string); action (string) — "add", "modify", or "remove"; properties (object, optional)
anim_transition

Create or edit transitions between states. Configure conditions (parameter comparisons), duration, offset, interruption source, and ordered interruption settings.

Parameters: controller (string); from (string); to (string); conditions (object[], optional); duration (float, optional); hasExitTime (bool, optional)
anim_set_clip

Assign an animation clip to a state, or configure a blend tree with multiple clips and blend parameters. Supports 1D, 2D Simple Directional, 2D Freeform, and Direct blend tree types.

Parameters: controller (string); state (string); clip (string, optional); blendTree (object, optional) — Blend tree configuration
anim_validate

Validate an Animator controller for common issues: missing clips, unreachable states, transitions without conditions, parameter mismatches, and orphaned blend trees. Returns a detailed report.

Parameters: controller (string); fixIssues (bool, optional) — Attempt automatic fixes

AI Router

18+ tools — Multi-provider AI orchestration, generation, and Blender integration

LLM Operations

llm_chat

Send a message to an LLM provider (Claude, Gemini, or OpenRouter) and receive a response. Supports system prompts, conversation history, temperature, and max tokens. The AI Router selects the configured default provider or you can specify one.

Parameters: message (string); provider (string, optional); model (string, optional); systemPrompt (string, optional); temperature (float, optional); maxTokens (int, optional)
llm_generate

Generate structured content (code, JSON, documentation) from a prompt. Returns the generated content in a specified format with optional schema validation.

Parameters: prompt (string); format (string, optional) — "code", "json", "text"; provider (string, optional); schema (object, optional)

Image & Texture Generation

image_generate

Generate an image from a text prompt using DALL-E or Stable Diffusion. Save the result as a project asset (PNG or JPEG). Supports size, style, and quality parameters.

Parameters: prompt (string); provider (string, optional); size (string, optional); style (string, optional); outputPath (string)
texture_generate

Generate a seamless tileable texture from a description. Optimized for game asset use -- includes normal map, roughness, and metallic map generation when requested.

Parameters: prompt (string); resolution (string, optional); tileable (bool, optional); maps (string[], optional) — "normal", "roughness", "metallic"; outputPath (string)

3D Mesh Generation

mesh_generate

Start a 3D mesh generation task using Meshy or Hyper3D. Generation is asynchronous -- use mesh_status to poll progress and mesh_import to bring the result into your project.

Parameters: prompt (string); provider (string, optional); style (string, optional); topology (string, optional)
mesh_status

Check the progress of an active mesh generation task. Returns percentage complete, estimated time remaining, and preview URL when available.

Parameters: taskId (string)
mesh_import

Download and import a completed 3D mesh into the project. Handles format conversion (GLB/FBX), material setup, and asset registration.

Parameters: taskId (string); outputPath (string); format (string, optional) — "glb" or "fbx"

Audio Generation

audio_generate

Generate audio content -- voice dialogue (ElevenLabs), music tracks (Suno), or sound effects. Returns a WAV or MP3 asset imported into the project.

Parameters: prompt (string); type (string) — "voice", "music", or "sfx"; provider (string, optional); voiceId (string, optional); duration (float, optional); outputPath (string)

Blender MCP Integration

blender_connect

Establish a connection to a running Blender instance with the Blueprint Factory Blender addon installed. Returns connection status and Blender version.

Parameters: host (string, optional) — Default "localhost"; port (int, optional) — Default 5000
blender_command

Execute a Blender Python command on the connected instance. Supports bpy operations, object manipulation, modifier application, and scene setup.

Parameters: command (string) — Python/bpy command; waitForResult (bool, optional)
blender_import

Export a model from Blender and import it directly into the game engine project. Handles FBX/GLB export, file transfer, and asset registration in one step.

Parameters: objectName (string, optional) — Specific object or "all"; format (string, optional); outputPath (string)
blender_export

Export an asset from the game engine project to the connected Blender instance for editing. Opens the model in Blender ready for modification.

Parameters: assetPath (string); format (string, optional)

Provider Management

ai_config

Get or set AI provider configuration. View current API keys (masked), default models, rate limits, and endpoint overrides. Set new keys or change default provider selection.

Parameters: provider (string, optional); apiKey (string, optional); model (string, optional); endpoint (string, optional)
ai_route

Manually route a request to a specific provider, bypassing the auto-router. Useful for testing or when you need a specific model's capabilities.

Parameters: provider (string); request (object)
ai_status

Check the health and availability of all configured AI providers. Returns connection status, rate limit remaining, and last response latency for each provider.

Parameters: none
cost_estimate

Estimate the API cost for a planned operation before executing it. Returns estimated token count and dollar cost by provider.

Parameters: operation (string); inputSize (int, optional); provider (string, optional)
model_list

List all available models for a provider, with capabilities (vision, function calling, long context), pricing, and context window sizes.

Parameters: provider (string, optional) — Omit for all providers
usage_history

View API usage history with token counts, costs, and timestamps. Filter by provider, date range, or operation type. Useful for budget tracking.

Parameters: provider (string, optional); days (int, optional) — Lookback period; groupBy (string, optional) — "day", "provider", or "tool"