MCP Server to access and distill stuff from my email newsletters
Critical gaps across all dimensions. Tool names lack action verbs (say_smth_stupid, distill_news, get_user_profile, get_emails). Descriptions are present but minimal (10-80 chars, below the 194-char baseline). Input schemas visible for 3/4 tools but lack parameter descriptions entirely, parameters have type info but zero guidance on format, constraints, or purpose. say_smth_stupid has empty input schema {}. No output schemas documented. No error handling guidance. No pagination support despite get_emails returning potentially large result sets. Tool composition is poor: distill_news and get_emails should be one workflow, not separate tools requiring manual chaining.
Retrieve the list of emails from the period specified and filter only those that are relevant to the topic
Get the emails from the period specified. If no period is specified, get the emails from the current day.
Get the user profile from the Gmail client
Returns a stupid message.
Tool names lack action verbs. 'say_smth_stupid' is unprofessional and non-descriptive; 'distill_news' is vague (distill how? from what?). LLMs cannot infer intent from these names.
No parameter descriptions. distill_news and get_emails have typed parameters (emails: array, topic: string, period: string, start_date: string, etc.) but zero guidance on format, constraints, or valid values. LLMs cannot determine what to pass.
say_smth_stupid and get_user_profile have empty or missing input schemas ({}). Cannot verify parameter structure. say_smth_stupid takes no inputs but description is trivial.
No output schemas documented. Callers cannot know what fields to expect from distill_news (returns Email objects?) or get_emails (returns array of what?). Breaks downstream tool chaining.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 27 | <=2025-11-25 | v2 |
get_emails lacks pagination. max_emails defaults to 10 but no limit enforcement, no cursor/offset, no total count. Large result sets will blow context window.