Analytics layer for agentic developers — reads Claude Code JSONL files and generates stats cards via shipcard
ShipCard MCP provides three read-only analytics tools with reasonable naming (verb_noun pattern: summary, costs, card) and consistent parameter schemas. All tools have descriptions (194 - 250 chars, within baseline 34 - 392 range) and input schemas with typed parameters. However, output schemas are not documented in the visible code, parameter descriptions lack actionable constraints (e.g., date format examples, enum values for 'layout', 'style', 'theme'), and error handling guidance is absent. The 'card' tool has 6 parameters but no documentation of mutual exclusivity or defaults. No tool declares permissions or risk levels explicitly in descriptions.
Generate SVG stats card for your README
Show cost breakdown by project and by model
Show session overview: sessions, tokens, models, cost, tool calls
Output schemas not documented. LLMs cannot plan downstream operations or extract fields without knowing what each tool returns. All three tools lack return type documentation.
Parameter constraints missing. 'layout', 'style', 'theme' accept free-form strings instead of enums. 'since'/'until' accept 'relative' dates (7d, 30d, today) but format is not formally constrained. LLMs will hallucinate invalid values.
No error handling guidance. Tools do not document what happens if projectsDir is invalid, date parsing fails, or SVG rendering errors occur. LLMs have no recovery path.
'card' tool has 6 parameters with complex interdependencies (layout determines valid heroStat; 'hide' array excludes stats). Dependencies are not documented, risking invalid parameter combinations.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 50 | 2026-07-28+ | v2 |
No pagination or result limits documented. If Claude Code projects directory contains thousands of sessions, tools may return unbounded results, exhausting context window.