Turn YouTube, Bilibili, and RSS sources into readable digests, traceable job runs, and searchable knowledge for operators and agents.
BrewMe exhibits significant definition quality gaps across all dimensions. While 21 tools are registered with basic descriptions (10-50 chars, well below the 194-char baseline), most lack depth and actionable guidance. Input schemas are present but minimal: parameters have types and brief descriptions, but lack enums for constrained values, format specifications, and dependency documentation. Output schemas are entirely undocumented, LLMs cannot predict response structure or chain tools effectively. Error handling is absent; no recovery guidance, categorization, or actionable error messages. Naming is generally verb-first (good), but several tools conflate multiple concerns (e.g., 'computer_use' with generic 'action' parameter). No evidence of idempotency guarantees, pagination support, or rate-limiting. Security concerns: 'computer_use' and 'ingest_content' accept broad parameters without validation hints. Overall, this server reads as a rapid prototype rather than production-grade tooling.
Audit UI components for accessibility and performance
Execute computer use actions for automation
Create a new subscription for a feed source
Delete a subscription
Generate a report from ingested content
Retrieve a specific artifact
Get the status of a specific job
Check the health status of the BrewMe API
Output schemas completely undocumented. LLMs cannot predict response structure, field names, or types. Breaks tool chaining and forces agents to guess downstream parameter mappings.
Descriptions are generic and under 50 chars (baseline 194 chars). Examples: 'Check the health status of the BrewMe API' (44 chars), 'List all subscriptions or filter by enabled status' (50 chars). Lack actionable guidance on WHEN to call, WHAT it returns, and dependencies.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 45 | 2026-07-28+ | v2 |
Ingest content from a URL or feed
List generated artifacts and reports
List feeds from subscriptions
List ingestion or processing jobs
List notifications and alerts
List all subscriptions or filter by enabled status
List available workflows
Mark a notification as read
Read and extract content from an article URL
Retrieve full content of a knowledge item
Search the knowledge base for relevant content
Start a workflow execution
Update an existing subscription
No enum constraints on string parameters. 'platform' in create_subscription accepts free-form strings (should be enum: youtube|bilibili|rss). 'status' in list_jobs, 'audit_type' in audit_ui, 'action' in computer_use all lack enums. Invites hallucinated invalid values.
No error handling guidance. Tools provide no recovery hints, error categorization, or actionable messages. An LLM receiving 'Invalid subscription_id' has no path forward, should it retry, search first, or ask the user?
'computer_use' tool conflates multiple concerns with a generic 'action' parameter and untyped 'parameters' object. Violates single-responsibility principle. Lacks validation hints, security boundaries, and error recovery paths.