A tool for managing YouTube videos with a focus on editing video details.
Server has well-structured schemas with proper types and constraints (min/max on integers, enums for privacy_status and order). Descriptions are present and reasonably detailed (avg ~120 chars). However, parameter descriptions lack actionable guidance on format/constraints (e.g., 'ISO 8601 formatted date' stated but no validation hints). Output schemas are not documented, responses are inferred from code but not formally specified. Error handling returns generic success/error dicts without recovery guidance. Tool composition is sound (6 focused tools, clear verb-noun naming), but destructive operations (delete_video) lack confirmation patterns.
Delete a YouTube video.
Get detailed information about a specific YouTube video.
List your uploaded YouTube videos.
Search for YouTube videos using keywords and filters.
Set a custom thumbnail for a YouTube video.
Update a YouTube video's metadata including title, description, tags, and privacy settings.
Output schemas not documented. Code shows responses return dicts with 'success', 'videos', 'error' fields, but LLMs cannot see the structure of nested 'videos' object or what fields each video contains. This forces LLMs to guess at downstream field names.
delete_video lacks confirmation or dry-run pattern. Destructive operations should support a confirmation step to prevent accidental deletion. No recovery guidance in error responses.
Error responses are generic dicts with 'success' and 'error' fields. No categorization (retryable vs fatal), no actionable recovery hints. E.g., 'Error updating video: 403' tells LLM nothing about whether to retry, ask user, or give up.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 55 | <=2025-11-25 | v2 |
Parameter descriptions state format (e.g., 'ISO 8601 formatted date') but lack validation constraints or examples of valid input. 'published_after' and 'published_before' should include regex pattern or explicit format hint in description.
set_video_thumbnail accepts 'file_path' as string but does not document accepted formats (JPEG, PNG, etc.), max file size, or resolution requirements. LLMs will guess and fail.