Skip to main content
Glama

typecheck

Validate your own TSX components against the renderer's TypeScript before preview bundling, listing errors only in your files.

Instructions

Type-check your own components (library/components/*.tsx) with the renderer's TypeScript, before a preview bundles them. Lists errors in your files; errors elsewhere are counted, not shown.

Input Schema

NameRequiredDescriptionDefault
projectYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden and does well: it discloses that it runs with the renderer's TypeScript, that only the caller's files are reported, and that out-of-scope errors are counted rather than shown. It omits whether the operation has side effects or cost/timeout characteristics, which would complete the picture for a build-like tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two dense sentences with the verb and file scope front-loaded and the output behavior immediately after; every clause carries information. Slightly compressed, but nothing is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter tool with no output schema, the description explains what is returned (error list plus counts) and the scope, which is most of what matters. The unexplained 'project' argument is the remaining hole an agent needs filled to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single required 'project' parameter has 0% schema description coverage, so the description is the only place its meaning could be conveyed — yet it never mentions 'project' at all. The agent must guess identifier format and whether it is a name, path, or ID.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource ('type-check your own components (library/components/*.tsx)') and pins the scope to the caller's own files, which is far more informative than the bare name 'typecheck'. It does not explicitly distinguish itself from the ambiguous sibling 'check' or clarify its relationship to 'preview', so sibling differentiation is only implicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'before a preview bundles them' gives a clear temporal context for when to call it, which is genuine usage guidance. However, there are no exclusions or named alternatives (e.g. when to use 'check' instead), so the agent must infer the boundary.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.