Skip to main content
Glama

delete_note_events

Delete STAS note events. For one specific note, pass external_ids with the exact note:YYYY-MM-DD: id; external_id as one string is accepted as a compatibility alias. Use oldest/newest window deletion only when replacing a whole note set in that date window. Do not delete user-created notes without a note: external_id. dry_run is required: false deletes, true previews only.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
newestNoEnd date for full-window replacement deletes. Required unless external_ids is provided.
oldestNoStart date for full-window replacement deletes. Required unless external_ids is provided.
dry_runYesRequired. false writes to Intervals.icu; true only previews without writing.
external_idNoCompatibility alias for deleting one exact STAS event id. Prefer external_ids for multiple ids.
external_idsNoExact STAS event ids to delete. Use this for deleting specific workouts or notes without clearing the whole day/window.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed1 schema field changed
    • addedInput schema / properties / external_id
      Added value: +{
      +  "anyOf": [
      +    {
      +      "pattern": "^plan:\\d{4}-\\d{2}-\\d{2}:[a-z0-9]+(?:-[a-z0-9]+)*$",
      +      "type": "string"
      +    },
      +    {
      +      "pattern": "^note:\\d{4}-\\d{2}-\\d{2}:[a-z0-9]+(?:-[a-z0-9]+)*$",
      +      "type": "string"
      +    }
      +  ],
      +  "description": "Compatibility alias for deleting one exact STAS event id. Prefer external_ids for multiple ids."
      +}
  2. Changed4 schema fields changed
    • addedInput schema / properties / external_ids
      Added value: +{
      +  "description": "Exact STAS event ids to delete. Use this for deleting specific workouts or notes without clearing the whole day/window.",
      +  "items": {
      +    "anyOf": [
      +      {
      +        "pattern": "^plan:\\d{4}-\\d{2}-\\d{2}:[a-z0-9]+(?:-[a-z0-9]+)*$",
      +        "type": "string"
      +      },
      +      {
      +        "pattern": "^note:\\d{4}-\\d{2}-\\d{2}:[a-z0-9]+(?:-[a-z0-9]+)*$",
      +        "type": "string"
      +      }
      +    ]
      +  },
      +  "maxItems": 20,
      +  "minItems": 1,
      +  "type": "array"
      +}
    • addedInput schema / properties / newest / description
      Added value: +"End date for full-window replacement deletes. Required unless external_ids is provided."
    • addedInput schema / properties / oldest / description
      Added value: +"Start date for full-window replacement deletes. Required unless external_ids is provided."
    • changedInput schema / required
      Previous value: -[
      -  "oldest",
      -  "newest",
      -  "dry_run"
      -]New value: +[
      +  "dry_run"
      +]
  3. Changed2 schema fields changed
    • addedInput schema / properties / dry_run / description
      Added value: +"Required. false writes to Intervals.icu; true only previews without writing."
    • changedInput schema / required
      Previous value: -[
      -  "oldest",
      -  "newest"
      -]New value: +[
      +  "oldest",
      +  "newest",
      +  "dry_run"
      +]
  4. First observed

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It discloses the dry_run behavior ('false deletes, true previews only'), the destructive nature of deletion, and the compatibility alias. It also warns against unsafe deletions without proper IDs. This is strong context, though it doesn't mention irreversibility or error behavior, keeping it at a 4.

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 four sentences, front-loaded with the primary action. Every sentence provides necessary context: the target, ID formats, window deletion conditions, safety warning, and dry_run semantics. No wasted words.

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?

Given the tool's complexity (5 parameters, no output schema, no annotations), the description covers the key operational aspects: how to delete specific notes, how to do window replacement, the dry_run requirement, and a critical safety warning. It does not detail return values or error scenarios, but those are not required and the essentials are all present.

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%, giving a baseline of 3. The description adds meaningful usage semantics: that external_ids should be used for one specific note, external_id is a compatibility alias, and oldest/newest are for full-window replacement only. This clarifies how parameters interact, adding value beyond the schema's individual parameter descriptions.

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 'Delete STAS note events,' which is a specific verb+resource statement. It clearly distinguishes from the sibling tool 'delete_plan_events' by focusing on note events, and further clarifies the exact ID format with 'note:YYYY-MM-DD:<slug>'. This makes the tool's purpose unambiguous.

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?

The description provides explicit guidance on when to use specific IDs versus window deletion ('Use oldest/newest window deletion only when replacing a whole note set in that date window'), and warns against deleting user-created notes without a note: external_id. However, it does not explicitly name alternative tools, so it stops short of a perfect 5.

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.

TDQS

A4.3/5.0
Disambiguation5/5

Each tool targets a distinct resource and action: plan events vs note events, goals/results vs profile sections, preview vs commit, history vs current sections. The boundaries are clearly defined in descriptions, so an agent can reliably select the right tool for a given task.

Naming Consistency5/5

All tool names follow a predictable verb_noun snake_case pattern with consistent verbs (create, delete, get, preview, commit, read, restore, save). The use of 'get' for data retrieval and 'read' for profile-specific history/sections is internally consistent.

Tool Count4/5

At 20 tools, the set is slightly above the typical 3-15 range, but the complexity of the coaching domain justifies the count. The preview/commit pairs and distinct resource types (goals, profile, plan, notes) each earn their place, though the set could be streamlined by merging some read tools.

Completeness4/5

The tool surface covers the main coaching workflows: reading athlete state, managing training plan and notes, editing goals/results, maintaining profile memory, and saving strategy. Minor gaps exist around explicit creation/deletion of goals and profile sections, which are not clearly supported outside the preview/commit flow.

Resources