Skip to main content
Glama

Echo a message back unchanged

demo_echo_message
Read-onlyIdempotent

Echo a message back unchanged to verify MCP stdio framing and handshake. Use it to confirm transport works before running other tools.

Instructions

Returns the submitted message text back unchanged, in one text content block, as a reachability probe for this server's stdio framing. Use it to confirm the MCP handshake and the transport work before testing anything else; it produces no analysis of its own, so for size comparisons call compare_formats and for a token figure call estimate_tokens. ...

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
messageYesText to send back verbatim; any characters are accepted, including newlines and non-ASCII. Empty or blank text is rejected.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
echoYesThe message text, returned byte-for-byte as submitted.
charsYesCharacter length of the echoed text.
transformedYesAlways false: this tool alters nothing.
estimated_tokensYesCharacters divided by four, floored at one.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.7.14

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds value beyond them by disclosing that it performs no analysis and emits exactly one text content block, which sets expectations for a probe tool. It stops short of stating failure behavior, but the added context is real.

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?

Two sentences, front-loaded with the core behavior and then routing alternatives, with no filler. It loses a point for the trailing ellipsis that hints at truncation and for a slightly long second clause that mixes purpose and routing.

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 a single-parameter probe with an output schema present, the description covers purpose, usage, alternatives, and return shape; return-value details are delegated to the output schema. Nothing an agent needs to call it correctly is missing.

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 100%, and the schema itself already documents the verbatim contract, accepted characters, and rejection of empty/blank input. The description adds no syntax or format detail beyond that, so the baseline 3 applies.

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 precise verb+resource (returns the submitted message back unchanged) plus the exact return shape (one text content block). It also names the sibling tools that do the adjacent work (compare_formats, estimate_tokens), so an agent can place it unambiguously among siblings.

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 when-to-use ('reachability probe ... confirm the MCP handshake and the transport work before testing anything else') and explicit alternatives with their selecting conditions (compare_formats for size comparisons, estimate_tokens for a token figure). Nothing is left to inference.

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