Skip to main content
Glama

Update conversation required attributes

update_conversation_required_attributes
DestructiveIdempotent

Set replacing the list of conversation custom attributes that must be filled before a conversation can be resolved. Pass attribute_keys, each the attribute_key of a conversation attribute (list_custom_attributes with attribute_model conversation_attribute); an empty list stops requiring any. This replaces the whole list, so read get_conversation_required_attributes first. Resolving by a person, a macro or an AI agent is refused until they are filled.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "attribute_keys": "<attribute_keys>"
    },
    "name": "update_conversation_required_attributes"
  }
}

Input Schema

NameRequiredDescriptionDefault
attribute_keysYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare destructiveHint=true and idempotentHint=true, but the description adds the crucial consequence: this is a whole-list replacement, not a merge, and resolution by a person, macro, or AI agent is blocked until the attributes are filled. That downstream effect is not derivable from annotations or schema and materially changes how carefully an agent should call it.

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 dense sentences, each earning its place, with the replacement semantics and the read-first prerequisite front-loaded. The opening clause ('Set replacing the list of...') is slightly awkward phrasing that could be tightened, but nothing is wasted.

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?

No output schema exists and the tool has a single parameter, yet the description covers everything an agent needs: value provenance, empty-list behavior, replacement risk, and the resolution-blocking consequence. Nothing essential is missing for correct invocation.

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 description coverage, the description carries the parameter explanation well: each entry is an attribute_key of a conversation attribute, sourced via list_custom_attributes, and an empty array clears the requirement. It does not mention what happens with unknown or duplicate keys, nor the 50-item cap that only the schema exposes.

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: it sets the list of conversation custom attributes that must be filled before resolution. It is clearly distinguished from the read counterpart by instructing the agent to call get_conversation_required_attributes first, and from list_custom_attributes by naming the attribute_model filter needed to source keys.

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 explicit preconditions (read the current list first), the sourcing path for values (list_custom_attributes with attribute_model conversation_attribute), and the exact semantic of the empty list. There is no ambiguity about when to use this versus reading the settings.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources