Skip to main content
Glama

lom_call

Destructive

Invoke a method on an Ableton Live object at a given path with positional arguments. Returns the method result, plus a path for any object returned.

Instructions

Call a function of the object at path with positional args ({"path": "..."} refers to an object).

Example: lom_call("live_set", "create_scene", [-1]). Returns the result, with a path for any object returned.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
argsNo
pathYes
methodYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.0.0

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=true, so the safety profile is covered. The description adds useful return behavior ("Returns the result, with a path for any object returned"), but says nothing about the destructive potential or that method names must be valid Live Object Model methods.

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 action, followed by one tight example and a return-value note. No filler sentences; every line earns its place.

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?

No output schema exists, and the description does provide a minimal return contract (result plus path for returned objects). For a generic object-method dispatcher with a 0%-coverage schema, more would help – e.g. how `path` strings are formed or what happens on an invalid method – but the essentials to make a call are present.

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?

With 0% schema coverage, the description must carry the load, and it does: it explains that `path` refers to an object, that `args` are positional, and the example demonstrates all three parameters including an empty-arg and negative-number case. `method` is only shown by example rather than defined, hence not a 5.

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?

States a specific verb (call) and resource (a function of the object at `path`), and the example disambiguates the argument order concretely. However it does not distinguish itself from the close siblings lom_get and lom_describe, which an agent would need to pick between.

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

Usage Guidelines3/5

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

Usage is implied by the worked example (lom_call("live_set", "create_scene", [-1])), so an agent can infer the calling convention. But there is no explicit when-to-use guidance relative to lom_get/lom_describe, nor any note that this is the mutation-capable path of the trio.

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