Skip to main content
Glama

What to do next

get_todo
Read-only

Builds one course digest to answer what to do today, naming the most urgent overdue or upcoming item and listing overdue, due-soon, undated assignments, and announcements with course names and dates.

Instructions

Answers 'what should I do today?' One digest across your courses that opens with a Start here line naming the most urgent item (the oldest overdue work, else the next thing due), then lists overdue work, work due soon, assignments with no due date, and the latest announcement subjects, each with the course name and due date. Submission status comes from the assignment list and the calendar adds quizzes and other activities. Input: course_ids, an optional array of course IDs to limit the digest; days_ahead, how many days ahead to look, default 14; overdue_days, how many days back to look for overdue work, default 14. Ask: 'What should I do today?'

Input Schema

NameRequiredDescriptionDefault
course_idsNo
days_aheadNoHow many days ahead to look. Default 14.
overdue_daysNoHow many days back to include overdue work. Default 14.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.5

TDQS

A4/5.0
Behavior4/5

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

Annotations only declare readOnlyHint and openWorldHint, so the description usefully carries the behavioral load: it describes the output structure (Start here line, then ordered sections), the data sources (assignment list for submission status, calendar for quizzes), and the selection rule for the most urgent item. It stops short of noting failure modes, result limits, or auth requirements.

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?

The core purpose is front-loaded in the first clause, and the section-ordering detail is useful. The long run-on sentence and the closing 'Ask: What should I do today?' echo the opening, a minor redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description fully compensates by explaining the return shape, section order, and how the 'Start here' item is chosen. Combined with documented parameters, an agent has everything needed to call it correctly.

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 67% and every parameter already has a schema description, so the description's per-parameter prose largely restates defaults (14/14). It does add mild value by clarifying that course_ids limits the digest scope and how the day windows are applied, but this is mostly redundant with the schema.

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 states a specific purpose — a single cross-course digest answering 'what should I do today?' — and spells out its four sections (overdue, due soon, no due date, announcements). It implicitly distinguishes itself from siblings like get_overdue or get_upcoming_due_dates by being the aggregate, but never names those siblings explicitly, 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 Guidelines4/5

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

Usage context is clear via the framing question ('Ask: What should I do today?') and the described scope of the digest. However, there are no explicit exclusions or named alternatives telling an agent when to prefer get_overdue or get_announcements over this aggregate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.