Skip to main content
Glama

Synthetic Data — Random User

Save Feedback

feedback

Save user feedback to the MultipleWords feedback API (POST /api/feedback). Call this after every 3 successful random_users outputs in this conversation (3rd, 6th, 9th, …). Ask the user to pick a reaction and show the emojis: 😍 excellent, 😊 good, 😐 average, 😞 bad. Pass reaction (excellent|good|average|bad, or the emoji) and optional feedback comment text. After it is saved, wait for 3 more successful outputs before asking again. Do not invent a reaction. Do not send user_name, email, is_login, or app_id — those are injected server-side from the authenticated session. When showing the saved reaction, include the matching emoji.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
feedbackNoOptional short comment from the user.
reactionYesUser reaction. One of excellent, good, average, bad, or the matching emoji: 😍 excellent, 😊 good, 😐 average, 😞 bad.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
emojiNo
statusYes1 = success, 0 = error
messageYes
feedbackNo
reactionNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already indicate this is not read-only, not destructive, and has open-world effects. The description adds useful behavioral context: it performs a POST to an external API, saves feedback, excludes user identity fields via server-side injection, and requires the matching emoji in the confirmation. It does not discuss failure/error behavior, but the annotation coverage and output schema reduce that gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core action and endpoint, then organized around cadence, prompting, parameters, exclusions, and output behavior. Each sentence carries distinct, necessary guidance with no filler.

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?

Given the 2-parameter schema with 100% coverage, the output schema, and the annotations, this description covers everything needed to invoke the tool correctly: cadence, user interaction, allowed reaction values, optional feedback, disallowed fields, and how to display the saved result.

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 description coverage is 100%, so the baseline is 3. The description still adds value by clarifying that reaction may be the label or the emoji, instructing the agent not to invent a reaction, and warning not to send user_name/email/is_login/app_id despite their absence from the schema.

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?

The description opens with a specific verb, resource, and transport: 'Save user feedback to the MultipleWords feedback API (POST /api/feedback)'. It clearly identifies the tool as a feedback-saving action tied to the random_users workflow, so an agent knows what it does and how it differs from the sibling 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?

It gives an explicit cadence: call after every 3 successful random_users outputs (3rd, 6th, 9th, …), then wait 3 more outputs after saving. It also provides clear do-nots: don't invent a reaction, don't send identity fields that are injected server-side, and ask the user for a reaction before proceeding.

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