MCP Server for genomics and omics analysis tools. Exposes 9 genomics tools over MCP (stdio/SSE). Each tool validates input with Zod, delegates to the Python ML service via HTTP, and returns structured JSON output.
Server exposes 9 genomics tools with basic schemas and descriptions, but falls short of production quality. All tools have descriptions (10-50 chars, below the 50-200 char baseline for LLM optimization) and input schemas with typed parameters. However, descriptions are generic and lack actionable context (e.g., 'Run NMF imputation' does not explain WHEN to use it or what it returns). No output schemas documented. Parameters lack constraints (enums, ranges, formats). Error handling is minimal, no recovery guidance or categorization. Tool names are action verbs (good), but descriptions do not answer the three critical questions: What does it do? When should the LLM call it? What does it return? No tool annotations (readOnlyHint, destructiveHint, idempotentHint). All tools marked READ_ONLY risk, but no explicit permission gates or audit trails visible in code.
Check gene availability in dataset.
Run ensemble classification.
Run model evaluation.
Explain features using Claude.
Run multi-strategy feature selection.
Run NMF imputation.
Run cross-omics matching.
Descriptions are too short (10-50 chars) and lack actionable context. 'Run NMF imputation' does not explain WHEN to use it, what it returns, or how it differs from other tools. Baseline for LLM-optimized descriptions is 50-200 chars with explicit WHAT/WHEN/RETURN guidance.
No output schemas documented. LLMs cannot plan downstream tool calls or extract required fields without knowing what each tool returns. Baseline: 100% of A+ tools have documented return types.
Parameters lack constraints (enums, ranges, formats). 'dataset' accepts free-form strings (default 'train') with no enum of valid values. 'method' in impute has no enum. LLMs will hallucinate invalid values. Baseline: constrained inputs prevent hallucination.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 45 | 2026-07-28+ | v2 |
Execute full pipeline.
Generate synthetic cohort.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). All tools marked READ_ONLY risk, but annotations are not visible in schema. Agents cannot distinguish safe-to-retry operations from idempotent ones.
Error handling is minimal. No recovery guidance, categorization (retryable vs user-fixable vs fatal), or actionable error messages visible in code. Agents cannot self-correct on failures.