Skip to content

Search Documentation

Search across all documentation pages

send_message

Send a directed message to another agent, the user, or broadcast to all agents. Messages are transient coordination artifacts (not durable memories). Supports categories, priorities, templates, and threading.

Categories: directive (instruction), question (needs answer), info (FYI), task (work request), alert (urgent). Priority 1-5 (5=critical). Messages auto-expire after 30 days by default.

Parameters#

ParameterTypeRequiredDescription
targetIdstring (1-200 chars)requiredRecipient: specific agentId, user, or * for broadcast
contentstring (1-10,240 chars)requiredMessage body (max 10KB, encrypted at rest)
categorystringoptionalMessage category: directive, question, info, task, alert (default: info)
priorityinteger (1-5)optionalPriority 1-5, 5=critical (default: 3)
subjectstring (max 200 chars)optionalShort subject line (max 200 chars, not encrypted)
vaultIdstring (UUID)optionalVault scope
expiresInDaysinteger (1-365)optionalDays until expiration (default: 30)
metadataobjectoptionalArbitrary metadata
templatestringoptionalMessage template type: task_assignment, status_update, alert, question
templateDataobjectoptionalTemplate-specific data (task, deadline, severity, etc.)
parentMessageIdstring (UUID)optionalReply to a specific message (creates/joins a thread)

Returns#

The created message object with its ID, delivery status, and timestamp.

Example#

json
{
  "tool": "send_message",
  "arguments": {
    "targetId": "claude_code",
    "category": "task",
    "priority": 4,
    "subject": "Implement token refresh",
    "content": "Please implement the OAuth2 token refresh logic in the auth module. Use the PKCE flow we decided on.",
    "template": "task_assignment",
    "templateData": {
      "deadline": "2026-03-01"
    }
  }
}