Skip to main content
Glama

Send a test push

push.send_test

Sends one push to every device of one app user (by user_id or email) through the Expo push service. Answers devices, sent, failed and pruned (dead tokens removed). Scope: functions:write.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "push.send_test"
  }
}

Input Schema

NameRequiredDescriptionDefault
bodyNoNotification text
emailNoThe app user's email, instead of user_id
titleNoNotification title (default: Test push)
branchNoBranch (environment) id. Optional: defaults to `production`.
user_idNoThe app user's id (auth.users.id)
project_idNoProject id. Optional: defaults to the project created or used last in this session, or the only one.
organization_idNoOrganization id. Optional: defaults to the token's organization, or the only one you belong to.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already cover the safety profile (not read-only, not destructive, not idempotent), so the description's additive value is the outcome disclosure: 'Answers devices, sent, failed and pruned (dead tokens removed)' reveals a real side effect — dead device tokens are deleted — plus the required scope. It does not say whether retries are safe or how partial failures are reported, which keeps it below 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 short sentences: action and target first, then return shape, then permission scope. Nothing is redundant and no sentence could be dropped without losing information.

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 seven-parameter, zero-required mutation tool with no output schema, the description usefully summarizes the response keys and flags token pruning. One gap: the schema marks nothing as required while the description implies a user identifier must be supplied, and that 'at least one of user_id/email' rule is not made explicit.

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%, so every parameter including defaults for title, branch, project_id and organization_id is already documented. The description only restates the user_id-or-email targeting choice, adding no syntax or precedence rules beyond what the schema provides; 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?

The description states a specific verb and resource — 'Sends one push to every device of one app user' — and names the delivery channel (Expo push service) plus the two lookup keys. It is clearly distinguishable from the sibling push.status, which reads delivery state rather than sending.

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

Usage Guidelines3/5

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

The title and wording imply a single-user test send, and 'Scope: functions:write' is a useful permission prerequisite. However, it never states when to prefer this over alternatives such as a real broadcast path, and no sibling is named as the alternative for checking results afterward.

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