Skip to main content
Glama

get_level_blueprint

Retrieve the current level's Level Blueprint path, or create it when missing, so graph tools can target its EventGraph for level-specific scripting.

Instructions

Get (or, with create=true, bring into being) the current level's Level Blueprint and return the blueprint_path that the graph tools need -- its event graph is always called "EventGraph", so add_graph_node / connect_pins can target it directly with graph_name="EventGraph". This is the entry point for level-specific scripting that does not belong in any actor. Read-only by default: with create=false and no blueprint present it answers exists:false + success:true rather than failing.

Returns: { exists: true, created: bool, blueprint_path: string, blueprint_name: string, event_graph: "EventGraph", level_name: string, success: true }, or, when no blueprint exists and create=false: { exists: false, success: true, level_name: string, note: string }

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
createNoOptional bool (default false). True creates the Level Blueprint if the level has none -- a mutation that dirties the map, so save_level afterwards.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.0

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=false, which is potentially alarming; the description resolves this by stating it is read-only by default and only mutates when create=true, that the mutation dirties the map and requires save_level afterward, and that a missing blueprint yields exists:false + success:true rather than an error. This is meaningful behavioral context beyond the annotation flags, with no contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core purpose and the create semantics, then the return shapes. The duplicated inline return JSON is verbose but serves a real purpose given there is no output schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With only one optional parameter, no annotations that carry nuance, and no output schema, the description supplies everything needed: the returned keys in both exists-true and exists-false cases, the event graph name, and the save-level caveat.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the schema description for 'create' already explains the default, the mutation, and the save_level consequence. The description largely restates this, so it adds little beyond the structured field; baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource (get/bring into being the current level's Level Blueprint) and returns the blueprint_path the graph tools need. It is clearly distinguishable from siblings like get_blueprint_info, build_blueprint_graph, or get_blueprint_components.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives positive routing context — 'the entry point for level-specific scripting that does not belong in any actor' — and tells the agent how the result is consumed (graph_name="EventGraph" for add_graph_node/connect_pins). It does not explicitly name a sibling alternative or a when-not-to-use condition, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools