Skip to main content
Glama

openphone

Send a text message

openphone_send_message
Destructive

Send an SMS/text message from one of your OpenPhone numbers to up to 10 recipients. WRITE ACTION — this actually sends a real text message (which may incur carrier cost and requires approved A2P 10DLC registration). OpenPhone REST: POST /messages.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
toYesRecipients in E.164 format (or contact ids), 1-10 items (required).
fromYesThe sending OpenPhone number — a phone-number id ('PN...') or E.164 number, e.g. '+15555555555' (required).
userIdNoThe sending user id ('US...'); defaults to the phone number's owner.
contentYesThe message body, 1-1600 characters (required).
setInboxStatusNoSet to 'done' to mark the conversation complete after sending.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

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

Annotations only carry destructiveHint=true, and the description materially extends that: it declares this is a WRITE action that sends a real message, discloses carrier cost, and names the A2P 10DLC registration prerequisite plus the underlying endpoint. It omits rate limits, idempotency/retry behavior, and delivery outcome, so not a 5.

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?

Three tight sentences with the capability first, the critical WRITE warning second, and the REST endpoint last. No filler; each sentence earns its place.

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?

For a mutation tool with no output schema, the description covers the essential call-time risks (cost, registration) and the endpoint. It would be stronger with a note on what the caller gets back (e.g., sent message id) and failure modes for unregistered numbers, but nothing needed to invoke 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 description coverage is 100%, so the schema already documents every parameter including E.164 formatting, the 1-10 recipient cap, and the 1600-character body limit. The description's 'up to 10 recipients' merely restates the maxItems constraint and adds no new parameter-level meaning, so 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?

Specific verb (send) plus resource (SMS/text message) and scope (from one of your OpenPhone numbers, up to 10 recipients). It is trivially distinguishable from read-oriented siblings like openphone_list_messages and openphone_get_message.

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 clear real-world prerequisites before calling: it is a WRITE action, it incurs carrier cost, and it requires approved A2P 10DLC registration. It does not explicitly name alternatives or when-not-to-use (e.g., replies within an existing conversation), so it stops short of a 5.

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.