MCP server for operational audit and ROI-ranked recommendations across sales, ops, and finance departments. Ingests CSV/JSON data, runs audits, and generates actionable recommendations.
Three tools with basic descriptions and minimal input schemas. load_sales_data has a single string parameter with description; run_audit and get_recommendations have empty input schemas ({}). Descriptions are present but brief (60-90 chars), lacking WHEN to use, prerequisites, or error recovery guidance. No output schemas documented. No parameter constraints (enums, ranges). Tool names follow verb_noun pattern (load_, run_, get_) but descriptions do not explain dependencies or state-mutation side effects. No tool annotations (readOnlyHint, destructiveHint). Error handling exists (isError flag) but messages are generic ('No data loaded'). Overall: functional but minimal, typical of early-stage demo servers.
Turn the most recent audit findings into ranked, actionable recommendations for the sales org.
Ingest a client's sales data from a CSV or JSON file (columns: id, rep, stage, dealValue, daysInStage, outcome, createdAt).
Analyze the currently loaded sales data for pipeline bottlenecks and low win-rate stages, ranked by estimated ROI.
run_audit and get_recommendations have empty input schemas ({}).
No output schemas documented. LLMs cannot infer what fields to expect from responses (e.g., structure of findings, recommendations). Blocks downstream tool chaining and forces LLM to parse unstructured JSON.
Descriptions lack WHEN to use and prerequisites. 'Analyze the currently loaded sales data' does not explain that run_audit requires load_sales_data to be called first, or that get_recommendations requires run_audit. Agents must infer dependencies.
load_sales_data accepts filePath as a free-form string with no format constraints, validation rules, or examples. Description does not specify expected file format (CSV vs JSON), required columns, or error cases (file not found, malformed data).
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 44 | 2026-07-28+ | v2 |
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). All three tools are read-only but this is not declared in the tool definition, forcing LLMs to infer safety from descriptions alone.