Skip to main content
Glama
j1lt3d

MDBList MCP Server

by j1lt3d

Mark watched

mark_watched

Mark movies or entire TV shows as watched for a user, with optional ISO 8601 watched-at timestamps, to keep their MDBList watch history accurate.

Instructions

Mark movies or whole shows as watched for the user.

Input Schema

NameRequiredDescriptionDefault
showsNoShows
moviesNoMovies

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare this is a non-read-only, non-destructive, non-idempotent, open-world write, so the safety profile is covered. The description adds the useful behavioral hint that a show can be marked as a whole rather than episode-by-episode. It does not explain what happens when watched_at is omitted (defaults to now?), whether existing history is overwritten given idempotentHint=false, or what happens to partially-watched show state.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler and the key distinction stated immediately. It is efficient, though so terse that the efficiency shades into under-specification.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-array mutation tool with full schema coverage, no output schema, and complete annotations, the essentials are present. Missing pieces an agent would want: whether watched_at defaults to the current time, whether marking a show cascades to episodes, and whether repeated calls duplicate history (relevant given idempotentHint=false).

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 description coverage is 100%, including ID examples and the ISO 8601 format for watched_at, so the schema carries the parameter burden. The description only adds the mapping of 'movies' and 'whole shows' to the two arrays, with no extra detail on the watched_at default or whether either array may be empty (0 required params).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb (mark) plus resource (movies / whole shows) and the target (for the user). The 'movies or whole shows' distinction is genuinely informative and maps to the two top-level params. It stops short of naming the obvious sibling unmark_watched, so the inverse operation is left to inference.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by the name and one-liner: use it to record viewings. There is no explicit when-to-use versus rate_media, no note on whether marking a show also marks its episodes, and no guidance about authentication/current-user context despite the 'for the user' phrasing.

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