MCP Calls

The Loomle Client exposes eight public MCP tools. Client status, project selection, Editor presentation, resident Skills, and the Unreal Python fallback remain focused support calls; structured authored UE-domain reads and mutations flow through three core SAL calls rather than hundreds of action-specific MCP tools.

Call Input Responsibility
status empty Inspect Client/update status and bound session/Bridge health.
project empty, projectId, or projectRoot Inspect, bind, or switch the session’s project.
sal_query one text value Parse, validate, execute, and format Query Text.
sal_patch one text value Parse, validate, execute, and format ordered Patch Text.
sal_schema empty or one module Return the active module index or one static interface card.
agent_skill empty or one name Discover or load resident Loomle workflow guidance.
editor empty, context, open, or close Read context or idempotently open, focus, and close exact Blueprint presentations.
python run with one script, or the exact returned poll continuation Use Unreal Editor Python only when no structured Loomle interface covers the required capability.

These are the complete public Client surface. New structured UObject behavior belongs in SAL and its interface cards; transient Blueprint presentation belongs to editor. python is an explicit fallback with no SAL dry run, rollback, safe cancellation, or idempotency guarantees.

Calls and Interfaces Are Different

The eight MCP calls describe transport, session, resident workflow, and fallback boundaries. The six active interface modules—Asset, Blueprint, Class, Graph, StateTree, and Widget—describe the UE objects and operations carried through sal_query and sal_patch.

sal_schema connects the call and interface layers by exposing the active interface catalog. agent_skill supplies workflow policy for composing the same calls without adding UE capabilities or a separate host installation.

Result Model

Query, Patch, and Editor share validated canonical SAL Result Text. Its objects section contains ordered Object Text when objects exist; otherwise it ends with no_objects. Editor open/close outcomes, mutation metadata, and diagnostics appear as later independent MCP text blocks formatted as SAL comments, never appended to the canonical Result Text block.

Start with Status and Project Binding, then read SAL Query and Patch. Use the Python fallback only when the installed SAL interfaces do not cover the required operation.


Table of contents