Action Catalog
packages/action-catalog/src/index.ts.This generated snapshot is derived from packages/action-catalog. It is the canonical verb registry for mutating platform surfaces and planned ontology/control-plane actions.
Catalog version: action-catalog.v1.0.234. Catalog hash: sha256:f39b6630cd20fb47cc8f6638fcd798405a19303ddfc1f6f3bac0cb824628e3db. Action count: 119. Surface mapping count: 188.
Actions
| Action | Title | Description | Domain | Kind | Lifecycle | Owner | Exposure | Audit Events |
|---|---|---|---|---|---|---|---|---|
agentenv.create_run | Create Run Agent Environment | Execute the canonical AgentEnv CreateRun protocol exchange without bypassing lifecycle, identity, version, or idempotency authority. | agentenv | command | active | agentenv | mcp<br>sdk | AgentEnvCreateRun |
agentenv.create_episode | Create Episode Agent Environment | Execute the canonical AgentEnv CreateEpisode protocol exchange without bypassing lifecycle, identity, version, or idempotency authority. | agentenv | command | active | agentenv | mcp<br>sdk | AgentEnvCreateEpisode |
agentenv.reset_episode | Reset Episode Agent Environment | Execute the canonical AgentEnv ResetEpisode protocol exchange without bypassing lifecycle, identity, version, or idempotency authority. | agentenv | command | active | agentenv | mcp<br>sdk | AgentEnvResetEpisode |
agentenv.observe | Observe Agent Environment | Execute the canonical AgentEnv Observe protocol exchange without bypassing lifecycle, identity, version, or idempotency authority. | agentenv | query | active | agentenv | mcp<br>sdk | AgentEnvObserve |
agentenv.submit_intent | Submit Intent Agent Environment | Execute the canonical AgentEnv SubmitIntent protocol exchange without bypassing lifecycle, identity, version, or idempotency authority. | agentenv | command | active | agentenv | mcp<br>sdk | AgentEnvSubmitIntent |
agentenv.step | Step Agent Environment | Execute the canonical AgentEnv Step protocol exchange without bypassing lifecycle, identity, version, or idempotency authority. | agentenv | command | active | agentenv | mcp<br>sdk | AgentEnvStep |
agentenv.score | Score Agent Environment | Execute the canonical AgentEnv Score protocol exchange without bypassing lifecycle, identity, version, or idempotency authority. | agentenv | query | active | agentenv | mcp<br>sdk | AgentEnvScore |
agentenv.terminate | Terminate Agent Environment | Execute the canonical AgentEnv Terminate protocol exchange without bypassing lifecycle, identity, version, or idempotency authority. | agentenv | command | active | agentenv | mcp<br>sdk | AgentEnvTerminate |
agentenv.fetch_replay | Fetch Replay Agent Environment | Execute the canonical AgentEnv FetchReplay protocol exchange without bypassing lifecycle, identity, version, or idempotency authority. | agentenv | query | active | agentenv | mcp<br>sdk | AgentEnvFetchReplay |
agentenv.export_trajectory | Export Trajectory Agent Environment | Execute the canonical AgentEnv ExportTrajectory protocol exchange without bypassing lifecycle, identity, version, or idempotency authority. | agentenv | command | active | agentenv | mcp<br>sdk | AgentEnvExportTrajectory |
workspace.create | Create Workspace | Create a workspace through the control-plane service. | control-plane | command | active | control-plane | ui<br>mcp<br>ai<br>sdk | CreateWorkspace |
game.create | Create Project | Create a game/project row and apply the caller's declared canonical template intent. | control-plane | command | active | control-plane | ui<br>mcp<br>ai | CreateGame |
game.multiplayer_blueprint.set | Set Multiplayer Blueprint | Set the game's default multiplayer blueprint (rooms, queues, teams, seats, placement, lifecycle, and netcode runtime budgets). Configures matchmaking and netcode parameters a script cannot set. | control-plane | command | active | control-plane | ui<br>mcp<br>ai<br>sdk | SetGameMultiplayerDefault |
commerce.offer.set | Set Commerce Offer | Create or update one purchasable offer on a game: its title, price, kind (durable or consumable), status (draft, active, archived) and the entitlement or item grants it delivers. Offers are what a script's Commerce.promptPurchase names, so the offer must exist before a purchase prompt can open. | control-plane | command | active | commerce | ui<br>mcp<br>ai<br>sdk | UpsertCommerceOffer |
commerce.offer.list | List Commerce Offers | List every offer defined on a game, drafts and archived included, with keys, prices, kinds and statuses. Read this before naming an offer key in a script so the purchase prompt points at an offer that exists and is active. | control-plane | query | active | commerce | ui<br>mcp<br>ai<br>sdk | ListCommerceOffers |
game.update | Update Project | Update project control-plane fields such as title and thumbnail. | control-plane | command | active | control-plane | ui<br>sdk<br>mcp<br>ai | UpdateGame<br>SetGameThumbnail |
environment.create | Create Environment | Create a game environment through the control-plane service. | control-plane | command | active | control-plane | ui<br>mcp<br>ai<br>sdk | CreateEnvironment |
project.graph.snapshot.read | Read Project Graph Snapshot | Read the current typed Project Graph snapshot through its owner service. | project-graph | query | active | project-graph | mcp<br>ai<br>workflow<br>sdk | ProjectGraphSnapshotRead |
project.transaction.apply | Apply Project Graph Transaction | Atomically apply several low-level Project Graph ops as ONE checked, idempotent, undoable transaction. Each op is a { kind, ...fields } object (record.create/update/delete, component.put/patch/delete/add/remove) over a resourceKind (asset, world, component, prefab, entity, script, workflow, ui-panel, data-store); the ops field description carries the exact shapes. The precision batched writer: no engine-owned component defaults, strong per-op validation on receipt. | project-graph | command | active | project-graph | workflow | ProjectGraphTransactionApplied |
project.asset.create | Create Project Asset | Create a ProjectAsset through the UUID-only Project Graph client contract; internal keys, storage, pipeline, provenance, and frozen graph fields are never caller-owned. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | CreateProjectAsset |
project.asset.update | Update Project Asset | Update a ProjectAsset through the UUID-only Project Graph client contract; internal keys, storage, pipeline, provenance, and frozen graph fields are never caller-owned. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | UpdateProjectAsset |
project.asset.delete | Delete Project Asset | Delete a ProjectAsset through the UUID-only Project Graph client contract; internal keys, storage, pipeline, provenance, and frozen graph fields are never caller-owned. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | DeleteProjectAsset |
project.world.create | Create Project World | Create a Project Graph world record through the canonical owner service; the receipt is the exact client resource. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | CreateProjectWorld |
project.world.update | Update Project World | Update a Project Graph world record through the canonical owner service; the receipt is the exact client resource. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | UpdateProjectWorld |
project.world.delete | Delete Project World | Delete a Project Graph world record through the canonical owner service; the receipt is the exact client resource. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | DeleteProjectWorld |
project.world.read | Read Project World | Read one Project Graph world record by uuid or graph key through the canonical owner service; the receipt is the exact client resource with its current version. | project-graph | query | active | project-graph | mcp<br>ai<br>workflow<br>sdk | ReadProjectWorld |
project.component.create | Create Project Component | Create a Project Graph component definition record through backend service paths. Project-defined components are production-grade backend-validated project-local data contracts for advanced/import-only data; they are not canonical engine atomics. | project-graph | command | active | project-graph | ui<br>mcp<br>sdk | CreateProjectComponent |
project.component.update | Update Project Component | Update a Project Graph component definition record through backend service paths. Project-defined components are production-grade backend-validated project-local data contracts for advanced/import-only data; they are not canonical engine atomics. | project-graph | command | active | project-graph | ui<br>mcp<br>sdk | UpdateProjectComponent |
project.component.delete | Delete Project Component | Delete a Project Graph component definition record through backend service paths. Project-defined components are production-grade backend-validated project-local data contracts for advanced/import-only data; they are not canonical engine atomics. | project-graph | command | active | project-graph | ui<br>mcp<br>sdk | DeleteProjectComponent |
project.prefab.create | Create Project Prefab | Create a Project Graph prefab record through the canonical owner service; the receipt is the exact client resource. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | CreateProjectPrefab |
project.prefab.update | Update Project Prefab | Update a Project Graph prefab record through the canonical owner service; the receipt is the exact client resource. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | UpdateProjectPrefab |
project.prefab.delete | Delete Project Prefab | Delete a Project Graph prefab record through the canonical owner service; the receipt is the exact client resource. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | DeleteProjectPrefab |
project.prefab.read | Read Project Prefab | Read one Project Graph prefab record by uuid or graph key through the canonical owner service; the receipt is the exact client resource with its current version. | project-graph | query | active | project-graph | mcp<br>ai<br>workflow<br>sdk | ReadProjectPrefab |
project.entity.create | Create Project Entity | Create a Project Graph entity in a world through the canonical entity owner. worldId/parentEntityId/prefabId accept a uuid or a graph key; on_conflict controls duplicate-key handling. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | CreateProjectEntity |
project.entity.update | Update Project Entity | Update a Project Graph entity's identity, hierarchy, tags, or metadata through the canonical entity owner. With expected_revision the write goes through an optimistic-concurrency transaction and returns a transaction result; otherwise it returns the updated entity. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | UpdateProjectEntity |
project.entity.delete | Delete Project Entity | Delete a Project Graph entity through the canonical entity owner. With expected_revision the delete goes through an optimistic-concurrency transaction and returns a transaction result; otherwise it returns the deleted entity. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | DeleteProjectEntity |
project.entity.read | Read Project Entity | Read one Project Graph entity by uuid or graph key through the canonical entity owner; the receipt is the exact client entity with its current version and components. | project-graph | query | active | project-graph | mcp<br>ai<br>workflow<br>sdk | ReadProjectEntity |
project.entity.search | Search Project Entities | Search Project Graph entities by query, world, tag(s), component type(s), or key prefix through the canonical entity owner, returning a bounded cursor-paginated page of entity records (the discovery reader for edit targets). | project-graph | query | active | project-graph | mcp<br>ai<br>workflow<br>sdk | SearchProjectEntities |
project.script.create | Create Project Script | Create a Project Graph script from a structural GessaScript shell through the canonical script owner. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | CreateProjectScript |
project.script.update | Update Project Script | Update a Project Graph script's metadata through the canonical script owner. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | UpdateProjectScript |
project.script.delete | Delete Project Script | Delete a Project Graph script through the canonical script owner. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | DeleteProjectScript |
project.script.read | Read Project Script | Read one Project Graph script by uuid or graph key through the canonical script owner; the receipt is the exact client script carrying its current version and IR fingerprint together, so a semantic patch never needs to probe for concurrency coordinates. | project-graph | query | active | project-graph | mcp<br>ai<br>workflow<br>sdk | ReadProjectScript |
project.ui_panel.create | Create Project Ui Panel | Create a Project Graph ui panel record through the canonical owner service; the receipt is the exact client resource. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | CreateProjectUiPanel |
project.ui_panel.update | Update Project Ui Panel | Update a Project Graph ui panel record through the canonical owner service; the receipt is the exact client resource. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | UpdateProjectUiPanel |
project.ui_panel.delete | Delete Project Ui Panel | Delete a Project Graph ui panel record through the canonical owner service; the receipt is the exact client resource. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | DeleteProjectUiPanel |
project.ui_panel.read | Read Project Ui Panel | Read one Project Graph ui panel record by uuid or graph key through the canonical owner service; the receipt is the exact client resource with its current version. | project-graph | query | active | project-graph | mcp<br>ai<br>workflow<br>sdk | ReadProjectUiPanel |
project.data_store.create | Create Project Data Store | Create a Project Graph data store record through the canonical owner service; the receipt is the exact client resource. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | CreateProjectDataStore |
project.data_store.update | Update Project Data Store | Update a Project Graph data store record through the canonical owner service; the receipt is the exact client resource. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | UpdateProjectDataStore |
project.data_store.delete | Delete Project Data Store | Delete a Project Graph data store record through the canonical owner service; the receipt is the exact client resource. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | DeleteProjectDataStore |
project.data_store.read | Read Project Data Store | Read one Project Graph data store record by uuid or graph key through the canonical owner service; the receipt is the exact client resource with its current version. | project-graph | query | active | project-graph | mcp<br>ai<br>workflow<br>sdk | ReadProjectDataStore |
project.asset.duplicate | Duplicate Project Asset | Duplicate a ProjectAsset by canonical UUID through the Project Graph owner so storage-owned fields are copied internally and never reconstructed by a caller. | project-graph | command | active | project-graph | ui<br>mcp<br>ai | CreateProjectAsset |
project.asset.model_document.save | Save Project Model Document | Validate and persist the authored ModelAuthoringDocument through the dedicated Project Graph merge boundary without opening the generic client asset update to server-owned rendering fields. | model-authoring | command | active | project-graph | ui<br>mcp<br>ai | UpdateProjectAsset |
asset_pipeline.model_material_slots.inspect | Inspect Model Material Slots | Inspect the canonical conditioned material-slot projection for one model ProjectAsset UUID. | asset-pipeline | query | active | asset-pipeline | ui<br>mcp<br>ai | AssetPipelineModelMaterialSlotsInspected |
asset_pipeline.model_material_slot.promote | Promote Model Material Slot | Promote one conditioned model material slot into a durable ProjectAsset through the Asset Pipeline owner. | asset-pipeline | command | active | asset-pipeline | ui<br>mcp<br>ai | AssetPipelineModelMaterialSlotPromoted |
asset_pipeline.model_material_slots.promote | Promote Model Material Slots | Promote all, every, or a selected bulk batch of conditioned model material slots into durable material assets through the Asset Pipeline owner. | asset-pipeline | command | active | asset-pipeline | ui<br>mcp<br>ai | AssetPipelineModelMaterialSlotsPromoted |
asset_pipeline.model_material_slot.override | Override Model Material Slot | Set or clear one renderable model material-slot override through the Asset Pipeline owner. | asset-pipeline | command | active | asset-pipeline | ui<br>mcp<br>ai | AssetPipelineModelMaterialSlotOverridden |
project.entity.component.set | Set Entity Component | Add or replace a complete component on a Project Graph entity through the canonical component mutation kernel. With expected_revision the write goes through an optimistic-concurrency transaction and returns a transaction result; otherwise it returns the updated entity. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | SetProjectEntityComponentOverride<br>PutProjectEntityComponent<br>PatchProjectEntityComponent |
project.entity.component.delete | Delete Entity Component | Remove one component from a Project Graph entity through the canonical component mutation kernel. With expected_revision the delete goes through an optimistic-concurrency transaction and returns a transaction result; otherwise it returns the updated entity. | project-graph | command | active | project-graph | ui<br>mcp<br>ai<br>sdk | DeleteProjectEntityComponent |
project.script.patch.apply | Apply Script Semantic Patch | Apply checked semantic patch operations to a Project Script and persist canonical Script IR. | script-authoring | command | active | script-semantic-patch | ui<br>mcp<br>ai<br>workflow<br>sdk | UpdateProjectScript |
project.material.patch.apply | Apply Material Semantic Patch | Apply checked semantic patch operations to a material asset and persist canonical material graph artifacts. | material-authoring | command | active | material-semantic-patch | ui<br>mcp<br>ai<br>workflow<br>sdk | ProjectGraphAssetUpdated |
generation.capability.list | List Generation Capabilities | List generation offerings visible to the requester through the canonical generation owner. | generation | query | active | generation | ui<br>mcp<br>ai<br>workflow<br>sdk | GenerationCapabilitiesListed |
generation.job.quote | Quote Generation Job | Quote a generation request against capability, policy, and budget controls. | generation | command | active | generation | ui<br>mcp<br>ai<br>workflow<br>sdk | GenerationJobQuoted |
blender.model.create | Create Blender Model | Author a detailed Blender model with the dedicated Astra model, render and import it through the durable generation service. | generation | job_start | active | generation | ai | BlenderModelRequested |
generation.job.create | Create Generation Job | Create a durable generation job for an approved capability. | generation | job_start | active | generation | ui<br>mcp<br>ai<br>workflow<br>sdk | GenerationJobCreated<br>GenerationJobQueued |
generation.job.read | Read Generation Job | Read one durable generation job through the canonical generation owner. | generation | query | active | generation | ui<br>mcp<br>ai<br>workflow<br>sdk | GenerationJobRead |
generation.job.list | List Generation Jobs | List durable generation jobs visible to the requester through the canonical generation owner. | generation | query | active | generation | ui<br>mcp<br>ai<br>workflow<br>sdk | GenerationJobsListed |
generation.job.cancel | Cancel Generation Job | Cancel an unclaimed generation job through its owner, or explicitly cancel saved placement with scope placement while rendering and incurred charges continue. Inspect the returned placement status for completion races. | generation | command | active | generation | ui<br>mcp<br>ai<br>workflow<br>sdk | GenerationJobCancel |
generation.job.claim | Claim Generation Job | Claim the next queued generation job for a worker lease. | generation | job_start | active | generation | cli<br>admin | GenerationJobClaim |
generation.job.heartbeat | Heartbeat Generation Job | Extend a generation job worker lease. | generation | command | active | generation | cli<br>admin | GenerationJobHeartbeat |
generation.job.progress | Progress Generation Job | Record worker-owned generation job progress. | generation | command | active | generation | cli<br>admin | GenerationJobProgress |
generation.job.complete | Complete Generation Job | Complete and finalize a generation job. | generation | command | active | generation | cli<br>admin | GenerationJobComplete |
generation.job.fail | Fail Generation Job | Fail or retry a generation job through worker-owned state transitions. | generation | command | active | generation | cli<br>admin | GenerationJobFail |
publish.dev | Publish Dev Build | Create a dev content version and deployment candidate through publish gates. | publish | command | active | publish | ui<br>mcp<br>ai<br>workflow<br>sdk | PublishDev |
workflow.definition.create | Create Workflow Definition | Hidden privileged/deferred Workflow IR definition mutation. Normal UI, MCP, AI, and SDK workflow authoring stays unavailable until a complete creator-facing projection ships. | workflow | admin | internal | workflows | admin | CreateProjectWorkflow |
workflow.run.start | Start Workflow Run | Start a durable workflow run through the workflow runner. | workflow | workflow_step | active | workflows | ui<br>sdk<br>mcp<br>ai | WorkflowRunStarted |
blueprint.package.apply | Apply Smart Asset Package | Apply a canonical Smart Asset Package manifest through backend package service paths and Project Graph transactions. | blueprint | command | active | blueprints | ui<br>mcp<br>ai<br>workflow<br>sdk | SmartAssetPackageApplied<br>ProjectGraphTransactionApplied |
blueprint.template.apply | Apply Creation Template | Compatibility alias for applying a creation template; canonical package application is blueprint.package.apply. | blueprint | command | planned | blueprints | ui<br>sdk | CreationTemplateApplied |
workspace.asset.link | Link Workspace Asset | Link an authorized existing workspace asset into a project and return its owner-issued project identity without supplying raw storage coordinates. | workspace-assets | command | active | workspace-assets | ui<br>mcp<br>ai | WorkspaceAssetLinkedToGame<br>ProjectAssetCreated |
spatial.asset.import | Import Spatial Asset | Queue and run backend-authoritative spatial asset import processing through Jobs and Capability Registry. | spatial-ingestion | job_start | active | spatial-ingestion | ui<br>mcp<br>ai<br>workflow<br>sdk<br>cli | SpatialAssetImportQueued<br>SpatialAssetImportProcessed |
spatial.capture.proxy.generate | Generate Spatial Capture Proxy | Generate or record collision/nav/query proxy receipts for a spatial capture asset. | spatial-ingestion | job_start | active | spatial-ingestion | ui<br>mcp<br>ai<br>workflow<br>sdk<br>cli | SpatialCaptureProxyGenerationQueued<br>SpatialCaptureProxyGenerationRecorded |
spatial.capture.annotate | Annotate Spatial Capture | Record semantic anchors for spatial captures through backend-validated Project Graph facets. | spatial-ingestion | command | active | spatial-ingestion | ui<br>mcp<br>ai<br>workflow<br>sdk<br>cli | SpatialCaptureAnnotationRecorded |
terrain.resource.create | Create Terrain Resource | Create a versioned hybrid terrain resource (heightfield + mesh under one resource) as a Project Graph asset terrain facet. Backed by the terrain resource contract (terrain-resource-contract.v1) + the terrain patch chokepoint; the dedicated REST/MCP/AI handlers are pending (planned). | terrain | command | planned | terrain | ui<br>sdk | TerrainResourceCreated |
terrain.patch.apply | Apply Terrain Semantic Patch | Apply checked semantic terrain operations (sculpt/paint/road/biome/generate/cutHole/erosion/scatter) to the versioned terrain resource through the single terrain patch chokepoint (compileTerrainPatch + applyTerrainPatch), invalidating collision/nav/render artifacts for gated rebuild so collision and nav never drift from the source. Lowers into ProjectGraphService.applyTerrainPatch over the asset terrain facet via the existing updateAsset path (no parallel write path). | terrain | command | active | terrain | ui<br>mcp<br>ai<br>workflow<br>sdk | TerrainPatchApplied |
terrain.artifacts.build | Build Terrain Artifacts | Build the explicit terrain artifacts (render height tile, collision proxy, nav source mesh) from the terrain resource source, writing regenerate-gated receipts onto the facet and lifting acceptance to navigable_terrain. Backed by ProjectGraphService.buildTerrainArtifacts over the deterministic buildTerrainArtifacts builder (same source -> same artifactHash, one no-drift build for collision/nav/render). v1 runs the build inline; the durable job-queue worker is a later optimization. Build is a job; path query is runtime. | terrain | job_start | active | terrain | ui<br>mcp<br>ai<br>sdk<br>cli | TerrainArtifactsBuildQueued<br>TerrainArtifactsBuilt |
instance_set.patch.apply | Apply Instance Set Semantic Patch | Apply checked bulk InstanceSet aggregate operations (configure/populate/fill/clearRegion/setCells/clearCells/scatterInstances/paintKind/removeInstances) to a versioned instanceSet resource facet through the single instance-set patch chokepoint (compileInstanceSetPatch + applyInstanceSetPatch), advancing the facet source version so render/collider projections regenerate. Lowers into ProjectGraphService.applyInstanceSetPatch over the asset instanceSet facet via the existing updateAsset path (no parallel write path); author only through the typed ops, never raw packed cell/instance arrays. | instance-set | command | active | instance-set | ui<br>mcp<br>ai<br>workflow<br>sdk | InstanceSetPatchApplied |
world.build.from_prompt | Build World From Prompt | Client ingress that routes a prompt-to-world request to the neutral authoring kernel. Not an engine mutation action; carries no owner binding. | world-factory | workflow_step | active | world-factory | ui<br>sdk | AiWorldBuildStarted<br>AiWorldBuildAccepted |
world.build.from_spatial_asset | Build World From Spatial Asset | Create an executable Project Graph world from an imported spatial asset while enforcing proxy, anchor, and playability receipts. | world-factory | workflow_step | active | world-factory | ui<br>mcp<br>ai<br>workflow<br>sdk | SpatialAssetWorldBuildStarted<br>SpatialAssetWorldBuildAccepted |
knowledge.search | Search Knowledge Library | Search the pull-only knowledge library (generated engine reference plus optional curated playbooks) and return pointers with distilled summaries, never bulk content. | knowledge | query | active | knowledge | mcp<br>ai<br>workflow<br>sdk | KnowledgeSearched |
knowledge.load | Load Knowledge Entry | Load one knowledge entry by id with full provenance (source path, sha256, corpus, trust). Optional playbook/distillation corpora refuse to load under the no-skill switch. | knowledge | query | active | knowledge | mcp<br>ai<br>workflow<br>sdk | KnowledgeLoaded |
engine.component.types.list | List Engine Component Types | List built-in ECS component types with their canonical drafts, add modes, reference admission contracts, and field contracts. Use before authoring entity components to learn which component types exist and their exact shapes. | engine | query | active | engine | mcp<br>ai<br>workflow<br>sdk | EngineComponentTypesListed |
engine.component.schema.read | Read Engine Component Schema | Get the exact schema, field contracts, canonical draft, and reference requirements for one built-in ECS component type (for example TransformComponent). Call this before authoring a component value so the value carries the correct type discriminator and required fields. | engine | query | active | engine | mcp<br>ai<br>workflow<br>sdk | EngineComponentSchemaRead |
engine.sdk.functions.list | List Engine Script SDK Functions | List the script SDK host functions available to authored scripts. Use before writing TypeScript scripts to learn which host APIs exist. | engine | query | active | engine | mcp<br>ai<br>workflow<br>sdk | EngineSdkFunctionsListed |
engine.sdk.function.signature.read | Read Engine SDK Function Signature | Get the metadata and signature for one script SDK host function by namespace.name. Use to resolve one script host function before calling it in an authored script. | engine | query | active | engine | mcp<br>ai<br>workflow<br>sdk | EngineSdkFunctionSignatureRead |
engine.capability.graph.read | Read Engine Capability Graph | Read the canonical engine capability graph for agent self-discovery before complex builds. | engine | query | active | engine | mcp<br>ai<br>workflow<br>sdk | EngineCapabilityGraphRead |
engine.asset_package.list | List Engine Smart Asset Packages | List canonical Smart Asset Package manifests before applying a launch package or package variant. | engine | query | active | engine | mcp<br>ai<br>workflow<br>sdk | EngineSmartAssetPackagesListed |
runtime.proof.run | Run Runtime Proof | Execute one author-declared input against an immutable Project Graph snapshot in an isolated real runtime actor and return typed causal transition evidence with provider and checkpoint lineage. | runtime-qa | command | active | runtime | mcp<br>ai<br>sdk | RuntimeProofRun |
versioning.proof.state_diff | Prove Canonical State Diff | Compare immutable pre-author and final Versioning checkpoints, reconstruct the complete canonical Project Graph transition, and evaluate exact reviewer-authored assertions. | versioning | command | active | versioning | mcp<br>ai<br>sdk | VersioningStateDiffProofRun |
factory.proof.run | Run Factory Proof | Disabled native-AI action: a build-time factory-proof provenance harness, not a runtime owner. Returns a typed unsupported gap if requested by the agent. | factory-qa | command | active | factory-proof | sdk | FactoryProofRun |
renderer.visual_profile.apply | Apply Renderer Visual Profile | Apply a canonical renderer visual profile by mutating the Project Graph world environment through backend authority. | renderer | command | active | renderer | ui<br>mcp<br>ai<br>sdk | RendererVisualProfileApplied |
renderer.visual_qa.run | Run Renderer Visual QA | Retired native-AI composite. The canonical renderer pixel-capture primitive is qa.renderer.viewport.capture; this SDK-surface convenience adds profile/fallback receipt checks over it. | renderer-qa | command | active | qa | sdk | RendererVisualQaRun |
qa.run.start | Run Simulation QA | Execute bounded deterministic simulation QA from an immutable verified Versioning checkpoint to verify the physics simulation converges to its expected numerical value, returning an executable numerical-oracle receipt with an independent repeat and seed-sensitivity control. | qa | command | active | simulation | mcp<br>ai<br>workflow | SimulationQaRun |
qa.renderer.viewport.capture | Prove Runtime Renderer Frame | Render one immutable verified Versioning checkpoint through the real runtime and renderer, independently content-address the PNG bytes, and return exact runtime/browser/media lineage. | qa | command | active | qa | mcp<br>ai | RendererViewportCaptured |
world.observe.scene | Observe Scene Digest | Read a bounded revision-stamped digest of the authored project graph (entity and per-component-type counts, world summary, spatial bounds, named-entity summary, and an optional bounded diff against a prior revision handle). | observation | query | active | ai-platform-observation | mcp<br>ai | WorldObserveScene |
world.observe.frame | Observe Viewport Frame | Capture one editor or runtime viewport frame through the existing qa renderer capture lane where a browser runtime is available, returning a bounded frame descriptor (camera, viewport, renderer, media hash, pixel diagnostics, browser health) or an honest typed unavailable envelope when no browser runtime is present. | observation | query | active | ai-platform-observation | mcp<br>ai | WorldObserveFrame |
world.observe.logs | Observe Runtime Logs | Read a bounded newest-first tail of runtime and script diagnostics for one runtime room. | observation | query | active | ai-platform-observation | mcp<br>ai | WorldObserveLogs |
world.observe.rooms | Observe Active Rooms | Read a bounded roster of active runtime rooms for a game with per-room player and observer counts, status, and lifecycle timestamps. | observation | query | active | ai-platform-observation | mcp<br>ai | WorldObserveRooms |
world.sample.terrain | Sample Terrain Surface | Sample the authored terrain surface height, normal, and slope at up to 64 (x,z) points, reusing the SAME no-drift height math the runtime draws and clamps to. Call BEFORE placing props on sculpted terrain so they rest on the surface instead of a hand-guessed y. | observation | query | active | ai-platform-observation | mcp<br>ai | WorldSampleTerrain |
world.observe.entity_view | Observe Entity View (The Eye) | Look at what you built: frame up to 8 authored entities in a 3/4 fit-bounds (F-key) view and render the CURRENT head so you SEE placeholders, floating props, and muddy paint a graph digest hides. The frame rides back as an image where the render lane is wired, else a typed capture_unavailable names the missing seam. Use after scenery/prop authoring. | observation | query | active | ai-platform-observation | mcp<br>ai | WorldObserveEntityView |
generator.plan.compute | Compute Generator Plan | Run an authored program in the bounded deterministic sandbox and return a validated world-build semantic-operation batch (the plan is the diff) plus a deterministic double-run planHash. Pure and read-only: the VM has no io/clock/Math.random, only a seeded rand(); the plan holds no write handle. | generators | query | active | ai-platform-generators | mcp<br>ai | GeneratorPlanComputed |
generator.plan.apply | Apply Generator Plan | Recompute a plan by hash, lower it through the world-build semantic compiler (the single validator), and land the generated entities as ONE canonical transaction (one history/undo unit). Idempotent by (programHash, paramsHash, seed): a replay is a no-op. Standard approval applies. | generators | command | active | ai-platform-generators | mcp<br>ai | GeneratorPlanApplied<br>ProjectGraphTransactionApplied |
world.author.program | Author World From One Program | Typecheck and compile ONE bounded build.ts against the generated builder SDK, compute its world-build plan, land it through the widened generator apply seam as ONE canonical transaction (one history/undo unit), observe one frame, optionally run a default playtest scenario (possess the start entity, move, interact), and return ONE receipt: plan steps, apply stages with per-owner mutation counts and wiring truth, an inline frame, a graded playtest verdict, source-mapped diagnostics back to build.ts lines, and a terminal outcome. Idempotent by (programHash, paramsHash, seed): a replay is a no-op. dry_run computes without applying. Standard approval applies. | generators | command | active | ai-platform-generators | mcp<br>ai | GeneratorPlanApplied<br>ProjectGraphTransactionApplied |
world.builder.sdk | Fetch Builder SDK Types | Return the builder SDK .d.ts generated from this project's REAL catalog (built-in + project components) and its workspace asset ids: the exact type surface world_author_program typechecks build.ts against. Read-only - one authorized snapshot read plus a pure codegen, writing nothing. Lets an author working outside the editor autocomplete against the vocabulary the server will actually judge, instead of a default-catalog baseline whose asset ids match no real game. | generators | query | active | ai-platform-generators | mcp<br>cli<br>ai | WorldBuilderSdkRead |
world_build.semantic_operations.apply | Apply World Build Semantic Operations | Apply a batch of high-level world-build semantic operations as ONE canonical transaction: compile the operations through the single world-build semantic compiler (the same validator world_build_compile_semantic_operations uses), lower them to Native Agent Runtime operations, and land them via one atomic idempotent applyTransaction (one history/undo unit). Budget-capped and plan-hash deterministic; a replay by idempotency key is a no-op. The WRITE twin of world_build_compile_semantic_operations and the primary document write path. Standard approval applies; conflict and budget overflow surface as typed rejections. | generators | command | active | ai-platform-generators | mcp<br>ai | WorldBuildSemanticOperationsApplied<br>ProjectGraphTransactionApplied |
world_build.semantic_operations.compile | Compile World Build Semantic Operations | Compile high-level world-build semantic operations through the single world-build semantic compiler and return lowered operations, receipts, and diagnostics without writing anything. The dry-run READ twin of world_build.semantic_operations.apply. | generators | query | active | ai-platform-generators | mcp<br>ai | WorldBuildSemanticOperationsCompiled |
world_build.operation_catalog.read | Read World Build Operation Catalog | Return the world-build semantic operation catalog (intent operation ids, titles, lowered targets, required coordinates) that documents what a world-build document can express. | generators | query | active | ai-platform-generators | mcp<br>ai | WorldBuildOperationCatalogRead |
authoring_package.export | Export Authoring Package | Export the live project graph as the canonical authoring-package file tree (gessa.json manifest, worlds/entities documents, GessaScript sources) stamped with the conflict baseline: the graph revision plus per-script IR fingerprints. The read half of the file door - the same export the HTTP route and the gessa-package CLI pull drive. | generators | query | active | authoring-package | mcp<br>ai | ProjectGraphSnapshotRead |
authoring_package.apply | Apply Authoring Package | Local-only authoring-package apply: compile against the live graph, then apply owner-validated steps with per-resource idempotency. Aggregate preflight is not qualified; earlier steps may persist before a later rejection. Unavailable outside the local environment. Use supported per-resource authoring operations there. HTTP, MCP, native AI, and CLI share this boundary. | generators | command | active | authoring-package | mcp<br>ai | WorldBuildSemanticOperationsApplied<br>ProjectGraphTransactionApplied |
project.entity.bulk_create | Bulk Create Entities | Create up to 1,000 entities in one decisive batched call with built-in key-suffix conflict healing (each item resolves independently, one commit boundary per item). The batched multi-entity writer the AI core surface prefers over per-entity creates. | project-graph | command | active | project-graph | mcp<br>ai | ProjectGraphTransactionApplied |
world.playtest.scenario | Playtest Scenario | Boot an isolated proof room for a world, possess an entity, execute a typed action sequence (move/look/jump/interact/press) with per-step tick budgets, and return a revision-stamped outcome (before/after scene digests, per-step applied/failed, diagnostics). Executed proof over a discardable proof room; no durable project mutation. | playtest | query | active | ai-platform-playtest | mcp<br>ai | WorldPlaytestScenario |
Surface Mappings
| Surface | Method | Path | Tool | Action |
|---|---|---|---|---|
| mcp | agentenv_create_run | agentenv.create_run | ||
| mcp | agentenv_create_episode | agentenv.create_episode | ||
| mcp | agentenv_reset_episode | agentenv.reset_episode | ||
| mcp | agentenv_observe | agentenv.observe | ||
| mcp | agentenv_submit_intent | agentenv.submit_intent | ||
| mcp | agentenv_step | agentenv.step | ||
| mcp | agentenv_score | agentenv.score | ||
| mcp | agentenv_terminate | agentenv.terminate | ||
| mcp | agentenv_fetch_replay | agentenv.fetch_replay | ||
| mcp | agentenv_export_trajectory | agentenv.export_trajectory | ||
| mcp | project_get_graph_snapshot | project.graph.snapshot.read | ||
| mcp | project_get_world | project.world.read | ||
| mcp | project_get_prefab | project.prefab.read | ||
| mcp | project_get_ui_panel | project.ui_panel.read | ||
| mcp | project_get_data_store | project.data_store.read | ||
| mcp | project_get_entity | project.entity.read | ||
| mcp | project_search_entities | project.entity.search | ||
| mcp | project_get_script | project.script.read | ||
| http | POST | /api/workspaces | workspace.create | |
| http | POST | /api/workspaces/:workspaceId/games | game.create | |
| http | PATCH | /api/games/:gameId | game.update | |
| http | PUT | /api/games/:gameId/thumbnail | game.update | |
| mcp | project_update_game | game.update | ||
| http | POST | /api/games/:gameId/environments | environment.create | |
| http | POST | /api/games/:gameId/project/transactions | project.transaction.apply | |
| http | POST | /api/games/:gameId/project/assets | project.asset.create | |
| http | PATCH | /api/games/:gameId/project/assets/:assetId | project.asset.update | |
| http | DELETE | /api/games/:gameId/project/assets/:assetId | project.asset.delete | |
| http | POST | /api/games/:gameId/project/assets/:assetId/duplicate | project.asset.duplicate | |
| mcp | asset_duplicate | project.asset.duplicate | ||
| http | POST | /api/games/:gameId/project/assets/:assetId/model-document | project.asset.model_document.save | |
| mcp | model_save | project.asset.model_document.save | ||
| http | GET | /api/games/:gameId/asset-pipeline/:assetId/model-material-slots | asset_pipeline.model_material_slots.inspect | |
| mcp | project_inspect_model_material_slots | asset_pipeline.model_material_slots.inspect | ||
| http | POST | /api/games/:gameId/asset-pipeline/:assetId/promote-material-slot | asset_pipeline.model_material_slot.promote | |
| mcp | project_promote_model_material_slot | asset_pipeline.model_material_slot.promote | ||
| http | POST | /api/games/:gameId/asset-pipeline/:assetId/promote-material-slots | asset_pipeline.model_material_slots.promote | |
| mcp | project_promote_model_material_slots | asset_pipeline.model_material_slots.promote | ||
| http | POST | /api/games/:gameId/asset-pipeline/model-material-slot-overrides | asset_pipeline.model_material_slot.override | |
| mcp | project_override_model_material_slot | asset_pipeline.model_material_slot.override | ||
| http | POST | /api/games/:gameId/project/worlds | project.world.create | |
| http | PATCH | /api/games/:gameId/project/worlds/:idOrKey | project.world.update | |
| http | DELETE | /api/games/:gameId/project/worlds/:idOrKey | project.world.delete | |
| http | POST | /api/games/:gameId/project/components | project.component.create | |
| http | PATCH | /api/games/:gameId/project/components/:idOrKey | project.component.update | |
| http | DELETE | /api/games/:gameId/project/components/:idOrKey | project.component.delete | |
| http | POST | /api/games/:gameId/project/prefabs | project.prefab.create | |
| http | PATCH | /api/games/:gameId/project/prefabs/:idOrKey | project.prefab.update | |
| http | DELETE | /api/games/:gameId/project/prefabs/:idOrKey | project.prefab.delete | |
| http | POST | /api/games/:gameId/project/entities | project.entity.create | |
| http | PATCH | /api/games/:gameId/project/entities/:idOrKey | project.entity.update | |
| http | DELETE | /api/games/:gameId/project/entities/:idOrKey | project.entity.delete | |
| http | POST | /api/games/:gameId/project/scripts | project.script.create | |
| http | PATCH | /api/games/:gameId/project/scripts/:idOrKey | project.script.update | |
| http | DELETE | /api/games/:gameId/project/scripts/:idOrKey | project.script.delete | |
| http | POST | /api/games/:gameId/project/ui-panels | project.ui_panel.create | |
| http | PATCH | /api/games/:gameId/project/ui-panels/:idOrKey | project.ui_panel.update | |
| http | DELETE | /api/games/:gameId/project/ui-panels/:idOrKey | project.ui_panel.delete | |
| http | PUT | /api/games/:gameId/project/entities/:idOrKey/components/:componentKey | project.entity.component.set | |
| http | PATCH | /api/games/:gameId/project/entities/:idOrKey/components/:componentKey | project.entity.component.set | |
| http | DELETE | /api/games/:gameId/project/entities/:idOrKey/components/:componentKey | project.entity.component.delete | |
| http | POST | /api/generation/quote | generation.job.quote | |
| http | POST | /api/generation/jobs | generation.job.create | |
| http | POST | /api/generation/jobs/:jobId/cancel | generation.job.cancel | |
| http | POST | /api/generation/worker/claim | generation.job.claim | |
| http | POST | /api/generation/worker/jobs/:jobId/heartbeat | generation.job.heartbeat | |
| http | POST | /api/generation/worker/jobs/:jobId/progress | generation.job.progress | |
| http | POST | /api/generation/worker/jobs/:jobId/complete | generation.job.complete | |
| http | POST | /api/generation/worker/jobs/:jobId/fail | generation.job.fail | |
| http | POST | /api/games/:gameId/project/scripts/:idOrKey/patches/apply | project.script.patch.apply | |
| http | POST | /api/games/:gameId/project/assets/:assetId/material/patches/apply | project.material.patch.apply | |
| http | POST | /api/games/:gameId/project/assets/:assetId/terrain/patches/apply | terrain.patch.apply | |
| mcp | project_apply_terrain_semantic_patch | terrain.patch.apply | ||
| http | POST | /api/games/:gameId/project/assets/:assetId/instance-set/patches/apply | instance_set.patch.apply | |
| mcp | project_apply_instance_set_patch | instance_set.patch.apply | ||
| sdk | project.instanceSet.applySemanticPatch | instance_set.patch.apply | ||
| mcp | project_apply_transaction | project.transaction.apply | ||
| sdk | project.terrain.applySemanticPatch | terrain.patch.apply | ||
| http | POST | /api/games/:gameId/project/assets/:assetId/terrain/artifacts/build | terrain.artifacts.build | |
| sdk | project.terrain.buildArtifacts | terrain.artifacts.build | ||
| http | POST | /api/games/:gameId/publish/dev | publish.dev | |
| http | POST | /api/games/:gameId/spatial-assets/imports | spatial.asset.import | |
| http | POST | /api/games/:gameId/spatial-assets/import-jobs/:jobId/run | spatial.asset.import | |
| http | POST | /api/games/:gameId/spatial-assets/:assetId/proxy-jobs | spatial.capture.proxy.generate | |
| http | POST | /api/games/:gameId/spatial-assets/proxy-jobs/:jobId/run | spatial.capture.proxy.generate | |
| http | POST | /api/games/:gameId/spatial-assets/:assetId/annotations | spatial.capture.annotate | |
| http | POST | /api/games/:gameId/spatial-assets/:assetId/build-world | world.build.from_spatial_asset | |
| http | POST | /api/games/:gameId/project/worlds/:idOrKey/visual-profile/apply | renderer.visual_profile.apply | |
| sdk | renderer.visualProfiles.apply | renderer.visual_profile.apply | ||
| mcp | project_create_game | game.create | ||
| http | PUT | /api/games/:gameId/commerce/offers/:offerKey | commerce.offer.set | |
| mcp | commerce_set_offer | commerce.offer.set | ||
| ai | set_commerce_offer | commerce.offer.set | ||
| sdk | Commerce.setOffer | commerce.offer.set | ||
| http | GET | /api/games/:gameId/commerce/catalog | commerce.offer.list | |
| mcp | commerce_list_offers | commerce.offer.list | ||
| ai | list_commerce_offers | commerce.offer.list | ||
| sdk | Commerce.listOffers | commerce.offer.list | ||
| http | PATCH | /api/games/:gameId/multiplayer-default | game.multiplayer_blueprint.set | |
| mcp | project_set_multiplayer_blueprint | game.multiplayer_blueprint.set | ||
| ai | set_game_multiplayer_blueprint | game.multiplayer_blueprint.set | ||
| sdk | Project.setMultiplayerBlueprint | game.multiplayer_blueprint.set | ||
| mcp | workspace_asset_link | workspace.asset.link | ||
| http | POST | /api/workspaces/:workspaceId/assets/:assetIdOrKey/link-game | workspace.asset.link | |
| mcp | project_create_asset | project.asset.create | ||
| mcp | project_create_world | project.world.create | ||
| mcp | project_create_entity | project.entity.create | ||
| mcp | project_create_script | project.script.create | ||
| mcp | project_update_script | project.script.update | ||
| mcp | project_apply_script_semantic_patch | project.script.patch.apply | ||
| ai | apply_script_semantic_patch | project.script.patch.apply | ||
| sdk | project.scripts.applySemanticPatch | project.script.patch.apply | ||
| mcp | project_apply_material_semantic_patch | project.material.patch.apply | ||
| ai | apply_material_semantic_patch | project.material.patch.apply | ||
| sdk | project.materials.applySemanticPatch | project.material.patch.apply | ||
| mcp | project_apply_smart_asset_package | blueprint.package.apply | ||
| ai | apply_smart_asset_package | blueprint.package.apply | ||
| sdk | Project.applySmartAssetPackage | blueprint.package.apply | ||
| http | POST | /api/games/:gameId/workflows/:idOrKey/runs | workflow.run.start | |
| mcp | project_start_workflow_run | workflow.run.start | ||
| mcp | project_create_ui_panel | project.ui_panel.create | ||
| mcp | project_create_data_store | project.data_store.create | ||
| mcp | spatial_asset_queue_import | spatial.asset.import | ||
| mcp | spatial_capture_queue_proxy_job | spatial.capture.proxy.generate | ||
| mcp | spatial_capture_record_annotations | spatial.capture.annotate | ||
| mcp | world_build_from_spatial_asset | world.build.from_spatial_asset | ||
| ai | build_world_from_spatial_asset | world.build.from_spatial_asset | ||
| sdk | world.build.fromSpatialAsset | world.build.from_spatial_asset | ||
| sdk | renderer.visualQa.run | renderer.visual_qa.run | ||
| mcp | qa_capture_renderer_viewport | qa.renderer.viewport.capture | ||
| mcp | blender_model_create | blender.model.create | ||
| mcp | generation_create_job | generation.job.create | ||
| mcp | generation_list_capabilities | generation.capability.list | ||
| mcp | generation_get_job | generation.job.read | ||
| mcp | generation_list_jobs | generation.job.list | ||
| mcp | knowledge_search | knowledge.search | ||
| mcp | knowledge_load | knowledge.load | ||
| mcp | engine_list_component_types | engine.component.types.list | ||
| mcp | engine_get_component_schema | engine.component.schema.read | ||
| mcp | engine_list_sdk_functions | engine.sdk.functions.list | ||
| mcp | engine_get_sdk_function_signature | engine.sdk.function.signature.read | ||
| mcp | engine_get_capability_graph | engine.capability.graph.read | ||
| mcp | engine_list_smart_asset_packages | engine.asset_package.list | ||
| mcp | project_update_world | project.world.update | ||
| mcp | project_delete_world | project.world.delete | ||
| mcp | project_update_entity | project.entity.update | ||
| mcp | project_delete_entity | project.entity.delete | ||
| mcp | project_add_component | project.entity.component.set | ||
| mcp | project_remove_component | project.entity.component.delete | ||
| mcp | project_update_asset | project.asset.update | ||
| mcp | project_delete_asset | project.asset.delete | ||
| mcp | project_create_prefab | project.prefab.create | ||
| mcp | project_update_prefab | project.prefab.update | ||
| mcp | project_delete_prefab | project.prefab.delete | ||
| mcp | project_delete_script | project.script.delete | ||
| mcp | project_update_ui_panel | project.ui_panel.update | ||
| mcp | project_delete_ui_panel | project.ui_panel.delete | ||
| mcp | project_update_data_store | project.data_store.update | ||
| mcp | project_delete_data_store | project.data_store.delete | ||
| mcp | workspace_create | workspace.create | ||
| mcp | project_create_environment | environment.create | ||
| mcp | runtime_proof_run | runtime.proof.run | ||
| mcp | versioning_state_diff_proof_run | versioning.proof.state_diff | ||
| mcp | simulation_run | qa.run.start | ||
| mcp | world_apply_visual_profile | renderer.visual_profile.apply | ||
| mcp | generation_quote_job | generation.job.quote | ||
| mcp | generation_cancel_job | generation.job.cancel | ||
| mcp | terrain_build_artifacts | terrain.artifacts.build | ||
| mcp | runtime_create_deployment | publish.dev | ||
| mcp | world_observe_scene | world.observe.scene | ||
| mcp | world_observe_frame | world.observe.frame | ||
| mcp | world_observe_logs | world.observe.logs | ||
| mcp | world_observe_rooms | world.observe.rooms | ||
| mcp | world_sample_terrain | world.sample.terrain | ||
| mcp | world_observe_entity_view | world.observe.entity_view | ||
| mcp | generator_plan_compute | generator.plan.compute | ||
| mcp | generator_plan_apply | generator.plan.apply | ||
| mcp | world_playtest_scenario | world.playtest.scenario | ||
| mcp | world_author_program | world.author.program | ||
| mcp | world_builder_sdk | world.builder.sdk | ||
| mcp | world_build_apply_semantic_operations | world_build.semantic_operations.apply | ||
| mcp | world_build_compile_semantic_operations | world_build.semantic_operations.compile | ||
| mcp | world_build_get_operation_catalog | world_build.operation_catalog.read | ||
| http | GET | /api/games/:gameId/authoring-package/export | authoring_package.export | |
| http | POST | /api/games/:gameId/authoring-package/apply | authoring_package.apply | |
| mcp | world_build_export_authoring_package | authoring_package.export | ||
| mcp | world_build_apply_authoring_package | authoring_package.apply | ||
| mcp | project_bulk_create_entities | project.entity.bulk_create |
Action Details
One section per action, keyed by action id, so a reference to an action id resolves to its own anchor.
agentenv.create_episode
Execute the canonical AgentEnv CreateEpisode protocol exchange without bypassing lifecycle, identity, version, or idempotency authority.
| Field | Value |
|---|---|
| Title | Create Episode Agent Environment |
| Domain | agentenv |
| Kind | command |
| Lifecycle | active |
| Owner | agentenv |
| Exposure | mcp, sdk |
| Audit events | AgentEnvCreateEpisode |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | agentenv_create_episode |
agentenv.create_run
Execute the canonical AgentEnv CreateRun protocol exchange without bypassing lifecycle, identity, version, or idempotency authority.
| Field | Value |
|---|---|
| Title | Create Run Agent Environment |
| Domain | agentenv |
| Kind | command |
| Lifecycle | active |
| Owner | agentenv |
| Exposure | mcp, sdk |
| Audit events | AgentEnvCreateRun |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | agentenv_create_run |
agentenv.export_trajectory
Execute the canonical AgentEnv ExportTrajectory protocol exchange without bypassing lifecycle, identity, version, or idempotency authority.
| Field | Value |
|---|---|
| Title | Export Trajectory Agent Environment |
| Domain | agentenv |
| Kind | command |
| Lifecycle | active |
| Owner | agentenv |
| Exposure | mcp, sdk |
| Audit events | AgentEnvExportTrajectory |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | agentenv_export_trajectory |
agentenv.fetch_replay
Execute the canonical AgentEnv FetchReplay protocol exchange without bypassing lifecycle, identity, version, or idempotency authority.
| Field | Value |
|---|---|
| Title | Fetch Replay Agent Environment |
| Domain | agentenv |
| Kind | query |
| Lifecycle | active |
| Owner | agentenv |
| Exposure | mcp, sdk |
| Audit events | AgentEnvFetchReplay |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | agentenv_fetch_replay |
agentenv.observe
Execute the canonical AgentEnv Observe protocol exchange without bypassing lifecycle, identity, version, or idempotency authority.
| Field | Value |
|---|---|
| Title | Observe Agent Environment |
| Domain | agentenv |
| Kind | query |
| Lifecycle | active |
| Owner | agentenv |
| Exposure | mcp, sdk |
| Audit events | AgentEnvObserve |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | agentenv_observe |
agentenv.reset_episode
Execute the canonical AgentEnv ResetEpisode protocol exchange without bypassing lifecycle, identity, version, or idempotency authority.
| Field | Value |
|---|---|
| Title | Reset Episode Agent Environment |
| Domain | agentenv |
| Kind | command |
| Lifecycle | active |
| Owner | agentenv |
| Exposure | mcp, sdk |
| Audit events | AgentEnvResetEpisode |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | agentenv_reset_episode |
agentenv.score
Execute the canonical AgentEnv Score protocol exchange without bypassing lifecycle, identity, version, or idempotency authority.
| Field | Value |
|---|---|
| Title | Score Agent Environment |
| Domain | agentenv |
| Kind | query |
| Lifecycle | active |
| Owner | agentenv |
| Exposure | mcp, sdk |
| Audit events | AgentEnvScore |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | agentenv_score |
agentenv.step
Execute the canonical AgentEnv Step protocol exchange without bypassing lifecycle, identity, version, or idempotency authority.
| Field | Value |
|---|---|
| Title | Step Agent Environment |
| Domain | agentenv |
| Kind | command |
| Lifecycle | active |
| Owner | agentenv |
| Exposure | mcp, sdk |
| Audit events | AgentEnvStep |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | agentenv_step |
agentenv.submit_intent
Execute the canonical AgentEnv SubmitIntent protocol exchange without bypassing lifecycle, identity, version, or idempotency authority.
| Field | Value |
|---|---|
| Title | Submit Intent Agent Environment |
| Domain | agentenv |
| Kind | command |
| Lifecycle | active |
| Owner | agentenv |
| Exposure | mcp, sdk |
| Audit events | AgentEnvSubmitIntent |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | agentenv_submit_intent |
agentenv.terminate
Execute the canonical AgentEnv Terminate protocol exchange without bypassing lifecycle, identity, version, or idempotency authority.
| Field | Value |
|---|---|
| Title | Terminate Agent Environment |
| Domain | agentenv |
| Kind | command |
| Lifecycle | active |
| Owner | agentenv |
| Exposure | mcp, sdk |
| Audit events | AgentEnvTerminate |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | agentenv_terminate |
asset_pipeline.model_material_slot.override
Set or clear one renderable model material-slot override through the Asset Pipeline owner.
| Field | Value |
|---|---|
| Title | Override Model Material Slot |
| Domain | asset-pipeline |
| Kind | command |
| Lifecycle | active |
| Owner | asset-pipeline |
| Exposure | ui, mcp, ai |
| Audit events | AssetPipelineModelMaterialSlotOverridden |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/asset-pipeline/model-material-slot-overrides | |
| mcp | project_override_model_material_slot |
asset_pipeline.model_material_slot.promote
Promote one conditioned model material slot into a durable ProjectAsset through the Asset Pipeline owner.
| Field | Value |
|---|---|
| Title | Promote Model Material Slot |
| Domain | asset-pipeline |
| Kind | command |
| Lifecycle | active |
| Owner | asset-pipeline |
| Exposure | ui, mcp, ai |
| Audit events | AssetPipelineModelMaterialSlotPromoted |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/asset-pipeline/:assetId/promote-material-slot | |
| mcp | project_promote_model_material_slot |
asset_pipeline.model_material_slots.inspect
Inspect the canonical conditioned material-slot projection for one model ProjectAsset UUID.
| Field | Value |
|---|---|
| Title | Inspect Model Material Slots |
| Domain | asset-pipeline |
| Kind | query |
| Lifecycle | active |
| Owner | asset-pipeline |
| Exposure | ui, mcp, ai |
| Audit events | AssetPipelineModelMaterialSlotsInspected |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | GET | /api/games/:gameId/asset-pipeline/:assetId/model-material-slots | |
| mcp | project_inspect_model_material_slots |
asset_pipeline.model_material_slots.promote
Promote all, every, or a selected bulk batch of conditioned model material slots into durable material assets through the Asset Pipeline owner.
| Field | Value |
|---|---|
| Title | Promote Model Material Slots |
| Domain | asset-pipeline |
| Kind | command |
| Lifecycle | active |
| Owner | asset-pipeline |
| Exposure | ui, mcp, ai |
| Audit events | AssetPipelineModelMaterialSlotsPromoted |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/asset-pipeline/:assetId/promote-material-slots | |
| mcp | project_promote_model_material_slots |
authoring_package.apply
Local-only authoring-package apply: compile against the live graph, then apply owner-validated steps with per-resource idempotency. Aggregate preflight is not qualified; earlier steps may persist before a later rejection. Unavailable outside the local environment. Use supported per-resource authoring operations there. HTTP, MCP, native AI, and CLI share this boundary.
| Field | Value |
|---|---|
| Title | Apply Authoring Package |
| Domain | generators |
| Kind | command |
| Lifecycle | active |
| Owner | authoring-package |
| Exposure | mcp, ai |
| Audit events | WorldBuildSemanticOperationsApplied, ProjectGraphTransactionApplied |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/authoring-package/apply | |
| mcp | world_build_apply_authoring_package |
authoring_package.export
Export the live project graph as the canonical authoring-package file tree (gessa.json manifest, worlds/entities documents, GessaScript sources) stamped with the conflict baseline: the graph revision plus per-script IR fingerprints. The read half of the file door - the same export the HTTP route and the gessa-package CLI pull drive.
| Field | Value |
|---|---|
| Title | Export Authoring Package |
| Domain | generators |
| Kind | query |
| Lifecycle | active |
| Owner | authoring-package |
| Exposure | mcp, ai |
| Audit events | ProjectGraphSnapshotRead |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | GET | /api/games/:gameId/authoring-package/export | |
| mcp | world_build_export_authoring_package |
blender.model.create
Author a detailed Blender model with the dedicated Astra model, render and import it through the durable generation service.
| Field | Value |
|---|---|
| Title | Create Blender Model |
| Domain | generation |
| Kind | job_start |
| Lifecycle | active |
| Owner | generation |
| Exposure | ai |
| Audit events | BlenderModelRequested |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | blender_model_create |
blueprint.package.apply
Apply a canonical Smart Asset Package manifest through backend package service paths and Project Graph transactions.
| Field | Value |
|---|---|
| Title | Apply Smart Asset Package |
| Domain | blueprint |
| Kind | command |
| Lifecycle | active |
| Owner | blueprints |
| Exposure | ui, mcp, ai, workflow, sdk |
| Audit events | SmartAssetPackageApplied, ProjectGraphTransactionApplied |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | project_apply_smart_asset_package | ||
| ai | apply_smart_asset_package | ||
| sdk | Project.applySmartAssetPackage |
blueprint.template.apply
Compatibility alias for applying a creation template; canonical package application is blueprint.package.apply.
| Field | Value |
|---|---|
| Title | Apply Creation Template |
| Domain | blueprint |
| Kind | command |
| Lifecycle | planned |
| Owner | blueprints |
| Exposure | ui, sdk |
| Audit events | CreationTemplateApplied |
Surface mappings:
No surface mappings; reachable through the exposure surfaces above.
commerce.offer.list
List every offer defined on a game, drafts and archived included, with keys, prices, kinds and statuses. Read this before naming an offer key in a script so the purchase prompt points at an offer that exists and is active.
| Field | Value |
|---|---|
| Title | List Commerce Offers |
| Domain | control-plane |
| Kind | query |
| Lifecycle | active |
| Owner | commerce |
| Exposure | ui, mcp, ai, sdk |
| Audit events | ListCommerceOffers |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | GET | /api/games/:gameId/commerce/catalog | |
| mcp | commerce_list_offers | ||
| ai | list_commerce_offers | ||
| sdk | Commerce.listOffers |
commerce.offer.set
Create or update one purchasable offer on a game: its title, price, kind (durable or consumable), status (draft, active, archived) and the entitlement or item grants it delivers. Offers are what a script's Commerce.promptPurchase names, so the offer must exist before a purchase prompt can open.
| Field | Value |
|---|---|
| Title | Set Commerce Offer |
| Domain | control-plane |
| Kind | command |
| Lifecycle | active |
| Owner | commerce |
| Exposure | ui, mcp, ai, sdk |
| Audit events | UpsertCommerceOffer |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | PUT | /api/games/:gameId/commerce/offers/:offerKey | |
| mcp | commerce_set_offer | ||
| ai | set_commerce_offer | ||
| sdk | Commerce.setOffer |
engine.asset_package.list
List canonical Smart Asset Package manifests before applying a launch package or package variant.
| Field | Value |
|---|---|
| Title | List Engine Smart Asset Packages |
| Domain | engine |
| Kind | query |
| Lifecycle | active |
| Owner | engine |
| Exposure | mcp, ai, workflow, sdk |
| Audit events | EngineSmartAssetPackagesListed |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | engine_list_smart_asset_packages |
engine.capability.graph.read
Read the canonical engine capability graph for agent self-discovery before complex builds.
| Field | Value |
|---|---|
| Title | Read Engine Capability Graph |
| Domain | engine |
| Kind | query |
| Lifecycle | active |
| Owner | engine |
| Exposure | mcp, ai, workflow, sdk |
| Audit events | EngineCapabilityGraphRead |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | engine_get_capability_graph |
engine.component.schema.read
Get the exact schema, field contracts, canonical draft, and reference requirements for one built-in ECS component type (for example TransformComponent). Call this before authoring a component value so the value carries the correct type discriminator and required fields.
| Field | Value |
|---|---|
| Title | Read Engine Component Schema |
| Domain | engine |
| Kind | query |
| Lifecycle | active |
| Owner | engine |
| Exposure | mcp, ai, workflow, sdk |
| Audit events | EngineComponentSchemaRead |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | engine_get_component_schema |
engine.component.types.list
List built-in ECS component types with their canonical drafts, add modes, reference admission contracts, and field contracts. Use before authoring entity components to learn which component types exist and their exact shapes.
| Field | Value |
|---|---|
| Title | List Engine Component Types |
| Domain | engine |
| Kind | query |
| Lifecycle | active |
| Owner | engine |
| Exposure | mcp, ai, workflow, sdk |
| Audit events | EngineComponentTypesListed |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | engine_list_component_types |
engine.sdk.function.signature.read
Get the metadata and signature for one script SDK host function by namespace.name. Use to resolve one script host function before calling it in an authored script.
| Field | Value |
|---|---|
| Title | Read Engine SDK Function Signature |
| Domain | engine |
| Kind | query |
| Lifecycle | active |
| Owner | engine |
| Exposure | mcp, ai, workflow, sdk |
| Audit events | EngineSdkFunctionSignatureRead |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | engine_get_sdk_function_signature |
engine.sdk.functions.list
List the script SDK host functions available to authored scripts. Use before writing TypeScript scripts to learn which host APIs exist.
| Field | Value |
|---|---|
| Title | List Engine Script SDK Functions |
| Domain | engine |
| Kind | query |
| Lifecycle | active |
| Owner | engine |
| Exposure | mcp, ai, workflow, sdk |
| Audit events | EngineSdkFunctionsListed |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | engine_list_sdk_functions |
environment.create
Create a game environment through the control-plane service.
| Field | Value |
|---|---|
| Title | Create Environment |
| Domain | control-plane |
| Kind | command |
| Lifecycle | active |
| Owner | control-plane |
| Exposure | ui, mcp, ai, sdk |
| Audit events | CreateEnvironment |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/environments | |
| mcp | project_create_environment |
factory.proof.run
Disabled native-AI action: a build-time factory-proof provenance harness, not a runtime owner. Returns a typed unsupported gap if requested by the agent.
| Field | Value |
|---|---|
| Title | Run Factory Proof |
| Domain | factory-qa |
| Kind | command |
| Lifecycle | active |
| Owner | factory-proof |
| Exposure | sdk |
| Audit events | FactoryProofRun |
Surface mappings:
No surface mappings; reachable through the exposure surfaces above.
game.create
Create a game/project row and apply the caller's declared canonical template intent.
| Field | Value |
|---|---|
| Title | Create Project |
| Domain | control-plane |
| Kind | command |
| Lifecycle | active |
| Owner | control-plane |
| Exposure | ui, mcp, ai |
| Audit events | CreateGame |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/workspaces/:workspaceId/games | |
| mcp | project_create_game |
game.multiplayer_blueprint.set
Set the game's default multiplayer blueprint (rooms, queues, teams, seats, placement, lifecycle, and netcode runtime budgets). Configures matchmaking and netcode parameters a script cannot set.
| Field | Value |
|---|---|
| Title | Set Multiplayer Blueprint |
| Domain | control-plane |
| Kind | command |
| Lifecycle | active |
| Owner | control-plane |
| Exposure | ui, mcp, ai, sdk |
| Audit events | SetGameMultiplayerDefault |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | PATCH | /api/games/:gameId/multiplayer-default | |
| mcp | project_set_multiplayer_blueprint | ||
| ai | set_game_multiplayer_blueprint | ||
| sdk | Project.setMultiplayerBlueprint |
game.update
Update project control-plane fields such as title and thumbnail.
| Field | Value |
|---|---|
| Title | Update Project |
| Domain | control-plane |
| Kind | command |
| Lifecycle | active |
| Owner | control-plane |
| Exposure | ui, sdk, mcp, ai |
| Audit events | UpdateGame, SetGameThumbnail |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | PATCH | /api/games/:gameId | |
| http | PUT | /api/games/:gameId/thumbnail | |
| mcp | project_update_game |
generation.capability.list
List generation offerings visible to the requester through the canonical generation owner.
| Field | Value |
|---|---|
| Title | List Generation Capabilities |
| Domain | generation |
| Kind | query |
| Lifecycle | active |
| Owner | generation |
| Exposure | ui, mcp, ai, workflow, sdk |
| Audit events | GenerationCapabilitiesListed |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | generation_list_capabilities |
generation.job.cancel
Cancel an unclaimed generation job through its owner, or explicitly cancel saved placement with scope placement while rendering and incurred charges continue. Inspect the returned placement status for completion races.
| Field | Value |
|---|---|
| Title | Cancel Generation Job |
| Domain | generation |
| Kind | command |
| Lifecycle | active |
| Owner | generation |
| Exposure | ui, mcp, ai, workflow, sdk |
| Audit events | GenerationJobCancel |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/generation/jobs/:jobId/cancel | |
| mcp | generation_cancel_job |
generation.job.claim
Claim the next queued generation job for a worker lease.
| Field | Value |
|---|---|
| Title | Claim Generation Job |
| Domain | generation |
| Kind | job_start |
| Lifecycle | active |
| Owner | generation |
| Exposure | cli, admin |
| Audit events | GenerationJobClaim |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/generation/worker/claim |
generation.job.complete
Complete and finalize a generation job.
| Field | Value |
|---|---|
| Title | Complete Generation Job |
| Domain | generation |
| Kind | command |
| Lifecycle | active |
| Owner | generation |
| Exposure | cli, admin |
| Audit events | GenerationJobComplete |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/generation/worker/jobs/:jobId/complete |
generation.job.create
Create a durable generation job for an approved capability.
| Field | Value |
|---|---|
| Title | Create Generation Job |
| Domain | generation |
| Kind | job_start |
| Lifecycle | active |
| Owner | generation |
| Exposure | ui, mcp, ai, workflow, sdk |
| Audit events | GenerationJobCreated, GenerationJobQueued |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/generation/jobs | |
| mcp | generation_create_job |
generation.job.fail
Fail or retry a generation job through worker-owned state transitions.
| Field | Value |
|---|---|
| Title | Fail Generation Job |
| Domain | generation |
| Kind | command |
| Lifecycle | active |
| Owner | generation |
| Exposure | cli, admin |
| Audit events | GenerationJobFail |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/generation/worker/jobs/:jobId/fail |
generation.job.heartbeat
Extend a generation job worker lease.
| Field | Value |
|---|---|
| Title | Heartbeat Generation Job |
| Domain | generation |
| Kind | command |
| Lifecycle | active |
| Owner | generation |
| Exposure | cli, admin |
| Audit events | GenerationJobHeartbeat |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/generation/worker/jobs/:jobId/heartbeat |
generation.job.list
List durable generation jobs visible to the requester through the canonical generation owner.
| Field | Value |
|---|---|
| Title | List Generation Jobs |
| Domain | generation |
| Kind | query |
| Lifecycle | active |
| Owner | generation |
| Exposure | ui, mcp, ai, workflow, sdk |
| Audit events | GenerationJobsListed |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | generation_list_jobs |
generation.job.progress
Record worker-owned generation job progress.
| Field | Value |
|---|---|
| Title | Progress Generation Job |
| Domain | generation |
| Kind | command |
| Lifecycle | active |
| Owner | generation |
| Exposure | cli, admin |
| Audit events | GenerationJobProgress |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/generation/worker/jobs/:jobId/progress |
generation.job.quote
Quote a generation request against capability, policy, and budget controls.
| Field | Value |
|---|---|
| Title | Quote Generation Job |
| Domain | generation |
| Kind | command |
| Lifecycle | active |
| Owner | generation |
| Exposure | ui, mcp, ai, workflow, sdk |
| Audit events | GenerationJobQuoted |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/generation/quote | |
| mcp | generation_quote_job |
generation.job.read
Read one durable generation job through the canonical generation owner.
| Field | Value |
|---|---|
| Title | Read Generation Job |
| Domain | generation |
| Kind | query |
| Lifecycle | active |
| Owner | generation |
| Exposure | ui, mcp, ai, workflow, sdk |
| Audit events | GenerationJobRead |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | generation_get_job |
generator.plan.apply
Recompute a plan by hash, lower it through the world-build semantic compiler (the single validator), and land the generated entities as ONE canonical transaction (one history/undo unit). Idempotent by (programHash, paramsHash, seed): a replay is a no-op. Standard approval applies.
| Field | Value |
|---|---|
| Title | Apply Generator Plan |
| Domain | generators |
| Kind | command |
| Lifecycle | active |
| Owner | ai-platform-generators |
| Exposure | mcp, ai |
| Audit events | GeneratorPlanApplied, ProjectGraphTransactionApplied |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | generator_plan_apply |
generator.plan.compute
Run an authored program in the bounded deterministic sandbox and return a validated world-build semantic-operation batch (the plan is the diff) plus a deterministic double-run planHash. Pure and read-only: the VM has no io/clock/Math.random, only a seeded rand(); the plan holds no write handle.
| Field | Value |
|---|---|
| Title | Compute Generator Plan |
| Domain | generators |
| Kind | query |
| Lifecycle | active |
| Owner | ai-platform-generators |
| Exposure | mcp, ai |
| Audit events | GeneratorPlanComputed |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | generator_plan_compute |
instance_set.patch.apply
Apply checked bulk InstanceSet aggregate operations (configure/populate/fill/clearRegion/setCells/clearCells/scatterInstances/paintKind/removeInstances) to a versioned instanceSet resource facet through the single instance-set patch chokepoint (compileInstanceSetPatch + applyInstanceSetPatch), advancing the facet source version so render/collider projections regenerate. Lowers into ProjectGraphService.applyInstanceSetPatch over the asset instanceSet facet via the existing updateAsset path (no parallel write path); author only through the typed ops, never raw packed cell/instance arrays.
| Field | Value |
|---|---|
| Title | Apply Instance Set Semantic Patch |
| Domain | instance-set |
| Kind | command |
| Lifecycle | active |
| Owner | instance-set |
| Exposure | ui, mcp, ai, workflow, sdk |
| Audit events | InstanceSetPatchApplied |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/project/assets/:assetId/instance-set/patches/apply | |
| mcp | project_apply_instance_set_patch | ||
| sdk | project.instanceSet.applySemanticPatch |
knowledge.load
Load one knowledge entry by id with full provenance (source path, sha256, corpus, trust). Optional playbook/distillation corpora refuse to load under the no-skill switch.
| Field | Value |
|---|---|
| Title | Load Knowledge Entry |
| Domain | knowledge |
| Kind | query |
| Lifecycle | active |
| Owner | knowledge |
| Exposure | mcp, ai, workflow, sdk |
| Audit events | KnowledgeLoaded |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | knowledge_load |
knowledge.search
Search the pull-only knowledge library (generated engine reference plus optional curated playbooks) and return pointers with distilled summaries, never bulk content.
| Field | Value |
|---|---|
| Title | Search Knowledge Library |
| Domain | knowledge |
| Kind | query |
| Lifecycle | active |
| Owner | knowledge |
| Exposure | mcp, ai, workflow, sdk |
| Audit events | KnowledgeSearched |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | knowledge_search |
project.asset.create
Create a ProjectAsset through the UUID-only Project Graph client contract; internal keys, storage, pipeline, provenance, and frozen graph fields are never caller-owned.
| Field | Value |
|---|---|
| Title | Create Project Asset |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | CreateProjectAsset |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/project/assets | |
| mcp | project_create_asset |
project.asset.delete
Delete a ProjectAsset through the UUID-only Project Graph client contract; internal keys, storage, pipeline, provenance, and frozen graph fields are never caller-owned.
| Field | Value |
|---|---|
| Title | Delete Project Asset |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | DeleteProjectAsset |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | DELETE | /api/games/:gameId/project/assets/:assetId | |
| mcp | project_delete_asset |
project.asset.duplicate
Duplicate a ProjectAsset by canonical UUID through the Project Graph owner so storage-owned fields are copied internally and never reconstructed by a caller.
| Field | Value |
|---|---|
| Title | Duplicate Project Asset |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai |
| Audit events | CreateProjectAsset |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/project/assets/:assetId/duplicate | |
| mcp | asset_duplicate |
project.asset.model_document.save
Validate and persist the authored ModelAuthoringDocument through the dedicated Project Graph merge boundary without opening the generic client asset update to server-owned rendering fields.
| Field | Value |
|---|---|
| Title | Save Project Model Document |
| Domain | model-authoring |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai |
| Audit events | UpdateProjectAsset |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/project/assets/:assetId/model-document | |
| mcp | model_save |
project.asset.update
Update a ProjectAsset through the UUID-only Project Graph client contract; internal keys, storage, pipeline, provenance, and frozen graph fields are never caller-owned.
| Field | Value |
|---|---|
| Title | Update Project Asset |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | UpdateProjectAsset |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | PATCH | /api/games/:gameId/project/assets/:assetId | |
| mcp | project_update_asset |
project.component.create
Create a Project Graph component definition record through backend service paths. Project-defined components are production-grade backend-validated project-local data contracts for advanced/import-only data; they are not canonical engine atomics.
| Field | Value |
|---|---|
| Title | Create Project Component |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, sdk |
| Audit events | CreateProjectComponent |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/project/components |
project.component.delete
Delete a Project Graph component definition record through backend service paths. Project-defined components are production-grade backend-validated project-local data contracts for advanced/import-only data; they are not canonical engine atomics.
| Field | Value |
|---|---|
| Title | Delete Project Component |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, sdk |
| Audit events | DeleteProjectComponent |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | DELETE | /api/games/:gameId/project/components/:idOrKey |
project.component.update
Update a Project Graph component definition record through backend service paths. Project-defined components are production-grade backend-validated project-local data contracts for advanced/import-only data; they are not canonical engine atomics.
| Field | Value |
|---|---|
| Title | Update Project Component |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, sdk |
| Audit events | UpdateProjectComponent |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | PATCH | /api/games/:gameId/project/components/:idOrKey |
project.data_store.create
Create a Project Graph data store record through the canonical owner service; the receipt is the exact client resource.
| Field | Value |
|---|---|
| Title | Create Project Data Store |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | CreateProjectDataStore |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | project_create_data_store |
project.data_store.delete
Delete a Project Graph data store record through the canonical owner service; the receipt is the exact client resource.
| Field | Value |
|---|---|
| Title | Delete Project Data Store |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | DeleteProjectDataStore |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | project_delete_data_store |
project.data_store.read
Read one Project Graph data store record by uuid or graph key through the canonical owner service; the receipt is the exact client resource with its current version.
| Field | Value |
|---|---|
| Title | Read Project Data Store |
| Domain | project-graph |
| Kind | query |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | mcp, ai, workflow, sdk |
| Audit events | ReadProjectDataStore |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | project_get_data_store |
project.data_store.update
Update a Project Graph data store record through the canonical owner service; the receipt is the exact client resource.
| Field | Value |
|---|---|
| Title | Update Project Data Store |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | UpdateProjectDataStore |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | project_update_data_store |
project.entity.bulk_create
Create up to 1,000 entities in one decisive batched call with built-in key-suffix conflict healing (each item resolves independently, one commit boundary per item). The batched multi-entity writer the AI core surface prefers over per-entity creates.
| Field | Value |
|---|---|
| Title | Bulk Create Entities |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | mcp, ai |
| Audit events | ProjectGraphTransactionApplied |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | project_bulk_create_entities |
project.entity.component.delete
Remove one component from a Project Graph entity through the canonical component mutation kernel. With expected_revision the delete goes through an optimistic-concurrency transaction and returns a transaction result; otherwise it returns the updated entity.
| Field | Value |
|---|---|
| Title | Delete Entity Component |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | DeleteProjectEntityComponent |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | DELETE | /api/games/:gameId/project/entities/:idOrKey/components/:componentKey | |
| mcp | project_remove_component |
project.entity.component.set
Add or replace a complete component on a Project Graph entity through the canonical component mutation kernel. With expected_revision the write goes through an optimistic-concurrency transaction and returns a transaction result; otherwise it returns the updated entity.
| Field | Value |
|---|---|
| Title | Set Entity Component |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | SetProjectEntityComponentOverride, PutProjectEntityComponent, PatchProjectEntityComponent |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | PUT | /api/games/:gameId/project/entities/:idOrKey/components/:componentKey | |
| http | PATCH | /api/games/:gameId/project/entities/:idOrKey/components/:componentKey | |
| mcp | project_add_component |
project.entity.create
Create a Project Graph entity in a world through the canonical entity owner. worldId/parentEntityId/prefabId accept a uuid or a graph key; on_conflict controls duplicate-key handling.
| Field | Value |
|---|---|
| Title | Create Project Entity |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | CreateProjectEntity |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/project/entities | |
| mcp | project_create_entity |
project.entity.delete
Delete a Project Graph entity through the canonical entity owner. With expected_revision the delete goes through an optimistic-concurrency transaction and returns a transaction result; otherwise it returns the deleted entity.
| Field | Value |
|---|---|
| Title | Delete Project Entity |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | DeleteProjectEntity |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | DELETE | /api/games/:gameId/project/entities/:idOrKey | |
| mcp | project_delete_entity |
project.entity.read
Read one Project Graph entity by uuid or graph key through the canonical entity owner; the receipt is the exact client entity with its current version and components.
| Field | Value |
|---|---|
| Title | Read Project Entity |
| Domain | project-graph |
| Kind | query |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | mcp, ai, workflow, sdk |
| Audit events | ReadProjectEntity |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | project_get_entity |
project.entity.search
Search Project Graph entities by query, world, tag(s), component type(s), or key prefix through the canonical entity owner, returning a bounded cursor-paginated page of entity records (the discovery reader for edit targets).
| Field | Value |
|---|---|
| Title | Search Project Entities |
| Domain | project-graph |
| Kind | query |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | mcp, ai, workflow, sdk |
| Audit events | SearchProjectEntities |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | project_search_entities |
project.entity.update
Update a Project Graph entity's identity, hierarchy, tags, or metadata through the canonical entity owner. With expected_revision the write goes through an optimistic-concurrency transaction and returns a transaction result; otherwise it returns the updated entity.
| Field | Value |
|---|---|
| Title | Update Project Entity |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | UpdateProjectEntity |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | PATCH | /api/games/:gameId/project/entities/:idOrKey | |
| mcp | project_update_entity |
project.graph.snapshot.read
Read the current typed Project Graph snapshot through its owner service.
| Field | Value |
|---|---|
| Title | Read Project Graph Snapshot |
| Domain | project-graph |
| Kind | query |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | mcp, ai, workflow, sdk |
| Audit events | ProjectGraphSnapshotRead |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | project_get_graph_snapshot |
project.material.patch.apply
Apply checked semantic patch operations to a material asset and persist canonical material graph artifacts.
| Field | Value |
|---|---|
| Title | Apply Material Semantic Patch |
| Domain | material-authoring |
| Kind | command |
| Lifecycle | active |
| Owner | material-semantic-patch |
| Exposure | ui, mcp, ai, workflow, sdk |
| Audit events | ProjectGraphAssetUpdated |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/project/assets/:assetId/material/patches/apply | |
| mcp | project_apply_material_semantic_patch | ||
| ai | apply_material_semantic_patch | ||
| sdk | project.materials.applySemanticPatch |
project.prefab.create
Create a Project Graph prefab record through the canonical owner service; the receipt is the exact client resource.
| Field | Value |
|---|---|
| Title | Create Project Prefab |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | CreateProjectPrefab |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/project/prefabs | |
| mcp | project_create_prefab |
project.prefab.delete
Delete a Project Graph prefab record through the canonical owner service; the receipt is the exact client resource.
| Field | Value |
|---|---|
| Title | Delete Project Prefab |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | DeleteProjectPrefab |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | DELETE | /api/games/:gameId/project/prefabs/:idOrKey | |
| mcp | project_delete_prefab |
project.prefab.read
Read one Project Graph prefab record by uuid or graph key through the canonical owner service; the receipt is the exact client resource with its current version.
| Field | Value |
|---|---|
| Title | Read Project Prefab |
| Domain | project-graph |
| Kind | query |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | mcp, ai, workflow, sdk |
| Audit events | ReadProjectPrefab |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | project_get_prefab |
project.prefab.update
Update a Project Graph prefab record through the canonical owner service; the receipt is the exact client resource.
| Field | Value |
|---|---|
| Title | Update Project Prefab |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | UpdateProjectPrefab |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | PATCH | /api/games/:gameId/project/prefabs/:idOrKey | |
| mcp | project_update_prefab |
project.script.create
Create a Project Graph script from a structural GessaScript shell through the canonical script owner.
| Field | Value |
|---|---|
| Title | Create Project Script |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | CreateProjectScript |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/project/scripts | |
| mcp | project_create_script |
project.script.delete
Delete a Project Graph script through the canonical script owner.
| Field | Value |
|---|---|
| Title | Delete Project Script |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | DeleteProjectScript |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | DELETE | /api/games/:gameId/project/scripts/:idOrKey | |
| mcp | project_delete_script |
project.script.patch.apply
Apply checked semantic patch operations to a Project Script and persist canonical Script IR.
| Field | Value |
|---|---|
| Title | Apply Script Semantic Patch |
| Domain | script-authoring |
| Kind | command |
| Lifecycle | active |
| Owner | script-semantic-patch |
| Exposure | ui, mcp, ai, workflow, sdk |
| Audit events | UpdateProjectScript |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/project/scripts/:idOrKey/patches/apply | |
| mcp | project_apply_script_semantic_patch | ||
| ai | apply_script_semantic_patch | ||
| sdk | project.scripts.applySemanticPatch |
project.script.read
Read one Project Graph script by uuid or graph key through the canonical script owner; the receipt is the exact client script carrying its current version and IR fingerprint together, so a semantic patch never needs to probe for concurrency coordinates.
| Field | Value |
|---|---|
| Title | Read Project Script |
| Domain | project-graph |
| Kind | query |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | mcp, ai, workflow, sdk |
| Audit events | ReadProjectScript |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | project_get_script |
project.script.update
Update a Project Graph script's metadata through the canonical script owner.
| Field | Value |
|---|---|
| Title | Update Project Script |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | UpdateProjectScript |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | PATCH | /api/games/:gameId/project/scripts/:idOrKey | |
| mcp | project_update_script |
project.transaction.apply
Atomically apply several low-level Project Graph ops as ONE checked, idempotent, undoable transaction. Each op is a { kind, ...fields } object (record.create/update/delete, component.put/patch/delete/add/remove) over a resourceKind (asset, world, component, prefab, entity, script, workflow, ui-panel, data-store); the ops field description carries the exact shapes. The precision batched writer: no engine-owned component defaults, strong per-op validation on receipt.
| Field | Value |
|---|---|
| Title | Apply Project Graph Transaction |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | workflow |
| Audit events | ProjectGraphTransactionApplied |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/project/transactions | |
| mcp | project_apply_transaction |
project.ui_panel.create
Create a Project Graph ui panel record through the canonical owner service; the receipt is the exact client resource.
| Field | Value |
|---|---|
| Title | Create Project Ui Panel |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | CreateProjectUiPanel |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/project/ui-panels | |
| mcp | project_create_ui_panel |
project.ui_panel.delete
Delete a Project Graph ui panel record through the canonical owner service; the receipt is the exact client resource.
| Field | Value |
|---|---|
| Title | Delete Project Ui Panel |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | DeleteProjectUiPanel |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | DELETE | /api/games/:gameId/project/ui-panels/:idOrKey | |
| mcp | project_delete_ui_panel |
project.ui_panel.read
Read one Project Graph ui panel record by uuid or graph key through the canonical owner service; the receipt is the exact client resource with its current version.
| Field | Value |
|---|---|
| Title | Read Project Ui Panel |
| Domain | project-graph |
| Kind | query |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | mcp, ai, workflow, sdk |
| Audit events | ReadProjectUiPanel |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | project_get_ui_panel |
project.ui_panel.update
Update a Project Graph ui panel record through the canonical owner service; the receipt is the exact client resource.
| Field | Value |
|---|---|
| Title | Update Project Ui Panel |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | UpdateProjectUiPanel |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | PATCH | /api/games/:gameId/project/ui-panels/:idOrKey | |
| mcp | project_update_ui_panel |
project.world.create
Create a Project Graph world record through the canonical owner service; the receipt is the exact client resource.
| Field | Value |
|---|---|
| Title | Create Project World |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | CreateProjectWorld |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/project/worlds | |
| mcp | project_create_world |
project.world.delete
Delete a Project Graph world record through the canonical owner service; the receipt is the exact client resource.
| Field | Value |
|---|---|
| Title | Delete Project World |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | DeleteProjectWorld |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | DELETE | /api/games/:gameId/project/worlds/:idOrKey | |
| mcp | project_delete_world |
project.world.read
Read one Project Graph world record by uuid or graph key through the canonical owner service; the receipt is the exact client resource with its current version.
| Field | Value |
|---|---|
| Title | Read Project World |
| Domain | project-graph |
| Kind | query |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | mcp, ai, workflow, sdk |
| Audit events | ReadProjectWorld |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | project_get_world |
project.world.update
Update a Project Graph world record through the canonical owner service; the receipt is the exact client resource.
| Field | Value |
|---|---|
| Title | Update Project World |
| Domain | project-graph |
| Kind | command |
| Lifecycle | active |
| Owner | project-graph |
| Exposure | ui, mcp, ai, sdk |
| Audit events | UpdateProjectWorld |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | PATCH | /api/games/:gameId/project/worlds/:idOrKey | |
| mcp | project_update_world |
publish.dev
Create a dev content version and deployment candidate through publish gates.
| Field | Value |
|---|---|
| Title | Publish Dev Build |
| Domain | publish |
| Kind | command |
| Lifecycle | active |
| Owner | publish |
| Exposure | ui, mcp, ai, workflow, sdk |
| Audit events | PublishDev |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/publish/dev | |
| mcp | runtime_create_deployment |
qa.renderer.viewport.capture
Render one immutable verified Versioning checkpoint through the real runtime and renderer, independently content-address the PNG bytes, and return exact runtime/browser/media lineage.
| Field | Value |
|---|---|
| Title | Prove Runtime Renderer Frame |
| Domain | qa |
| Kind | command |
| Lifecycle | active |
| Owner | qa |
| Exposure | mcp, ai |
| Audit events | RendererViewportCaptured |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | qa_capture_renderer_viewport |
qa.run.start
Execute bounded deterministic simulation QA from an immutable verified Versioning checkpoint to verify the physics simulation converges to its expected numerical value, returning an executable numerical-oracle receipt with an independent repeat and seed-sensitivity control.
| Field | Value |
|---|---|
| Title | Run Simulation QA |
| Domain | qa |
| Kind | command |
| Lifecycle | active |
| Owner | simulation |
| Exposure | mcp, ai, workflow |
| Audit events | SimulationQaRun |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | simulation_run |
renderer.visual_profile.apply
Apply a canonical renderer visual profile by mutating the Project Graph world environment through backend authority.
| Field | Value |
|---|---|
| Title | Apply Renderer Visual Profile |
| Domain | renderer |
| Kind | command |
| Lifecycle | active |
| Owner | renderer |
| Exposure | ui, mcp, ai, sdk |
| Audit events | RendererVisualProfileApplied |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/project/worlds/:idOrKey/visual-profile/apply | |
| sdk | renderer.visualProfiles.apply | ||
| mcp | world_apply_visual_profile |
renderer.visual_qa.run
Retired native-AI composite. The canonical renderer pixel-capture primitive is qa.renderer.viewport.capture; this SDK-surface convenience adds profile/fallback receipt checks over it.
| Field | Value |
|---|---|
| Title | Run Renderer Visual QA |
| Domain | renderer-qa |
| Kind | command |
| Lifecycle | active |
| Owner | qa |
| Exposure | sdk |
| Audit events | RendererVisualQaRun |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| sdk | renderer.visualQa.run |
runtime.proof.run
Execute one author-declared input against an immutable Project Graph snapshot in an isolated real runtime actor and return typed causal transition evidence with provider and checkpoint lineage.
| Field | Value |
|---|---|
| Title | Run Runtime Proof |
| Domain | runtime-qa |
| Kind | command |
| Lifecycle | active |
| Owner | runtime |
| Exposure | mcp, ai, sdk |
| Audit events | RuntimeProofRun |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | runtime_proof_run |
spatial.asset.import
Queue and run backend-authoritative spatial asset import processing through Jobs and Capability Registry.
| Field | Value |
|---|---|
| Title | Import Spatial Asset |
| Domain | spatial-ingestion |
| Kind | job_start |
| Lifecycle | active |
| Owner | spatial-ingestion |
| Exposure | ui, mcp, ai, workflow, sdk, cli |
| Audit events | SpatialAssetImportQueued, SpatialAssetImportProcessed |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/spatial-assets/imports | |
| http | POST | /api/games/:gameId/spatial-assets/import-jobs/:jobId/run | |
| mcp | spatial_asset_queue_import |
spatial.capture.annotate
Record semantic anchors for spatial captures through backend-validated Project Graph facets.
| Field | Value |
|---|---|
| Title | Annotate Spatial Capture |
| Domain | spatial-ingestion |
| Kind | command |
| Lifecycle | active |
| Owner | spatial-ingestion |
| Exposure | ui, mcp, ai, workflow, sdk, cli |
| Audit events | SpatialCaptureAnnotationRecorded |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/spatial-assets/:assetId/annotations | |
| mcp | spatial_capture_record_annotations |
spatial.capture.proxy.generate
Generate or record collision/nav/query proxy receipts for a spatial capture asset.
| Field | Value |
|---|---|
| Title | Generate Spatial Capture Proxy |
| Domain | spatial-ingestion |
| Kind | job_start |
| Lifecycle | active |
| Owner | spatial-ingestion |
| Exposure | ui, mcp, ai, workflow, sdk, cli |
| Audit events | SpatialCaptureProxyGenerationQueued, SpatialCaptureProxyGenerationRecorded |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/spatial-assets/:assetId/proxy-jobs | |
| http | POST | /api/games/:gameId/spatial-assets/proxy-jobs/:jobId/run | |
| mcp | spatial_capture_queue_proxy_job |
terrain.artifacts.build
Build the explicit terrain artifacts (render height tile, collision proxy, nav source mesh) from the terrain resource source, writing regenerate-gated receipts onto the facet and lifting acceptance to navigable_terrain. Backed by ProjectGraphService.buildTerrainArtifacts over the deterministic buildTerrainArtifacts builder (same source -> same artifactHash, one no-drift build for collision/nav/render). v1 runs the build inline; the durable job-queue worker is a later optimization. Build is a job; path query is runtime.
| Field | Value |
|---|---|
| Title | Build Terrain Artifacts |
| Domain | terrain |
| Kind | job_start |
| Lifecycle | active |
| Owner | terrain |
| Exposure | ui, mcp, ai, sdk, cli |
| Audit events | TerrainArtifactsBuildQueued, TerrainArtifactsBuilt |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/project/assets/:assetId/terrain/artifacts/build | |
| sdk | project.terrain.buildArtifacts | ||
| mcp | terrain_build_artifacts |
terrain.patch.apply
Apply checked semantic terrain operations (sculpt/paint/road/biome/generate/cutHole/erosion/scatter) to the versioned terrain resource through the single terrain patch chokepoint (compileTerrainPatch + applyTerrainPatch), invalidating collision/nav/render artifacts for gated rebuild so collision and nav never drift from the source. Lowers into ProjectGraphService.applyTerrainPatch over the asset terrain facet via the existing updateAsset path (no parallel write path).
| Field | Value |
|---|---|
| Title | Apply Terrain Semantic Patch |
| Domain | terrain |
| Kind | command |
| Lifecycle | active |
| Owner | terrain |
| Exposure | ui, mcp, ai, workflow, sdk |
| Audit events | TerrainPatchApplied |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/project/assets/:assetId/terrain/patches/apply | |
| mcp | project_apply_terrain_semantic_patch | ||
| sdk | project.terrain.applySemanticPatch |
terrain.resource.create
Create a versioned hybrid terrain resource (heightfield + mesh under one resource) as a Project Graph asset terrain facet. Backed by the terrain resource contract (terrain-resource-contract.v1) + the terrain patch chokepoint; the dedicated REST/MCP/AI handlers are pending (planned).
| Field | Value |
|---|---|
| Title | Create Terrain Resource |
| Domain | terrain |
| Kind | command |
| Lifecycle | planned |
| Owner | terrain |
| Exposure | ui, sdk |
| Audit events | TerrainResourceCreated |
Surface mappings:
No surface mappings; reachable through the exposure surfaces above.
versioning.proof.state_diff
Compare immutable pre-author and final Versioning checkpoints, reconstruct the complete canonical Project Graph transition, and evaluate exact reviewer-authored assertions.
| Field | Value |
|---|---|
| Title | Prove Canonical State Diff |
| Domain | versioning |
| Kind | command |
| Lifecycle | active |
| Owner | versioning |
| Exposure | mcp, ai, sdk |
| Audit events | VersioningStateDiffProofRun |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | versioning_state_diff_proof_run |
workflow.definition.create
Hidden privileged/deferred Workflow IR definition mutation. Normal UI, MCP, AI, and SDK workflow authoring stays unavailable until a complete creator-facing projection ships.
| Field | Value |
|---|---|
| Title | Create Workflow Definition |
| Domain | workflow |
| Kind | admin |
| Lifecycle | internal |
| Owner | workflows |
| Exposure | admin |
| Audit events | CreateProjectWorkflow |
Surface mappings:
No surface mappings; reachable through the exposure surfaces above.
workflow.run.start
Start a durable workflow run through the workflow runner.
| Field | Value |
|---|---|
| Title | Start Workflow Run |
| Domain | workflow |
| Kind | workflow_step |
| Lifecycle | active |
| Owner | workflows |
| Exposure | ui, sdk, mcp, ai |
| Audit events | WorkflowRunStarted |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/workflows/:idOrKey/runs | |
| mcp | project_start_workflow_run |
workspace.asset.link
Link an authorized existing workspace asset into a project and return its owner-issued project identity without supplying raw storage coordinates.
| Field | Value |
|---|---|
| Title | Link Workspace Asset |
| Domain | workspace-assets |
| Kind | command |
| Lifecycle | active |
| Owner | workspace-assets |
| Exposure | ui, mcp, ai |
| Audit events | WorkspaceAssetLinkedToGame, ProjectAssetCreated |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | workspace_asset_link | ||
| http | POST | /api/workspaces/:workspaceId/assets/:assetIdOrKey/link-game |
workspace.create
Create a workspace through the control-plane service.
| Field | Value |
|---|---|
| Title | Create Workspace |
| Domain | control-plane |
| Kind | command |
| Lifecycle | active |
| Owner | control-plane |
| Exposure | ui, mcp, ai, sdk |
| Audit events | CreateWorkspace |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/workspaces | |
| mcp | workspace_create |
world_build.operation_catalog.read
Return the world-build semantic operation catalog (intent operation ids, titles, lowered targets, required coordinates) that documents what a world-build document can express.
| Field | Value |
|---|---|
| Title | Read World Build Operation Catalog |
| Domain | generators |
| Kind | query |
| Lifecycle | active |
| Owner | ai-platform-generators |
| Exposure | mcp, ai |
| Audit events | WorldBuildOperationCatalogRead |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | world_build_get_operation_catalog |
world_build.semantic_operations.apply
Apply a batch of high-level world-build semantic operations as ONE canonical transaction: compile the operations through the single world-build semantic compiler (the same validator world_build_compile_semantic_operations uses), lower them to Native Agent Runtime operations, and land them via one atomic idempotent applyTransaction (one history/undo unit). Budget-capped and plan-hash deterministic; a replay by idempotency key is a no-op. The WRITE twin of world_build_compile_semantic_operations and the primary document write path. Standard approval applies; conflict and budget overflow surface as typed rejections.
| Field | Value |
|---|---|
| Title | Apply World Build Semantic Operations |
| Domain | generators |
| Kind | command |
| Lifecycle | active |
| Owner | ai-platform-generators |
| Exposure | mcp, ai |
| Audit events | WorldBuildSemanticOperationsApplied, ProjectGraphTransactionApplied |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | world_build_apply_semantic_operations |
world_build.semantic_operations.compile
Compile high-level world-build semantic operations through the single world-build semantic compiler and return lowered operations, receipts, and diagnostics without writing anything. The dry-run READ twin of world_build.semantic_operations.apply.
| Field | Value |
|---|---|
| Title | Compile World Build Semantic Operations |
| Domain | generators |
| Kind | query |
| Lifecycle | active |
| Owner | ai-platform-generators |
| Exposure | mcp, ai |
| Audit events | WorldBuildSemanticOperationsCompiled |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | world_build_compile_semantic_operations |
world.author.program
Typecheck and compile ONE bounded build.ts against the generated builder SDK, compute its world-build plan, land it through the widened generator apply seam as ONE canonical transaction (one history/undo unit), observe one frame, optionally run a default playtest scenario (possess the start entity, move, interact), and return ONE receipt: plan steps, apply stages with per-owner mutation counts and wiring truth, an inline frame, a graded playtest verdict, source-mapped diagnostics back to build.ts lines, and a terminal outcome. Idempotent by (programHash, paramsHash, seed): a replay is a no-op. dry_run computes without applying. Standard approval applies.
| Field | Value |
|---|---|
| Title | Author World From One Program |
| Domain | generators |
| Kind | command |
| Lifecycle | active |
| Owner | ai-platform-generators |
| Exposure | mcp, ai |
| Audit events | GeneratorPlanApplied, ProjectGraphTransactionApplied |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | world_author_program |
world.build.from_prompt
Client ingress that routes a prompt-to-world request to the neutral authoring kernel. Not an engine mutation action; carries no owner binding.
| Field | Value |
|---|---|
| Title | Build World From Prompt |
| Domain | world-factory |
| Kind | workflow_step |
| Lifecycle | active |
| Owner | world-factory |
| Exposure | ui, sdk |
| Audit events | AiWorldBuildStarted, AiWorldBuildAccepted |
Surface mappings:
No surface mappings; reachable through the exposure surfaces above.
world.build.from_spatial_asset
Create an executable Project Graph world from an imported spatial asset while enforcing proxy, anchor, and playability receipts.
| Field | Value |
|---|---|
| Title | Build World From Spatial Asset |
| Domain | world-factory |
| Kind | workflow_step |
| Lifecycle | active |
| Owner | world-factory |
| Exposure | ui, mcp, ai, workflow, sdk |
| Audit events | SpatialAssetWorldBuildStarted, SpatialAssetWorldBuildAccepted |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| http | POST | /api/games/:gameId/spatial-assets/:assetId/build-world | |
| mcp | world_build_from_spatial_asset | ||
| ai | build_world_from_spatial_asset | ||
| sdk | world.build.fromSpatialAsset |
world.builder.sdk
Return the builder SDK .d.ts generated from this project's REAL catalog (built-in + project components) and its workspace asset ids: the exact type surface world_author_program typechecks build.ts against. Read-only - one authorized snapshot read plus a pure codegen, writing nothing. Lets an author working outside the editor autocomplete against the vocabulary the server will actually judge, instead of a default-catalog baseline whose asset ids match no real game.
| Field | Value |
|---|---|
| Title | Fetch Builder SDK Types |
| Domain | generators |
| Kind | query |
| Lifecycle | active |
| Owner | ai-platform-generators |
| Exposure | mcp, cli, ai |
| Audit events | WorldBuilderSdkRead |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | world_builder_sdk |
world.observe.entity_view
Look at what you built: frame up to 8 authored entities in a 3/4 fit-bounds (F-key) view and render the CURRENT head so you SEE placeholders, floating props, and muddy paint a graph digest hides. The frame rides back as an image where the render lane is wired, else a typed capture_unavailable names the missing seam. Use after scenery/prop authoring.
| Field | Value |
|---|---|
| Title | Observe Entity View (The Eye) |
| Domain | observation |
| Kind | query |
| Lifecycle | active |
| Owner | ai-platform-observation |
| Exposure | mcp, ai |
| Audit events | WorldObserveEntityView |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | world_observe_entity_view |
world.observe.frame
Capture one editor or runtime viewport frame through the existing qa renderer capture lane where a browser runtime is available, returning a bounded frame descriptor (camera, viewport, renderer, media hash, pixel diagnostics, browser health) or an honest typed unavailable envelope when no browser runtime is present.
| Field | Value |
|---|---|
| Title | Observe Viewport Frame |
| Domain | observation |
| Kind | query |
| Lifecycle | active |
| Owner | ai-platform-observation |
| Exposure | mcp, ai |
| Audit events | WorldObserveFrame |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | world_observe_frame |
world.observe.logs
Read a bounded newest-first tail of runtime and script diagnostics for one runtime room.
| Field | Value |
|---|---|
| Title | Observe Runtime Logs |
| Domain | observation |
| Kind | query |
| Lifecycle | active |
| Owner | ai-platform-observation |
| Exposure | mcp, ai |
| Audit events | WorldObserveLogs |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | world_observe_logs |
world.observe.rooms
Read a bounded roster of active runtime rooms for a game with per-room player and observer counts, status, and lifecycle timestamps.
| Field | Value |
|---|---|
| Title | Observe Active Rooms |
| Domain | observation |
| Kind | query |
| Lifecycle | active |
| Owner | ai-platform-observation |
| Exposure | mcp, ai |
| Audit events | WorldObserveRooms |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | world_observe_rooms |
world.observe.scene
Read a bounded revision-stamped digest of the authored project graph (entity and per-component-type counts, world summary, spatial bounds, named-entity summary, and an optional bounded diff against a prior revision handle).
| Field | Value |
|---|---|
| Title | Observe Scene Digest |
| Domain | observation |
| Kind | query |
| Lifecycle | active |
| Owner | ai-platform-observation |
| Exposure | mcp, ai |
| Audit events | WorldObserveScene |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | world_observe_scene |
world.playtest.scenario
Boot an isolated proof room for a world, possess an entity, execute a typed action sequence (move/look/jump/interact/press) with per-step tick budgets, and return a revision-stamped outcome (before/after scene digests, per-step applied/failed, diagnostics). Executed proof over a discardable proof room; no durable project mutation.
| Field | Value |
|---|---|
| Title | Playtest Scenario |
| Domain | playtest |
| Kind | query |
| Lifecycle | active |
| Owner | ai-platform-playtest |
| Exposure | mcp, ai |
| Audit events | WorldPlaytestScenario |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | world_playtest_scenario |
world.sample.terrain
Sample the authored terrain surface height, normal, and slope at up to 64 (x,z) points, reusing the SAME no-drift height math the runtime draws and clamps to. Call BEFORE placing props on sculpted terrain so they rest on the surface instead of a hand-guessed y.
| Field | Value |
|---|---|
| Title | Sample Terrain Surface |
| Domain | observation |
| Kind | query |
| Lifecycle | active |
| Owner | ai-platform-observation |
| Exposure | mcp, ai |
| Audit events | WorldSampleTerrain |
Surface mappings:
| Surface | Method | Path | Tool |
|---|---|---|---|
| mcp | world_sample_terrain |