briefing.generate
LiveGenerate an on-demand briefing for the authenticated principal.
Description
Synthesizes a briefing from memory, calendar, rule state, and recent ledger activity. Three flavors: `morning` (forward-looking), `situational` (right-now context), `eod` (close-of-day recap).
Input schema
| Field | Type | Required | Description |
|---|---|---|---|
type | "morning" | "situational" | "eod" | no | Briefing type. Defaults to `morning`. |
Output shape
typescript
{
ok: boolean;
briefing?: {
title: string;
summary: string;
items: string[];
generated_at: string;
};
error?: string;
}Example call
JSON-RPC tools/call request body (omit the JSON-RPC envelope when using an SDK; the SDK adds it for you):
jsontools/call params
{
"name": "briefing.generate",
"arguments": { "type": "morning" }
}Example response
Tool results are always wrapped as content[0].text with a stringified JSON body. The shape below is what you get back from JSON.parse(result.content[0].text):
jsonparsed result body
{
"ok": true,
"briefing": {
"title": "Morning briefing",
"summary": "3 meetings today, 1 with pending prep. 2 follow-ups expected by EOD.",
"items": [
"9:00 — 1:1 with Sarah (rescheduled, needs new prep doc)",
"11:30 — Acme proposal review",
"Pending: respond to John's question on the architecture draft"
],
"generated_at": "2026-05-27T11:00:00Z"
}
}Errors this tool can return
| Code | Meaning |
|---|---|
unauthorized | Missing or invalid bearer token. |
quota_exceeded | Per-minute, daily call, or daily inference budget exceeded. |
See the full error catalog for resolution steps on each code, plus the standard transport-layer responses (401, 429).