An MCP server that provides tools to run Vitest tests and perform TypeScript type checking on a project
Two tools with basic schemas and descriptions, but significant gaps in parameter documentation and output schema clarity. run_tests and type_check both lack descriptions for their input parameters (testFiles and files respectively). Schemas are present but minimal, no enums, ranges, or validation hints. Output is unstructured text rather than typed objects. Error handling returns text but lacks recovery guidance. No tool annotations (readOnlyHint, idempotentHint). Naming is acceptable (verb_noun pattern) but descriptions are generic and under 200 chars. This server falls into the 'fair' range with noticeable gaps typical of community implementations.
Run Vitest tests for the project. Can run specific test files or all tests.
Run TypeScript type checking on the project. Returns any type errors found.
Input parameters lack descriptions. 'testFiles' and 'files' parameters have no description text explaining what they accept, their format, or constraints.
Output schema not documented. Both tools return unstructured text (type: 'text') rather than typed objects with fields. LLMs cannot plan downstream calls or extract structured data.
No tool annotations. Neither tool declares readOnlyHint, destructiveHint, or idempotentHint, preventing clients from understanding safety properties.
Error messages lack recovery guidance. Errors return raw text like 'Invalid arguments for run_tests: ...' without suggesting next steps or valid alternatives.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 48 | 2026-07-28+ | v2 |
No input validation constraints. Parameters accept strings or arrays with no length limits, enum values, or format specifications. LLMs can pass invalid file paths without guidance.