Skip to main content
Glama

Create, update or delete a schedule block

goalslot_manage_schedule_block

Create, 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

TableJSON Schema
NameRequiredDescriptionDefault
colorNoOptional hex color such as #FFD700.
titleNoRequired for create. What the block is for, such as "Deep Work".
actionYesWhat to do with the block.
dryRunNoWhen 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.
goalIdNoLink the block to a goal so schedule adherence reports can compare planned against logged.
blockIdNoRequired for update and delete. Get it from get_schedule.
endTimeNoRequired for create. 24-hour HH:mm wall-clock, for example 12:00. Must be after startTime.
categoryNoRequired for create. A value from get_context.categories[].value.
dayOfWeekNoRequired for create. 0 = Sunday through 6 = Saturday.
isPrivateNoHide this block from anyone the user has shared their workspace with.
startTimeNoRequired for create. 24-hour HH:mm wall-clock, for example 09:00.
updateScopeNoupdate only. "single" changes just this block, "series" changes every block linked by seriesId. Defaults to single.
Behavior5/5

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

The description discloses critical behaviors beyond the annotation flags: the template is repeating (every Tuesday), there is no single-date scheduling, conflicts reject with SCHEDULE_CONFLICT, dryRun writes nothing, and delete only removes one block. It also explicitly says 'WRITES' at the start, matching readOnlyHint=false without contradiction.

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?

Though lengthy, every sentence is purposeful and action-oriented. It front-loads the most critical context ('WRITES' and the repeating template) and then systematically covers conflict, dryRun, plan limits, and delete semantics. No filler or repetition of schema content.

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?

For a complex mutation tool with 12 parameters and no output schema, this description covers all operational essentials: the template semantics, how to handle conflicts, how to validate with dryRun, the plan limit, and the delete/clear limitations. It references related tools (get_schedule, get_context) appropriately, leaving no gap an agent would need to guess.

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 coverage is 100% with each parameter already described (e.g., required for create/update, formats, meanings). The description adds marginal parameter-specific detail, like the nuance of 'action delete removes a single block' and updateScope behavior, but the bulk of parameter meaning is already in the schema, so a baseline of 3 is appropriate.

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 clearly states the verb (create, update, delete), the resource (one block in the weekly schedule template), and the key distinguishing property: it operates on a repeating weekly template, not calendar dates. This alone separates it from any dated-event tool and matches its siblings like get_schedule.

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?

Provides explicit when-to-use and when-not-to-use guidance: use dryRun to validate a whole week before writing, re-read with get_schedule on conflict, stop one short of the plan limit, and never delete an incumbent block without asking. It also states that there is no way to clear the whole schedule, which prevents misuse.

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/ZeeshanAdilButt/goalslot-mcp'

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