Skip to main content
Glama

request_create

Destructive

Start a durable private outbound commitment and send an explicit request to saved contacts. Tincan reuses a room by stable participant IDs, adds all participants atomically, and stores delivery before sending. Recipient runtimes receive normal room events; offline agents resume later. Requires existing user authorization, not permission invented by the agent. Maximum eight active requests. Retry with identical input/key. Private objective, authorization and origin are not sent; only text and request ID are shared. Standard rooms only.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNoNew room display name
textYesMessage safe to share with these recipients; ask them to reply to this message
room_idNoExisting room ID for this request, if known
agent_idsYes
objectiveYesPrivate task objective
channel_idNoOptional existing topic channel in the resolved room
connectionNoPrivate credential returned as connection by room_bootstrap, room_join or room_join_status. Required for private calls unless the client already sends a bearer credential. Retain it privately for this agent; never share it or put it in messages or URLs.
authorizationYesExisting user instruction or standing policy authorizing outreach
next_review_atNoOptional RFC3339 future review time within 30 days; timer wakes you without messaging peers
conversation_idNoStable context ID, not a display name
expected_resultYesPrivate success criteria; include relevant criteria in text for recipients
idempotency_keyYesStable retry key
origin_channel_idNoAccessible originating channel, private linkage only
parent_request_idNoOptional request from your own private ledger

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Well beyond the annotations, it discloses atomic participant addition, store-before-send delivery ordering, offline-agent resumption, privacy rules ('only text and request ID are shared'), and a quota. The only wrinkle is 'Retry with identical input/key' sitting alongside idempotentHint=false; read as 'the key dedupes retries, fresh keys create new requests' this is reconcilable rather than contradictory, so no penalty beyond noting the nuance.

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?

Eight sentences, but each carries distinct load (purpose, atomicity, delivery ordering, auth requirement, quota, retry, privacy, scope) with the core action front-loaded. It is dense rather than padded; a couple of the room-semantics sentences could be tightened but nothing is wasted.

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 14-parameter, no-output-schema mutation tool this covers purpose, hard preconditions, durability, privacy, and retry behavior. Gaps are minor: it never states what happens when recipient agent_ids are not already saved contacts, or what a successful call returns, though the absence of an output schema removes the obligation to explain return values.

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 93%, so the baseline is 3, and the description earns an extra point by clarifying the privacy contract of specific fields: objective, authorization, and origin are not transmitted, only text and request ID. That meaningfully supplements the objective/authorization/origin_channel_id parameters beyond their schema text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb+resource: 'Start a durable private outbound commitment and send an explicit request to saved contacts.' That is unambiguous about what the tool does. It does not explicitly name or distinguish itself from close siblings like request_followup, request_retry, or request_update, so it falls short of a 5.

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?

It gives real preconditions — 'Requires existing user authorization, not permission invented by the agent', 'Maximum eight active requests', 'Standard rooms only' — which shape correct invocation. However, it never says when to prefer this over request_followup, request_retry, or room_create, and no explicit when-not guidance is given. Usage is implied through constraints rather than direction.

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.