Skip to main content
Glama

Set work package reminder

set_work_package_reminder
Idempotent

Set, change, or clear your private reminder on a work package. Get notified at your chosen time with an optional note.

Instructions

Set, change or clear your personal reminder on a work package.

Use this when something should resurface later: "remind me about this on Monday", "ping me an hour before the release". Reminders are private — only you see yours, and only you are notified. The tool upserts: it looks for your active reminder on the work package and creates one if there is none, updates it if there is. Returns action (created/updated/deleted/unchanged) and the resulting reminder.

Passing remind_at=null deletes the reminder. That is the documented way to clear it rather than a destructive operation — nothing but your own pending notification is removed, the work package and its history are untouched — so this tool does not ask for confirm. Set a new time to get it back.

Pitfalls. OpenProject allows exactly one active reminder per work package per person, so a second "create" becomes an update of the first — there is no way to stack two. remind_at must carry a timezone; a bare '2026-08-03T09:00' is refused rather than guessed at. A reminder in the past is rejected by the instance. Once a reminder has fired it disappears from the API, so a later call creates a fresh one rather than reviving it. Reminders are personal: you cannot set one for a colleague — add them as a watcher or mention them in a comment instead.

Cross-references: list_reminders shows everything you have pending; add_work_package_watcher notifies someone about changes rather than at a chosen time; add_work_package_comment with an @-mention is how you get another person's attention.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
noteNoShort text shown with the reminder ('check the staging deploy'). Omit to leave an existing note untouched; pass an empty string to clear it.
remind_atNoWhen to be reminded, as an ISO 8601 datetime WITH a timezone, e.g. '2026-08-03T09:00:00Z'. Pass null to delete the existing reminder. Omit the parameter entirely to keep the current time and only change the note.__unchanged__
work_package_idYesWork package to be reminded about. Ids come from search_work_packages, list_work_packages or get_work_package.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionYesWhat actually happened: 'created' a new reminder, 'updated' the existing one, 'deleted' it, or 'unchanged' when there was nothing to clear.
messageYesHuman-readable confirmation.
reminderNoThe reminder after the call; the deleted one when action='deleted', null when there was none.
work_package_idYesWork package whose reminder was set or cleared.
Behavior5/5

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

The description discloses far more than annotations alone: it explains the upsert semantics (creates or updates), that passing null deletes the reminder, why no confirm is needed (only the personal notification is removed), the one-active-reminder-per-person limit, timezone requirements, past-rejection behavior, and that fired reminders disappear from the API. This is rich context beyond the readOnlyHint/idempotentHint annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is longer than average, but every sentence earns its place. It is front-loaded with the core purpose, followed by usage, a clear explanation of the null behavior, and a structured 'Pitfalls' section. Each paragraph has a distinct role, making it easy to scan and digest without wasted words.

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?

Given the tool's complexity, the description is exceptionally complete. It covers behavior, edge cases, personal nature, alternatives, and even mentions the return value ('Returns action (created/updated/deleted/unchanged) and the resulting reminder'). The output schema exists, so return details are not required, but the description still provides enough context for correct invocation.

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?

The input schema already provides 100% coverage with detailed descriptions for all three parameters. The description does add extra nuance not in the schema: clarifying timezone refusal ('a bare '2026-08-03T09:00' is refused rather than guessed at'), past reminders being rejected, and the inability to stack reminders. This goes beyond a simple restatement, though the schema does most of the heavy lifting.

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 opens with a specific verb and resource: 'Set, change or clear your personal reminder on a work package.' It immediately distinguishes the tool from siblings by clarifying it handles personal reminders, and the cross-references at the end (list_reminders, add_work_package_watcher, add_work_package_comment) reinforce the differentiation.

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?

Explicit guidance is given: 'Use this when something should resurface later' with concrete examples. The description also provides clear exclusions and alternatives: reminders are personal, so for a colleague use add_work_package_watcher or add_work_package_comment with an @-mention, and list_reminders shows all pending reminders.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kar-thik/openproject-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server