Skip to main content
Glama

Daily Brief

daily_brief
Read-only

Returns a single morning briefing combining today's calendar events, overdue and due-today reminders, unread inbox email count + subjects, and — when a location is provided — today's weather. Perfect for starting each day: one call gives you everything on your plate.

Input Schema

NameRequiredDescriptionDefault
locationNoOptional city name or 'lat,lon' to include today's weather in the brief (e.g. 'London', 'San Francisco'). Omitted if not provided.
include_emailsNoInclude unread email summary from Mail (default true). Read from Mail's local index, so Mail need not be running; Mail itself is asked only when the index can't answer.

Output Schema

NameRequiredDescriptionDefault
dateYesToday's date (YYYY-MM-DD).
noteNoOnboarding enrichment shown when nothing is scheduled.
emailsYesUnread email summary (unread_count + recent_unread), or {skipped} / {error}, or null when not requested.
eventsYesToday's calendar events.
weatherNoToday's weather (current conditions + forecast), only present when a location was provided.
remindersYesReminders due today or overdue.
incompleteNoSections that could NOT be read this time (each step has its own ceiling). An empty/absent list means every section was actually read; a section named here means its data is missing, NOT that it is empty.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / include_emails / description
      Previous value: -"Include unread email summary from Mail.app (default true, skipped gracefully if Mail is not running)"New value: +"Include unread email summary from Mail (default true). Read from Mail's local index, so Mail need not be running; Mail itself is asked only when the index can't answer."
  2. Changed1 schema field changed
    • addedOutput schema / properties / incomplete
      Added value: +{
      +  "description": "Sections that could NOT be read this time (each step has its own ceiling). An empty/absent list means every section was actually read; a section named here means its data is missing, NOT that it is empty.",
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
  3. Changed2 schema fields changed
    • addedInput schema / properties / location
      Added value: +{
      +  "description": "Optional city name or 'lat,lon' to include today's weather in the brief (e.g. 'London', 'San Francisco'). Omitted if not provided.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / weather
      Added value: +{
      +  "description": "Today's weather (current conditions + forecast), only present when a location was provided.",
      +  "type": "object"
      +}
  4. First observed

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint and destructiveHint=false, so the safety profile is covered. The description adds the useful conditional that weather is only included 'when a location is provided' and that email is an unread summary, but it does not disclose the source services (which calendar/reminder provider, Mail vs. M365/Proton), behavior when accounts aren't connected or permissions are missing, or partial-failure handling — meaningful gaps for an aggregator spanning many siblings.

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?

Two tight sentences: the content enumeration comes first, then the use-case framing. Only mild redundancy in restating the location condition already in the schema, and the em-dash aside is slightly dense but 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?

An output schema exists, so return-value detail is unnecessary, and the description covers the aggregate composition and the conditional weather component. What remains missing is guidance on multi-service dependency (connected accounts/permissions) for a tool that fans out across calendar, reminders, and mail.

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%, with both parameters fully documented in the schema (location format examples, include_emails default and Mail local-index nuance). The description only restates the conditional location behavior, adding essentially nothing beyond the schema, 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?

States a specific verb+resource ('returns a single morning briefing') and enumerates exactly what is aggregated: calendar events, overdue/due-today reminders, unread email count + subjects, and conditional weather. This clearly distinguishes it from the many single-source siblings like list_calendar_events or list_reminders.

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 phrase 'Perfect for starting each day: one call gives you everything on your plate' implies the intended usage context, and by definition it is the alternative to making several separate list calls. However, it never explicitly says when to use this vs. calling list_calendar_events/list_reminders/list_emails directly, nor when not to use it (e.g. deep dives or filtering).

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