MCP server that provides lifecycle evidence for claims validation using FastMCP with HTTP transport and optional bearer token authentication
Single tool with clear naming (get_lifecycle_evidence) and documented input schema. Description is adequate (71 chars) but lacks WHEN/WHY guidance. Input parameters have types and descriptions, but scope parameter is underspecified (generic dict). Output schema (GetLifecycleEvidenceOutput) is not visible in provided code, only inferred from return type annotation. No error handling guidance, no examples of failure modes, no pagination despite potential for large result sets. Follows basic tool structure but lacks production-grade polish.
Retrieve lifecycle evidence records for a given entity, attribute, and scope
Output schema not documented in source. GetLifecycleEvidenceOutput type is inferred from return annotation but actual field structure, types, and descriptions are not visible. LLMs cannot plan downstream operations without knowing response shape.
scope parameter is a generic dict[str, str] with minimal description. No guidance on valid keys, required vs optional fields, or format constraints. LLMs will guess at scope structure, causing invalid queries.
No pagination support visible. Tool accepts no limit, offset, or cursor parameters. If lifecycle records are numerous, response could exhaust context window. No guidance on result limits or how to handle large datasets.
Tool description lacks WHEN/WHY context. Does not explain when to call this vs alternatives, what prerequisites exist, or what 'lifecycle evidence' means to a user unfamiliar with the domain.
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 60 | 2026-07-28+ | v2 |
No error handling guidance. No documentation of failure modes (entity not found, invalid scope, malformed query). LLMs receive raw errors with no recovery path.