Skip to main content
Glama

chat_reaction

Adds or removes the token owner's reaction to a chat message - a textless reply. Only Kosmodrom web reactions are available (meanings in reaction); an existing reaction is not added twice, system messages take no reactions, and message reactions are keyed by who added them.

Input Schema

NameRequiredDescriptionDefault
removeNotrue - remove the token owner's reaction
reactionYesthumbs-up - 👍 agree, accepted; thumbs-down - 👎 disagree; ok - 👌 got it, will do; handshake - 🤝 agreed (deal); hands-folded - 🙏 thanks; 100p - 💯 fully agree; face-smile - 🙂 glad; face-lol - 😂 funny; face-thinking - 🤔 need to think, doubtful; face-grimacing - 😬 awkward; face-screaming - 😱 alarm; face-angry - 😠 displeased; fire - 🔥 excellent; eyes - 👀 looking, taking a look; call - 📞 let's have a call; lady-bug - 🐞 this is a bug; crutch - hack, temporary workaround; no-bicycles - don't reinvent the wheel, use an existing solution
messageIDYesMessage ID

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • removedInput schema / $schema
      Removed value: -"http://json-schema.org/draft-07/schema#"
  2. First observed

TDQS

A3.6/5.0
Behavior4/5

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

Annotations provide readOnlyHint=false, destructiveHint=false, and openWorldHint=false, which already tells the agent this is a non-destructive write. The description adds important behavioral context: only Kosmodrom web reactions are available, existing reactions are not duplicated, system messages take no reactions, and reactions are keyed by user. However, it doesn't disclose any auth/permission requirements or rate limits.

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 description is a single, well-structured sentence that front-loads the core action and then adds constraints. It is appropriately sized and every clause adds value, though it could be slightly more organized with separators.

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

Completeness3/5

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

For a mutation tool with annotations covering safety and a 100%-covered schema, the description covers key behaviors like idempotency (existing reaction not added twice) and system message exclusion. However, it omits auth requirements, permission scope, and any side effects beyond the keying mechanism, leaving some contextual gaps.

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 100% and the schema fully documents the 'reaction' enum with meanings and the 'remove' boolean. The description adds only that 'meanings in reaction', which is redundant with the schema. Since the schema already does the heavy lifting, baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a clear verb+resource: 'Adds or removes the token owner's reaction to a chat message - a textless reply.' This distinguishes it from siblings like chat_send or chat_read, though it doesn't explicitly name alternatives.

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?

Usage is implied by 'Adds or removes' and the mention of system messages taking no reactions, but there is no explicit guidance on when to use this versus other chat tools like chat_send or chat_read.

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