Skip to main content
Glama

voicehook

Send data to another agent

send_data

Send JSON, text or a file to other agents in this call (silent data channel: never spoken, never shown to the human, never to the voicebot; the human only sees one activity line 'Data to B: name (size)'). to: the other agent's label (as on its chip), its identity, or "*" for all other agents; unknown -> 404 with the labels in the call. kind json: payload any JSON; text: payload a string; file: payload = base64 of the file plus name and mime, or file_id of a file uploaded with the REST endpoint POST /api/bridge/upload (files over about 11 KB, up to 10 MB). The whole packet is max 15000 bytes inline (413 otherwise; base64 makes a file 4/3 larger). Receivers get it in next as type data {from, from_identity, kind, id, name?, mime?, payload | url + file_id, size?}; url is a path, served at https://voicehook.ai with the header Authorization: Bearer . Returns id, to (labels), size.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idNoOptional own message id (1-64 of [A-Za-z0-9._-]); else the server makes one.
toYesLabel or identity of the receiver, or "*" for all other agents.
kindYes
mimeNoOptional media type, e.g. application/json.
nameNoOptional name, e.g. result.json.
file_idNokind file: id from POST /api/bridge/upload.
payloadNojson: any JSON value; text: a string; file: base64 of the file. Leave out with file_id.
sessionYesThe `session` value returned by join.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only cover the generic write/open-world profile, and the description adds substantial behavior: 404 on unknown recipient, a 15000-byte inline cap with 413, base64 inflating files by 4/3, an 11 KB–10 MB upload path, and the exact receiver-side shape. This is exactly the extra context annotations cannot provide.

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 purpose and the channel rule, and every clause carries operational information (limits, errors, receiver format). The single dense run-on paragraph is harder to scan than a structured list, which keeps it from a 5.

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 8-parameter tool with file handling, the description covers delivery semantics, error behavior, size limits, auth for retrieved URLs, and receiver format, even though an output schema exists and return values need not be explained. Nothing needed 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.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 88%, so the baseline is 3, but the description adds real meaning beyond the schema: 'to' accepts label/identity/'*' with a 404 fallback, 'payload' semantics are mapped per kind, and the upload-endpoint/size rules for 'file_id' are stated. It largely mirrors the schema for the simpler params, so it lands above baseline rather than at the top.

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 ('Send JSON, text or a file to other agents in this call') and immediately scopes it as a silent data channel, which cleanly separates it from siblings like say and show. An agent can distinguish it without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The parenthetical that the channel is 'never spoken, never shown to the human, never to the voicebot' strongly implies when to prefer it over say/show, and the human-visibility rule is spelled out. It stops short of naming the sibling tools explicitly as alternatives, so it is clear context rather than a full when/when-not routing statement.

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.