Save Event
save_eventUse this when a user confirms they want to save one Dizko event to the connected user's account only after explicit confirmation.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| event_id | Yes | ||
| confirmed | Yes | ||
| idempotency_key | Yes |
save_eventUse this when a user confirms they want to save one Dizko event to the connected user's account only after explicit confirmation.
| Name | Required | Description | Default |
|---|---|---|---|
| event_id | Yes | ||
| confirmed | Yes | ||
| idempotency_key | Yes |
Changes observed during successful MCP inspections.
Input schema / properties / event_id / maxLengthAdded value: +200Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already disclose the write/idempotent/non-destructive profile (readOnlyHint=false, idempotentHint=true, destructiveHint=false), so safety is covered structurally. The description adds the confirmation precondition, which is genuine behavioral context. It omits, however, any explanation of what the idempotency_key guarantees or what happens on a repeated call.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the trigger condition first and no filler. It is terse to the point of under-specification, but not padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with annotations but no output schema and three undocumented parameters, the description should at least explain the idempotency key and confirm flag semantics. It covers the confirmation requirement, which is the most important behavioral gate, but leaves real gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across three required parameters, so the schema provides only types and lengths. The description touches the confirm concept indirectly via 'explicit confirmation' but never explains event_id, the confirmed flag, or the idempotency_key's purpose or constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (save) and resource (one Dizko event) and scopes it to the connected user's account. It does not, however, distinguish itself from close siblings like add_to_dizko_plan or save_event_preferences, which an agent could easily confuse with this one.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It supplies one real usage condition — only after explicit user confirmation — which is useful trigger guidance. But it names no alternatives and gives no when-not guidance, so an agent still has to infer how save_event differs from add_to_dizko_plan or save_event_preferences.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.