Skip to main content
Glama

trmnl_set_room_booking_company_logo

Idempotent

Uploads a company logo for TRMNL room booking screens using base64-encoded PNG, JPEG, or SVG image data up to 2 MB, so the logo appears when company logo display is enabled.

Instructions

Upload the company logo shown on the screens PNG, JPEG or SVG up to 2 MB, as JSON with the bytes in base64. Shown once show_company_logo is on. TRMNL PUT /api/apps/room_booking/{installation_id}/settings/company_logo. Changes remote state or starts work. Run only within the user-authorized scope.

Input Schema

NameRequiredDescriptionDefault
bodyYes
pathYes
profileNoConfigured profile name; defaults to default.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.1

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true and destructiveHint=false, and the description is consistent with them (PUT semantics, replacing the logo). It adds genuine context beyond annotations — accepted formats (PNG/JPEG/SVG), a 2 MB cap, base64 encoding, and the display prerequisite — though it omits what happens to an existing logo on overwrite and any auth/rate-limit details.

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?

The action, format constraints and prerequisite are front-loaded and the whole definition is only a few lines. The trailing 'Changes remote state or starts work. Run only within the user-authorized scope.' is generic boilerplate that adds little.

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?

For a mutation tool with no output schema, the description covers the key input constraints (format, size, encoding) and the display prerequisite, and annotations cover the safety profile. Missing only overwrite/response behavior and explicit sibling routing, which are minor against what is present.

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 only 33%, so the description needs to compensate. It does explain the body payload (image bytes as base64, format and size limits) but says nothing about installation_id or the profile parameter, leaving those to the schema's brief field descriptions.

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?

States a specific verb and resource — upload the company logo shown on the screens — with the concrete output effect (displayed once show_company_logo is on). This distinguishes it from the sibling remove_room_booking_company_logo and set_room_booking_color_company_logo tools without the agent needing to open a schema.

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?

The prerequisite 'Shown once show_company_logo is on' is a useful usage condition, and 'Run only within the user-authorized scope' frames authorization. However, it never tells the agent when to choose this over the sibling remove/color-logo variants, so the when-to-use guidance is implied rather than explicit.

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