Skip to main content
Glama

Navigate

navigate

Changes the MIB2 Configurator display—page, car, driving side, view/edit mode, theme, UI elements, or interior frame—and returns the updated state.

Instructions

Changes what the app shows: page (ambient light, climate, car status, parking, energy flow, tyres, traffic signs, all images), car, driving side, View or Edit mode, theme skin, the head unit UI around the picture (uiElements), and on the interior pages the screen view (frame). Returns the new state.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "navigate"
  }
}

Input Schema

NameRequiredDescriptionDefault
carNoCar code, from list_cars
modeNoView: the car side (click changes what the car reports). Edit: positions can be moved
pageNo
sideNo
frameNoInterior pages: the whole picture, the default screen view, or a view level
themeNoTheme skin name (skin1, skin2…) for the head unit UI, or "none"
uiElementsNoDraw the head unit screen UI around the picture (needs a theme skin)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.0

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations supplied, the description carries the full burden, and it does contribute two useful facts: that this mutates the app's displayed view and that it 'Returns the new state', indicating a state payload comes back. It says nothing about whether every parameter is optional, whether a car must already be selected, whether changes persist across calls, or what happens when conflicting options (e.g. uiElements without theme) are supplied.

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?

It is a single front-loaded sentence opening with the core action, followed by a compact inventory of controllable aspects, with no filler or repetition. The parenthetical list is dense and slightly awkward in places ('all images'), but every clause conveys information an agent would otherwise have to guess.

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

Completeness3/5

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

For a zero-required-parameter, seven-parameter view-mutation tool with no annotations and no output schema, the description is adequate: it covers what each knob roughly does and that the new state is returned. It stops short of the operating details an agent needs to call it safely, namely default behaviour when parameters are omitted and the interaction between car, theme and uiElements.

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

Parameters4/5

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

Schema coverage is 71%, and the description fills the biggest gaps: the 'page' enum values are expanded into human meanings (ambient light, climate, car status, parking, energy flow, tyres, traffic signs, all images) and 'side' is glossed as driving side, both of which have no schema description of their own. It also scopes 'frame' to interior pages, though it restates rather than clarifies theme/uiElements and omits the schema's note that uiElements needs a theme skin.

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

Purpose4/5

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

The description opens with a concrete verb-plus-scope ('Changes what the app shows') and then enumerates exactly which aspects of the display are affected, so an agent understands this is the app's navigation/view-state selector. It never names a sibling such as get_state, screenshot or set_preview, so the boundary with read-only state tools must be inferred rather than read.

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

Usage Guidelines2/5

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

There is no explicit statement of when to call this versus the many neighbouring tools (get_state, screenshot, set_preview, check_skin), nor any prerequisite or exclusion. The enumerated targets hint that it is the way to switch page/mode before capturing a view, but that is left to inference.

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