Create, update or delete a schedule block
goalslot_manage_schedule_blockCreate, update, or delete blocks in a repeating weekly schedule template, with conflict detection and dry-run validation before committing changes.
Instructions
WRITES. Creates, updates or deletes one block in the weekly schedule template. The GoalSlot schedule is a REPEATING WEEKLY TEMPLATE, not a calendar of dated events. A block on Tuesday 09:00-12:00 happens every Tuesday. There is no way to schedule something for one specific date. Adding a block therefore changes every future week, not one date. Say that back to the user before you commit a plan. Overlapping an existing block is rejected with SCHEDULE_CONFLICT. On a conflict, re-read that day with get_schedule and shift your proposal. Never delete the incumbent block to make room without asking. Use dryRun true to validate a whole proposed week and show it to the user before writing anything. Blocks count against the plan limit in get_context, so stop one short of it rather than erroring into it. action "delete" removes a single block. There is no way to clear the whole schedule from this server, deliberately.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| color | No | Optional hex color such as #FFD700. | |
| title | No | Required for create. What the block is for, such as "Deep Work". | |
| action | Yes | What to do with the block. | |
| dryRun | No | When true nothing is written. The tool validates the arguments and returns exactly what it would have done. Use this to show the user a plan before committing to it. | |
| goalId | No | Link the block to a goal so schedule adherence reports can compare planned against logged. | |
| blockId | No | Required for update and delete. Get it from get_schedule. | |
| endTime | No | Required for create. 24-hour HH:mm wall-clock, for example 12:00. Must be after startTime. | |
| category | No | Required for create. A value from get_context.categories[].value. | |
| dayOfWeek | No | Required for create. 0 = Sunday through 6 = Saturday. | |
| isPrivate | No | Hide this block from anyone the user has shared their workspace with. | |
| startTime | No | Required for create. 24-hour HH:mm wall-clock, for example 09:00. | |
| updateScope | No | update only. "single" changes just this block, "series" changes every block linked by seriesId. Defaults to single. |