| name | lsp-verify |
| description | Full three-layer verification after any change — LSP diagnostics + compiler build + test suite, ranked by severity. Use after completing any edit, refactor, or feature to confirm nothing is broken before committing. |
| user-invocable | true |
| allowed-tools | mcp__lsp__get_diagnostics mcp__lsp__run_build mcp__lsp__run_tests mcp__lsp__get_tests_for_file mcp__lsp__suggest_fixes mcp__lsp__format_document mcp__lsp__apply_edit |
| license | MIT |
| compatibility | Requires the agent-lsp MCP server (github.com/blackwell-systems/agent-lsp) |
| metadata | {"optional-capabilities":"codeActionProvider documentFormattingProvider","tool_permissions":{"phases":{"test_correlation":"[Truncated]","diagnostics":"[Truncated]","build":"[Truncated]","tests":"[Truncated]","fix_and_format":"[Truncated]"},"global_forbidden":["mcp__lsp__simulate_*","mcp__lsp__rename_symbol"]}} |
Requires the agent-lsp MCP server.
lsp-verify: Three-Layer Verification
When to Use
Run this skill after any significant change to verify correctness at every level:
- After editing source files (logic changes, refactors, new functions)
- After merging or rebasing branches
- After dependency updates or configuration changes
- Before committing or pushing code
Input
workspace_dir (required): absolute path to the workspace root (e.g. /Users/you/code/myproject)
changed_files (optional): list of files you edited — used for targeted diagnostics
Execution
Pre-step: Test correlation (when changed_files is provided)
Before running the three layers, call get_tests_for_file for each changed
source file to build a source → test file map:
mcp__lsp__get_tests_for_file({ "file_path": "<changed/source/file>" })
Returns the test files that correspond to each source file. Store this map —
it is used in Layer 3 to focus failure analysis. If changed_files is unknown,
skip this step.
Run all three layers in parallel — they are independent and do not need to
be sequenced. Issue all three calls in the same message to minimize wall time.
Layer 1: LSP Diagnostics
Call mcp__lsp__get_diagnostics with file_path set to each changed file.
get_diagnostics takes a file path, not a workspace directory.
Note: requires LSP to be initialized. If not yet running, call start_lsp
with the workspace root first.
mcp__lsp__get_diagnostics({ "file_path": "<path/to/changed/file>" })
Call once per changed file. If you don't know which files changed, call it on
the primary files touched in this session. Rank results by severity: errors
first, then warnings.
Layer 2: Build
mcp__lsp__run_build({ "workspace_dir": "<workspace_dir>" })
Returns { "success": bool, "errors": [...] }. A failed build means the code
does not compile. Build errors are blocking — must be resolved before shipping.
Layer 3: Tests
mcp__lsp__run_tests({ "workspace_dir": "<workspace_dir>" })
Does NOT require start_lsp. Returns .