LogicSpec workspace tools for querying feature specifications, validating features, inspecting steps, transitions, service dependencies, and events. Exposes a YAML DSL for describing application feature logic with validation, visualization, and behavioral source of truth capabilities.
LogicSpec MCP exposes 7 well-named, read-only tools for feature specification introspection. All tools follow verb_noun naming (list_features, get_feature, validate_feature). Descriptions are present and substantive (avg ~120 chars), explaining WHAT each tool does and WHEN to use it. However, input schemas are minimal: most tools accept only a 'feature' string parameter with basic description. Output schemas are entirely undocumented, LLMs cannot infer what fields to expect from get_feature, get_step, or get_transitions. Parameter descriptions lack format constraints, ranges, or examples. Error handling is not visible in the provided code. No tool annotations (readOnlyHint, etc.) despite all being read-only. Composition is sound, tools chain logically (list → get_feature → get_step → get_transitions). Overall: solid naming and intent clarity, but schema documentation and error guidance are missing.
Events a feature publishes and waits for, with their catalog definitions (topic, producer, consumers, description) when available.
Full structured model of one feature: steps, edges, terminals, context, services, events, agent zones and stats. This is the machine-readable source of truth for the feature's behavior.
Services and operations a feature calls; without a feature argument, one entry per feature in the workspace.
One step of a feature: its definition exactly as authored, every outgoing transition, and the agent zone it belongs to (when any).
Edges of a feature's graph, optionally filtered to those leaving one step.
List every feature specification in the LogicSpec workspace: id, file, display name and whether it currently validates.
Output schemas completely undocumented. LLMs cannot infer what fields get_feature, get_step, get_transitions, get_service_dependencies, get_events, or validate_feature return. This forces agents to guess at response structure and breaks downstream tool chaining.
Input parameter descriptions lack format constraints, ranges, or examples. 'Feature id or file stem within the workspace, e.g. "booking"' includes an example value (booking) that LLMs may reuse literally. Should use enum or pattern constraint instead.
No tool annotations despite all 7 tools being read-only. Missing readOnlyHint would help agents understand these tools are safe to call without side effects.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | 2026-07-28+ | v2 |
Validate one feature specification: parse, schema, and semantic checks. Returns diagnostics (errors, warnings, info) with line/column locations and suggestion text when available.
Error handling not visible in source. No evidence of recovery guidance, error classification, or actionable error messages. If a feature is not found or validation fails, agents have no guidance on next steps.
get_service_dependencies accepts optional 'feature' parameter but description does not explain behavior when omitted. Does it return dependencies for all features? Only the workspace? Ambiguous.