Skip to main content
Glama
LibreDesk MCP

LibreDesk MCP

by Passe12345

apply_macro

Apply a macro's actions to a conversation to update team, user, status, priority, or tags and increment its usage count. Returns partial success when only some actions apply.

Instructions

Apply Macro To Conversation Applies a list of macro actions to a conversation and increments the macro's usage count. The body is a JSON array of actions (not an object), at most one action per type. Allowed action types: assign_team, assign_user, set_status, set_priority, add_tags, set_tags, remove_tags; send_reply and send_private_note are refused (403). The caller needs the permission matching each action type. Answers 200 when every action succeeded, 207 when only some did, and 500 when none did. The success body is {"message": ...}, not the usual status/data envelope. POST /api/v1/conversations/{uuid}/macros/{id}/apply Tags: Conversations

Input Schema

NameRequiredDescriptionDefault
idYesMacro ID (path parameter)
bodyYesRequest body
uuidYesConversation UUID (path parameter)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A4.4/5.0
Behavior5/5

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

With no annotations at all, the description carries the full burden and does so: it discloses the usage-count side effect, the at-most-one-action-per-type limit, the 403 refusal path for two action types, the 200/207/500 partial-success semantics, and warns that the success body is `{"message": ...}` rather than the usual envelope. That is substantially more than the schema reveals.

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, then constraints, then response codes, then the endpoint. Dense but every sentence carries information; the repeated title line and trailing endpoint/tags are mildly redundant but not wasteful.

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

Completeness5/5

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

For an unannotated mutation tool with no output schema, the definition covers side effects, permissions, partial-failure semantics, and the non-standard response body — everything an agent needs to call it and interpret the result correctly.

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 100%, so the baseline is 3, but the description adds real meaning: it stresses the body is an array of actions rather than an object, reiterates the one-action-per-type constraint, and explains that the action values are coerced to strings for numeric IDs — useful for avoiding type errors. It is largely reinforcing schema content rather than adding new parameter detail.

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 ('applies a list of macro actions to a conversation') plus the side effect of incrementing the macro's usage count, and names the concrete endpoint. An agent can distinguish this from read-only siblings like get_macro without opening the 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 description supplies real invocation constraints — allowed action types, refusal of send_reply/send_private_note with 403, and per-action permission requirements — but never says when to reach for this tool versus the macro read tool or other conversation-mutation tools. Usage is implied by the constraints rather than stated.

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