Skip to main content
Glama
cotletdev

Fresha MCP Server

Add blocked time

add_blocked_time

Blocks a one-day slot on a team member's calendar to prevent bookings, with an optional title, team note, and setting to allow online booking.

Instructions

Block a time slot in a team member's calendar so nobody books it.

Adds blocked time as Add > Blocked time in the calendar does: one block on one day for one team member, with a title and a note for the team. It does not repeat. Clients cannot book it online unless allow_online_booking is true. Nobody is told.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
titleNoReason shown on the calendar, e.g. Lunch.
end_atYesEnd on the same day. ISO 8601 like start_at.
start_atYesStart, ISO 8601: 2026-11-03T14:30 is wall clock in the business's time zone; with an offset (2026-11-03T14:30:00+01:00) it is converted.
descriptionNoNote your team sees on the block.
team_member_idYesTeam member id from list_team_members.
allow_online_bookingNoClients may still book this time online. Default: false.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/5.0
Behavior4/5

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

Beyond the annotations (readOnly=false, idempotent=false, destructive=false), the description discloses concrete side effects: single non-recurring block, one day only, no notification sent to anyone, and client bookability gated by allow_online_booking. It does not cover edge behavior such as overlapping an existing appointment or validation failures, which keeps it off a 5.

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?

Two short sentences in the first paragraph carry the core purpose and scope, followed by a compact paragraph of behavioral caveats. No filler, no restatement of the title, and the most important constraint (blocks booking) is front-loaded.

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 six-parameter mutation with no output schema, the description covers purpose, scope limits, notification behavior, and the booking flag — enough to invoke it correctly. The remaining gap is what a caller gets back and how conflicts with existing appointments are handled.

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 coverage is 100%, so baseline is 3; the description still adds intent-level meaning by framing the record as 'one block on one day for one team member' (constraining end_at to the same day) and explaining the practical consequence of allow_online_booking rather than just its default. The 'title and a note for the team' phrasing also clarifies the split between title and description.

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?

Opens with a specific verb and resource plus the user-visible effect: 'Block a time slot in a team member's calendar so nobody books it.' This is clearly distinguishable from booking siblings like create_appointment and from find_available_slots, which read availability rather than create blocks.

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?

Anchors the tool to the product's 'Add > Blocked time' action and states key exclusions ('It does not repeat', 'Nobody is told'), which tell an agent this is not a recurring or notifying operation. It stops short of naming sibling tools or an explicit when-not-to-use condition (e.g. vs. reschedule_appointment).

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