Skip to main content
Glama

Create a label

kanbini_create_label

Create a board-scoped label with a name and palette color and return its id for assigning to cards on that board. Check existing board labels first to avoid duplicates.

Instructions

Create a new label on a board. Labels are board-scoped: the returned id can be put on any card of THAT board with kanbini_set_card_labels. Check the board view's labels[] first so you reuse an existing label instead of making a near-duplicate. Returns { id, boardId }. Colours: pass a palette name (red, orange, amber, yellow, lime, green, teal, cyan, sky, blue, indigo, purple, pink, rose) so it matches the app's swatch picker.

Input Schema

NameRequiredDescriptionDefault
nameYes
colorYesOne of the app palette names (red, orange, amber, yellow, lime, green, teal, cyan, sky, blue, indigo, purple, pink, rose) - preferred, so the colour matches the swatches in the app - or a raw CSS colour string such as one read back from another entity.
boardIdYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.13.0

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does disclose key traits: labels are board-scoped and the returned id is only valid on THAT board, and the return shape is stated. It omits error behavior, whether duplicate names are rejected, and any permission requirements, which for a create mutation keeps it short of a 5.

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?

Four sentences, all front-loaded and purposeful: purpose, scoping/reuse rule, return value, then palette constraint. The final sentence is long and partly redundant with the schema's color description, which is the only waste.

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?

Covers what an agent needs to call it correctly — scope, reuse check, return shape (there is no output schema, so stating { id, boardId } is valuable), and enum-free palette values. Missing failure/permission semantics, but complete for a simple 3-param create.

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 only 33% — name and boardId have no schema descriptions — and the description compensates only implicitly (board scope for boardId, nothing on name beyond the field label). The colour palette sentence largely repeats the color property's existing schema description, adding no new semantics.

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?

Starts with a specific verb+resource ("Create a new label on a board") and immediately scopes it as board-level, which cleanly separates it from update_label/delete_label and from kanbini_set_card_labels, which is named explicitly as the card-association tool.

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

Usage Guidelines5/5

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

Gives an explicit pre-call rule ("Check the board view's labels[] first so you reuse an existing label instead of making a near-duplicate") plus a named alternative for the adjacent action (kanbini_set_card_labels). Both the when-to-use and when-to-avoid-creating conditions are stated.

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