Model Context Protocol server for Adobe Customer Journey Analytics (CJA) that enables LLMs to perform advanced data analytics queries
Scoring was not performed
Output schemas not documented. Tools lack explicit response type documentation, forcing LLMs to infer what fields will be returned. This breaks downstream tool chaining and wastes tokens on discovery.
Type parameter for create/update tools lacks enum constraints. 'type' parameter in create_calculated_metric_tool accepts 'decimal, percent, integer, currency' but no enum is defined. Free-form strings invite hallucinated values.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 22 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 49 | - | v1 |
Polarity and expansion parameters lack enum constraints. 'polarity' documented as 'positive or negative' but not formally constrained. 'expansion' accepts string values but valid options not enumerated.
No error handling guidance. Tool descriptions do not indicate what errors can occur, whether they are retryable, or what recovery steps the LLM should take. Example: create_calculated_metric_tool provides no guidance on validation failures.
Pagination inconsistent across list tools. 'limit' and 'page' parameters present in list_calculated_metrics_tool and list_segments_tool but absent in list_dimensions_tool and list_metrics_tool. No total count or next_cursor documented in any response.
No validation or constraint documentation for complex parameters. 'definition' parameter in create_calculated_metric_tool and create_segment_tool is typed as 'object' with minimal guidance. No schema, format, or examples provided despite tool descriptions explicitly noting definitions are complex.
Date format not formally specified. 'start_date' and 'end_date' parameters in run_report_tool and get_top_items_tool documented as 'YYYY-MM-DD' in text but no JSON Schema format constraint (format: date). LLMs may pass invalid formats.
No idempotency guidance. Tools with side effects (create_calculated_metric_tool, create_segment_tool, update_*_tool) lack documentation on idempotent behavior. LLMs may retry and create duplicates on ambiguous failures.
No tool composition hints. Descriptions do not guide which tools should be called before others. Example: create_calculated_metric_tool recommends validate_calculated_metric_tool first, but no dependency chain is documented for users unfamiliar with CJA.
Numeric parameter ranges not specified. 'limit' and 'page' parameters lack min/max constraints. No documentation of reasonable bounds (e.g., is limit capped at 1000? Can page be negative?).