Skip to main content
Glama

Text the human

text
Destructive

Send a one-way text to the human's phone (push notification, no ring). On a local client, read to from ~/.aiphone/config.json → user_number; this hosted server cannot read that file itself. If missing, returns setup_required with the App Store link. Pass a previous session_token to stay in the same thread.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
toNo
bodyYes
from_labelNoSomeone's AI
session_tokenNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and openWorldHint=true, and the description is consistent with a write/external-send operation. It adds real value beyond the annotations: the no-ring delivery semantics, the setup_required failure path with an App Store link, and the threading behavior of session_token. It does not describe rate limits, delivery latency, or whether the send is retractable.

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 short sentences, front-loaded with what the tool does, then setup mechanics, then threading. No filler. Slightly dense but every sentence conveys a distinct, load-bearing fact.

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

Completeness4/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 description compensates by naming the setup_required error case and its payload. The remaining gap is the undocumented `from_label` parameter and success-response shape, but for a single-action send tool the coverage is nearly complete.

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 0%, so the description must carry parameter meaning, and it only partially does: it documents `to` (resolved from config.json → user_number) and `session_token` (continue an existing thread). `body` is left implicit and `from_label` is never mentioned, so one of four parameters has no semantics anywhere.

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+resource pair ('Send a one-way text to the human's phone') and immediately qualifies the channel ('push notification, no ring'). The 'one-way' framing distinguishes it from reply-oriented siblings like wait_for_reply and poll_result without needing their schemas.

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?

Gives actionable operational context: where `to` comes from on a local client, that the hosted server cannot read that file, and that a previous session_token continues the thread. It stops short of explicitly naming an alternative (e.g. 'use call/wait_for_reply when you need an answer'), so exclusions are implied rather than stated.

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.