Skip to main content
Glama

Add commitment

add_commitment
Destructive

Track a personal commitment, deadline, birthday, appointment, or obligation. ALWAYS use this (not save_knowledge) when the user mentions: birthdays, due dates, deadlines, tax filings, events to plan, gifts to send, things they need to do by a certain date, or anything they want reminded about. Works across all life domains (work, personal, family, home). For supporting context (e.g. gift ideas, who the person is), pair this with save_knowledge scope="personal".

[write-tier — first use may require a manager's approval; a from-now-on approval makes future calls seamless, a just-once approval re-asks next time. Call it on the first clear ask; the card is the yes — do not re-ask in chat.]

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
titleYesWhat needs to happen
domainNoLife domain: personal, family, home, w2, or company:<name>
due_dateNoDue date in YYYY-MM-DD format (optional). Accept approximate phrasing (e.g. "end of month" = last day). For EVENTS (birthday, anniversary, party, graduation, wedding, holiday gathering) this is the PREP deadline, not the event date — default to ~7 days before the event (confirm with the user) unless they say to use the actual date; store the actual event date in description.
companyIdNoFreedomOS company id to act within (you must be a member). Required for company-scoped tools.
consequenceNoWhat happens if this slips? (optional; infer if obvious, e.g. "late filing penalty")
descriptionNoAdditional details or notes (optional). For event reframes, record the actual event date here (e.g. "Event date: Mar 29"). If the commitment recurs (explicit cue like "every year", or inherently recurring — birthdays, tax deadlines, renewals, licenses, insurance, enrollment), prepend "Recurring: annual|monthly|weekly|quarterly" as the first line — complete_commitment reads this tag to auto-roll the next occurrence forward.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • changedInput schema / properties / consequence / description
      Previous value: -"What happens if this slips? (optional)"New value: +"What happens if this slips? (optional; infer if obvious, e.g. \"late filing penalty\")"
    • changedInput schema / properties / description / description
      Previous value: -"Additional details or notes (optional)"New value: +"Additional details or notes (optional). For event reframes, record the actual event date here (e.g. \"Event date: Mar 29\"). If the commitment recurs (explicit cue like \"every year\", or inherently recurring — birthdays, tax deadlines, renewals, licenses, insurance, enrollment), prepend \"Recurring: annual|monthly|weekly|quarterly\" as the first line — complete_commitment reads this tag to auto-roll the next occurrence forward."
    • changedInput schema / properties / due_date / description
      Previous value: -"Due date in YYYY-MM-DD format (optional)"New value: +"Due date in YYYY-MM-DD format (optional). Accept approximate phrasing (e.g. \"end of month\" = last day). For EVENTS (birthday, anniversary, party, graduation, wedding, holiday gathering) this is the PREP deadline, not the event date — default to ~7 days before the event (confirm with the user) unless they say to use the actual date; store the actual event date in description."
  2. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false, idempotentHint=false, so the write nature is known. The description adds valuable behavioral context: approval requirements ('first use may require a manager's approval'), the 'card is the yes — do not re-ask' behavior, and the recurring-tag convention that complete_commitment reads. It doesn't contradict annotations. A small gap: it doesn't explicitly state what happens on approval denial, but the approval behavior is well covered.

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 description is dense but well-organized: purpose first, then usage triggers, then pairing guidance, then approval behavior. Every sentence earns its place, though the approval note is a bit long and could be tightened. The front-loading of 'ALWAYS use this (not save_knowledge)' is effective.

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 6-param write tool with no output schema, the description covers the key decision points: when to use, how to handle event dates, how to mark recurring commitments, and approval behavior. It doesn't explain return values, but there's no output schema and the 'card is the yes' hints at the result. Minor gaps: no explicit mention of what happens if the user is ambiguous about the prep deadline, but the 'confirm with the user' instruction covers it.

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 description coverage is 100%, so the schema already documents all 6 parameters. The description adds meaningful semantic value beyond the schema: it explains the due_date prep-deadline reframing for events (default ~7 days before, store actual date in description), the recurring-tag convention for description, and the domain field's scope. This goes beyond baseline 3 by clarifying non-obvious parameter behavior.

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?

The description states a specific verb and resource ('Track a personal commitment, deadline, birthday, appointment, or obligation') and explicitly distinguishes it from save_knowledge by listing concrete triggers (birthdays, due dates, deadlines, tax filings, events to plan, gifts to send). This makes the tool's purpose unmistakable and differentiates it from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

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

The description explicitly says 'ALWAYS use this (not save_knowledge) when the user mentions...' and provides a list of examples. It also gives guidance on pairing with save_knowledge for supporting context, and explains approval behavior ('call it on the first clear ask; the card is the yes — do not re-ask in chat'). This is exemplary usage guidance.

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