Remote MCP server for Family Dash (claude.ai custom connector) — provides tools for managing family shopping lists, dinners, and meal planning via Firebase Firestore
Family Dash MCP server has 15 tools with consistent naming (verb_noun pattern) and reasonable descriptions (avg ~120 chars). All tools have input schemas with type definitions and parameter descriptions. However, output schemas are not documented in the source code, parameter descriptions lack actionable constraints (enums, ranges, formats), and error handling guidance is minimal. No tool annotations (readOnlyHint/destructiveHint) despite clear risk classifications. Composition is sound, tools are single-responsibility and chainable via IDs. Security baseline met (no secrets in params, Firebase auth via env vars). Descriptions are functional but generic; they lack LLM-optimized guidance on when to use each tool vs. similar ones.
Add a new dinner (recipe) to the family's archive
Add a dinner from the archive to the family's meal plan for a specific week
Add an item to the family's shopping list for a given week, with optional category and quantity
Remove a dinner from the family's archive
Remove an item from the family's shopping list
Fetch an image URL for a dish name from Unsplash, with automatic translation to English
Fetch the family's dinner archive (saved recipes and meal ideas)
Output schemas not documented. LLMs cannot plan downstream tool calls or extract required fields (e.g., what fields does get_shopping_list return? Is there pagination?). Violates pattern:tool and pattern:response-shaper.
Parameter descriptions lack actionable constraints. 'date' is described as 'ISO date string (YYYY-MM-DD)' but no validation guidance. 'quantity' has no min/max bounds. 'dayOfWeek' accepts 'mon', 'tue', etc. but should be an enum. Violates pattern:constrained-input.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk classifications (READ_ONLY, WRITE, DESTRUCTIVE). Agents cannot infer safety properties. Violates current MCP spec (2026-07-28) tool annotation requirement.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 56 | 2026-07-28+ | v2 |
Fetch the family's shopping list categories
Fetch the family's current shopping list for a given week, with items grouped by category
Fetch the family's meal plan for a given week
Remove a dinner from the family's meal plan for a specific day
Match a product name against the family's category memory and known items, returning the canonical name and category
Record or update a product name in the family's category memory for future matching
Update an existing dinner entry in the archive
Update an existing shopping list item (quantity, checked status, or category)
Error handling lacks recovery guidance. No indication of retryable vs. fatal errors, no actionable error messages (e.g., 'Invalid dayOfWeek: got "monday", must be one of: mon, tue, wed, thu, fri, sat, sun'). Violates pattern:recovery-guide.
Descriptions are generic and lack LLM-optimized guidance on when to use each tool. E.g., 'resolve_known_item' vs 'update_category_history', when should an agent call one vs. the other? Violates pattern:tool-description (WHEN to use).