trace-mcp
Use trace-mcp tools for code navigation, impact analysis, and framework-aware queries instead of Read/Grep/Glob/Bash. Activate…
Safe refactoring workflow using trace-mcp — assess risk, find candidates, check impact, and rename symbols across all files without missing import sites or cross-file references.
Claude Code
$ npx -y skills add nikolai-vysotskyi/trace-mcp --skill trace-mcp-refactoring --agent claude-code
Codex
$ npx skills add nikolai-vysotskyi/trace-mcp --skill trace-mcp-refactoring -a codex -y
Cursor
$ npx skills add nikolai-vysotskyi/trace-mcp --skill trace-mcp-refactoring -a cursor -y
Gemini CLI
$ npx skills add nikolai-vysotskyi/trace-mcp --skill trace-mcp-refactoring -a gemini-cli -y
GitHub Copilot
$ npx skills add nikolai-vysotskyi/trace-mcp --skill trace-mcp-refactoring -a github-copilot -y
OpenCode
$ npx skills add nikolai-vysotskyi/trace-mcp --skill trace-mcp-refactoring -a opencode -y
Windsurf
$ npx skills add nikolai-vysotskyi/trace-mcp --skill trace-mcp-refactoring -a windsurf -y
name: trace-mcp-refactoring description: Safe refactoring workflow using trace-mcp — assess risk, find candidates, check impact, and rename symbols across all files without missing import sites or cross-file references.
Use this skill whenever you are about to rename, restructure, extract, or otherwise refactor code in a project indexed by trace-mcp. The goal is to never break cross-file references and never guess at what is affected.
assess_change_risk({ file_path: "src/foo.ts" })
# or
assess_change_risk({ symbol_id: "<id>" })This returns the risk level of the target change based on churn, complexity, fan-in/fan-out, and test coverage. Use it to decide whether to proceed, add tests first, or split the change.
get_refactor_candidates()
Do not guess. This surfaces high-complexity, high-churn, and anti-pattern-laden symbols that are the real refactor targets.
get_change_impact({ symbol_id: "<id>" })Returns the reverse-dependency graph: every file, symbol, and test that depends on the target. Review this list before editing.
get_complexity_report({ file_path: "src/foo.ts" })Gives you a baseline so you can verify the refactor actually reduced complexity.
**Never** rename with `Edit` and `replace_all`. It silently misses import sites, re-exports, type references, and cross-file usages.
# 1. Collision detection first
check_rename({ symbol_id: "<id>", target_name: "newName" })
# 2. Apply rename across ALL files (definition + every reference)
apply_rename({ symbol_id: "<id>", new_name: "newName" })`apply_rename` updates the definition, imports, re-exports, call sites, JSX usages, and tests in one atomic operation.
extract_function({
file_path: "src/foo.ts",
start_line: 42,
end_line: 67,
new_name: "computeTotals"
})Let trace-mcp handle the variable capture analysis — manual extraction routinely misses closure variables.
1. `register_edit` on each edited file to reindex 2. `get_complexity_report` again to confirm the reduction 3. `get_tests_for` the changed symbols — run them 4. `check_quality_gates` with `scope: "changed"` to verify no regressions
Framework-aware code intelligence MCP server — 91 framework integrations, 81 languages, 72.7% fewer input tokens to review a pull request, comprehension at parity
Use trace-mcp tools for code navigation, impact analysis, and framework-aware queries instead of Read/Grep/Glob/Bash. Activate…
Use trace-mcp apply_codemod for any bulk mechanical change instead of repeated Edit calls. Activate whenever the same edit…
Run trace-mcp security, quality-gate, and antipattern checks before committing or opening a PR. Activate when the agent is about…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.