Server defines 5 tools with clear verb-noun naming (lookup_, get_, check_, generate_, search_). All tools have descriptions (194 - 250 chars, within baseline 34 - 392 range) and input schemas with type and description fields. However, output schemas are completely undocumented, no return type specifications visible in code. Parameter descriptions are present but minimal (20 - 40 chars), lacking format constraints, ranges, or dependency hints. No error handling guidance, no pagination support for search_guidelines, and no idempotency markers. Tools are READ_ONLY (good security posture) but lack tool annotations (readOnlyHint). Overall: solid naming and basic schema structure, but missing output documentation and LLM-optimized descriptions.
Check if a regulatory submission meets ICH guideline requirements
Generate a submission checklist for a specific CTD module and submission type
Retrieve the structure and sections of a specific CTD (Common Technical Document) module
Look up ICH guideline details including scope, key requirements, and reference URL
Search ICH guidelines by keyword or topic
Output schemas completely undocumented. No return type specifications visible for any tool. LLMs cannot plan downstream calls or extract required fields without knowing what each tool returns.
search_guidelines lacks pagination (limit, offset, page_size). Regulatory guideline databases can be large; unbounded results risk context window exhaustion and token waste.
Parameter descriptions are minimal (20 - 40 chars) and lack format constraints. E.g., 'guideline_id' description does not specify valid format (e.g., 'Must match pattern E\d+\(R\d+\) or M\d+\(R\d+\)'). LLMs cannot validate inputs without explicit constraints.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 48 | 2026-07-28+ | v2 |
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). All tools are READ_ONLY but lack explicit annotation. Clients cannot infer safety properties without annotations.
No error handling guidance. Tools do not document what happens on invalid guideline_id, missing module_number, or malformed submission_details. LLMs cannot recover from failures without actionable error messages.