Skip to main content
Glama
renzel

TRMNL API MCP

by renzel

add_playlist_item

Add an existing plugin instance to a device playlist using its plugin setting UUID and device ID. Use this to assign plugins to a specific device's playlist.

Instructions

Add an existing plugin instance to a device playlist. plugin_setting_id must be the plugin setting UUID documented by TRMNL, not a numeric plugin ID. This may create another entry if retried; inspect the playlist after any uncertain outcome.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
device_idYes
plugin_setting_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare idempotentHint=false, so the non-idempotency is partially covered. The description adds value by explicitly stating the potential duplicate entry on retry and advising inspection, which goes beyond the hint. However, it doesn't clarify whether this operation requires specific permissions or what side effects occur beyond duplication (e.g., visibility or order). With annotations covering the mutation hint, a 3 is appropriate.

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

Conciseness5/5

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

The description is three sentences with no filler. The main action and critical parameter clarification are front-loaded, followed by a concise warning. Every sentence earns its place, making it efficient and well-structured.

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

Completeness4/5

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

Given the tool's moderate complexity (2 parameters, no output schema, but with sibling tools), the description covers the key semantic pitfalls (UUID requirement, non-idempotency) and the need for post-action verification. It doesn't describe return value, but with no output schema and a clear action, what matters is the side effect and how to handle uncertainty. The main gap is lack of guidance on finding the device_id, but siblings like list_devices can compensate, so it's strong overall.

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 description coverage is 0%, meaning the schema provides minimal meaning beyond types and constraints. The description notably clarifies that plugin_setting_id must be the plugin setting UUID from TRNML, not a numeric plugin ID—a critical semantic distinction not present in the schema. However, it doesn't explain the meaning of device_id (e.g., which device or how to find it) beyond being an integer. Since it compensates for the key ambiguous parameter but not fully for the other, a 3 is fair.

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 clearly states the action (add) and the resource (an existing plugin instance to a device playlist), and specifies the key object (plugin instance). It distinguishes itself from siblings like remove_playlist_item and reorder_playlist_items by the unique action and resource, making its purpose unambiguous.

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?

The description includes an important usage caution: it warns about non-idempotency, advising to inspect the playlist after uncertain outcomes. While it doesn't explicitly name alternative tools for similar operations, the context of adding versus removing/reordering is clear. It provides context on when to use this tool (to add items) but not explicit exclusions, so not a 5.

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