13-week cash flow plan — MCP server. Builds a 13-week cash flow plan: week-by-week closing balance, the week cash goes negative, peak funding need, and a live Excel workbook with real formulas.
Two tools with reasonable structure but significant gaps. 'health' is minimal (enum param, no output schema documented). 'build_cashflow_plan' has comprehensive input schema with 13 parameters, good descriptions (50-150 chars each), and clear intent, but lacks documented output schema. No error handling guidance, no tool annotations. Naming is clear (verb_noun pattern). Parameter descriptions are actionable with format hints (YYYY-MM-DD, 0-6 range). However, union types for receipts/revenue/payroll/etc. lack clarity on when to use each variant, dependencies undocumented. Output is generated as markdown table + text, but schema not formally declared.
13-Week Cash Flow Plan. Ask the user for the figures one at a time; call the tool once you have the opening balance plus receipts and supplier payments — payroll, loans and taxes default to zero if not given.
Health check endpoint that returns service status, version, and supported locales.
Output schemas not documented. 'health' and 'build_cashflow_plan' return structured data (JSON object with fields, markdown table, levers text) but no formal schema is declared in tool registration. LLMs cannot plan downstream operations or extract fields reliably.
Mutually exclusive parameters undocumented. 'receipts' vs 'revenue' (both optional, one requires dsoDays), 'supplierPayments' vs 'purchases' (both optional, one requires dpoDays). LLMs will pass both or neither, causing silent misuse. Dependencies must be explicit in descriptions.
Union type parameters lack clarity. 'receipts', 'revenue', 'payroll', etc. accept 'one number for every week, or 13 weekly values' but no guidance on which form to use when. Should clarify: use single number for constant weekly amount, array for variable weeks.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 57 | 2026-07-28+ | v2 |
No error handling guidance. Tool descriptions do not explain what happens on invalid input (e.g. negative opening balance, invalid date format, mismatched array lengths). No recovery hints for LLM.
No tool annotations. Neither tool declares readOnlyHint, destructiveHint, or idempotentHint. 'health' is clearly read-only; 'build_cashflow_plan' is read-only (generates plan, no state mutation) but not annotated. Agents cannot infer safety properties.