diff options
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/spec.md | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/docs/spec.md b/docs/spec.md index 80e464b..6d1f3c6 100644 --- a/docs/spec.md +++ b/docs/spec.md @@ -180,6 +180,8 @@ The library should therefore provide reusable primitives for: - render mode selection - detail selection +- explicit projection traits separating domain records from model-facing output +- derive-macro happy paths for concise/full projection structs - bounded/truncated text shaping - stable note emission - path rendering @@ -187,6 +189,16 @@ The library should therefore provide reusable primitives for: - generic JSON-to-porcelain projection for consumers that have not yet earned bespoke renderers +The intended happy path is not “serialize whatever domain object you already +have.” The intended happy path is: + +1. define a model-facing projection +2. declare its surface policy +3. render porcelain from that projection + +Consumers may still use generic JSON fallbacks, but they should feel like an +explicit escape hatch rather than the primary design path. + `libmcp` standardizes only the minimal shared detail axis `concise|full`. Consumers may add richer local taxonomies when their tool surface actually needs them. |