High-performance MCP/API server for NCBI's LitVar2 genetic variant database
LitVar-Link provides 3 tools with clear verb-based names and reasonable descriptions. All tools are READ_ONLY, which is appropriate for a genomic variant lookup service. However, there are significant gaps in schema completeness, parameter descriptions, and output documentation that prevent higher scores. Tool descriptions are moderate length (120-190 chars) and cover the WHAT and general functionality, but lack specificity on error cases, prerequisites, and output structure. Parameter schemas are minimal, only gene_name has a description and type; health_check and get_cache_stats have empty input objects with no documentation of what they return. No output schemas are visible in the source, making it impossible for LLMs to plan downstream calls or validate results.
Get detailed cache statistics. Returns comprehensive caching metrics including: hit/miss counts and rates, cache size and memory usage, TTL information and expired items, and performance statistics.
Comprehensive health check for the LitVar-Link service. Checks the status of all major components: LitVar2 API connectivity and response time, cache system functionality, and overall service health metrics.
Retrieve the full variant catalog for a gene with significance stats. Expects an official (uppercase) HUGO/HGNC symbol such as "CFH" or "BRCA1". Returns per-gene totals plus pathogenic/benign/uncertain counts and individual variant details.
health_check and get_cache_stats have empty input schemas ({}) with no documentation of what they return or any output schema. LLMs cannot determine what fields to expect or how to use the response.
No output/return schemas are documented anywhere in the visible source code. LLMs need to know what structure to expect from each tool so they can extract relevant fields and plan chained calls.
search_gene_variants description mentions 'per-gene totals plus pathogenic/benign/uncertain counts and individual variant details' but does not specify the output structure, required IDs for chaining, pagination behavior, or result limits. How many variants are returned? Are results paginated?
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 58 | 2026-07-28+ | v2 |
health_check description says 'Checks the status of all major components' but does not explain what a successful response contains, what failure scenarios exist, or what the LLM should do if the health check fails. No error guidance.
get_cache_stats description lists internal metrics (hit/miss counts, TTL information) without explaining when an LLM should call this tool or how to interpret the response. Is this meant for debugging or user-facing insights?
gene_name parameter description says 'case-sensitive uppercase' but does not explain what happens if a lowercase symbol like 'cfh' is passed. Should the tool accept it and normalize, or fail with a clear error message? No error guidance.