WhenLabs/When
The WhenLabs/When server provides a developer toolkit via MCP with six integrated tools:
š Velocity ā Task Timing & Performance
Start/stop timing coding tasks with metadata (category, tags, project, model)
Estimate multi-step plan durations based on historical data
Query performance statistics grouped by category, tag, project, or time period
View task history and generate HTML dashboards with performance charts
š Stale ā Documentation Drift Detection
Scan for discrepancies between documentation and code
Auto-fix issues (wrong file paths, dead links, outdated scripts)
Generate
.stale.ymlconfig for custom detection rules
š Envalid ā Environment Variable Validation
Validate
.envfiles against schemasDetect undocumented env vars and scan for leaked secrets
Generate
.env.schemafrom existing files or code analysisCompare
.envfiles, sync multiple env files, and generate safe.env.exampletemplatesCheck/install git hooks for pre-commit validation
š Berth ā Port Conflict Management
Show active ports and diagnose conflicts before starting dev servers
Kill processes on specific ports or free all ports for a project
Register projects with port requirements and list their statuses
Reassign ports in config files and auto-resolve conflicts via kill/reassign strategies
š§ Aware ā AI Context File Generation
Auto-detect project stack and generate AI context files (CLAUDE.md, .cursorrules, etc.)
Regenerate context files from
.aware.jsonand show changes since last syncValidate configuration, diagnose project health, and auto-sync stale context files
Add rules, conventions, or structure entries to configuration
āļø Vow ā License Compliance
Scan and summarize dependency licenses; validate against policy files
Generate license policy templates and display dependency trees with license annotations
Suggest alternative packages for violations and export reports (JSON, CSV, Markdown)
Install git hooks for pre-commit license checks and generate
THIRD_PARTY_LICENSES.md
All tools are accessible through a single MCP server for Claude Code, with per-tool CLI access and unified commands for project onboarding (when init) and health reporting (when doctor).
Validates .env files against schemas, detects undocumented environment variables in codebases, and generates .env.schema files from code analysis.
Provides CI/CD integration with GitHub Actions for running stale, envalid, and vow checks with annotations and machine-readable JSON output.
Installs pre-commit hooks for license validation checks to ensure compliance before commits are made.
Uses SQLite as the embedded database backend for the velocity tool to persistently track coding task timing and performance metrics.
Manages unified project configuration through .whenlabs.yml files that consolidate settings for all six tools in a single YAML configuration.
@whenlabs/when
Six tools. One install.
A single installable toolkit that brings six WhenLabs developer tools into your Claude Code workflow. After install, the tools are exposed over a single MCP server and Claude calls them automatically when relevant.
Install
npx @whenlabs/when installOne-time setup. The installer:
Registers a single MCP server (
whenlabs) in your Claude Code configurationInjects a CLAUDE.md block so Claude knows when to use each tool
Cleans up any legacy
velocity-mcpregistration (velocity is now bundled)
The six tools
Tool | Purpose |
aware | Auto-detect stack and generate AI context files (CLAUDE.md, |
berth | Detect port conflicts before starting dev servers |
envalid | Validate |
stale | Detect documentation drift between docs and code |
vow | Scan dependency licenses and validate against policy |
velocity | Time coding tasks and learn from historical data |
MCP tools
Seven endpoints across the six tools:
Endpoint | What it does |
| Detect stack and regenerate AI context files |
| Scan project for port conflicts |
| Validate |
| Detect documentation drift |
| Scan licenses and validate against policy |
| Start timing a coding task |
| End timing and record results |
All seven are served by the single whenlabs MCP server (stdio, Node 20+). Fix/init/auxiliary commands remain available via each tool's CLI (npx @whenlabs/<tool> --help).
CLI
when init # Onboard a project ā detect stack, bootstrap configs, run all checks
when doctor # Run all six tools and show a unified health report
when install # Register MCP server in Claude Code
when uninstall # Remove MCP serverFor per-tool operations, use the tool directly:
npx @whenlabs/stale scan
npx @whenlabs/envalid validate
npx @whenlabs/berth check
npx @whenlabs/aware sync
npx @whenlabs/vow scanManual MCP configuration
If you're not using the install command, add this to your Claude Code MCP config:
{
"mcpServers": {
"whenlabs": {
"command": "npx",
"args": ["@whenlabs/when", "when-mcp"]
}
}
}License
MIT ā see LICENSE
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/WhenLabs-org/when'
If you have feedback or need assistance with the MCP directory API, please join our Discord server