TimeMCP has 3 well-named tools with clear descriptions and documented input schemas. All tools follow verb_noun naming (get_, convert_, describe_) and include parameter type definitions. However, output schemas are not documented, the response structure is not visible in the source. Parameter descriptions are present but vary in detail. Notably, 'describe_time' has an exceptionally detailed description (450+ chars) that exceeds the 200-char baseline but compensates with genuine clarification of supported formats. Tool annotations (readOnlyHint) are correctly declared for all tools. No error handling guidance is present in descriptions, and some parameters lack constraints (timezone accepts free-form strings with no validation hints).
Convert time between timezones.
Parse a flexible date/time string and describe how it relates to now. Returns a machine-usable RFC 3339 timestamp alongside human-friendly prose and a perspective phrase, so the caller never needs to do date arithmetic. Supports both absolute dates (e.g. "July 4th, 1776", "22:08", "Thursday, July 20 2026") and relative phrases ("now", "today", "tomorrow", "yesterday", "next/last/this <weekday>", bare "<weekday>", "in N minutes/hours/days/weeks/months/years", "N ... ago", "next/last week/month/year", optionally suffixed with "at <time>"). Ambiguous inputs (weekday mismatch, mm/dd vs dd/mm, year-less dates far in the past) return labeled candidates instead of guessing.
Get current time in a specific timezone or system timezone.
Output schemas not documented. No visible response schema for any tool, preventing LLMs from planning downstream calls or understanding available fields for chaining.
Timezone parameter accepts free-form strings with no validation hints or format constraints in descriptions. Risk of invalid timezone strings being passed without LLM guidance on valid options.
No error handling guidance in tool descriptions. Descriptions do not explain what errors could occur (e.g., invalid timezone) or how LLMs should recover.
convert_time uses empty string defaults ('') for source_timezone and time. Empty strings are not equivalent to unset parameters and may confuse LLMs expecting null or actual defaults.
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | C | 62 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 42 | - | v1 |