[trace-mcp]

Tool index

Every tool the server registers, alphabetically, with the first line of the description a client receives in tools/list. It is generated from the registrations themselves, so a tool cannot ship without appearing here.

For the tools grouped by what you are trying to do — plus resources, usage examples and the migration notes — see the tools reference. The AI-backed tools (explain_symbol, suggest_tests, review_change, find_similar, explain_architecture) register from a different module and need ai.enabled: true; they are described there.

The rows below are registrations, not a count of what you are served. The 169 figure quoted elsewhere counts what any repo gets, which excludes the framework-specific rows.

Availability Meaning
always Registered on every repo.
framework Only when its framework is detected — see supported frameworks.
opt-in Behind a config flag (topology.enabled, runtime.enabled) — see configuration.
Tool What it does Availability
add_decision Manually record an architectural decision, tech choice, preference, or convention. always
analyze_perf Per-tool latency telemetry: p50/p95/max, count, error_rate. always
apply_codemod Structural (AST-aware) or regex find-and-replace across files. always
apply_move Move a symbol to a different file or rename/move a file, updating all import paths across the codebase. always
apply_rename Rename a symbol across all usages (definition + all importing files). always
approve_decision Approve a decision currently in the memoir-style review queue (review_status=”pending”). always
assess_change_risk Before modifying a file or symbol, predict risk level (low/medium/high/critical) with contributing factors and recommended mitigations. always
audit_config Scan AI agent config files (CLAUDE.md, AGENTS.md, .cursorrules, etc.) for stale references, dead paths, token bloat, and (when include_drift is set) drift be… always
batch Execute multiple trace-mcp tools in a single MCP request. always
benchmark_project Synthetic token efficiency benchmark: compare raw file reads vs trace-mcp compact responses across symbol lookup, file exploration, search, and impact analys… always
build_corpus Pack a slice of project context into a persistent corpus on disk so future query_corpus calls can prime an LLM with the same snapshot without re-running the… always
build_decision_clusters Recompute the L2 thematic cluster overlay over the decision store using the configured LLM. always
call_project_tool Relay a trace-mcp tool call to a DIFFERENT registered project than this session’s own (cross-project dispatch). always
change_signature Change a function/method signature (add/remove/rename/reorder parameters) and update all call sites. always
check_architecture Check architectural layer rules: detect forbidden imports between layers (e.g. always
check_claudemd_drift Detect drift between AI agent config files (CLAUDE.md, AGENTS.md, .cursorrules) and the live tool/skill/command surface: dead path references, references to… always
check_duplication Check if a function/class name already exists before creating it. always
check_edit_safe Edit-safety preflight: before modifying a symbol or file, get one verdict for “is this safe to edit and what must I preserve”. always
check_embedding_drift Pin and re-check a 16-string canary against the active embedding provider. always
check_quality_gates Run configurable quality gate checks (complexity, coupling, circular imports, dead exports, tech debt, security, antipatterns, code smells). always
check_rename Pre-rename collision detection: checks the symbol’s own file and all importing files for existing symbols with the target name. always
compare_branches Compare two branches at symbol level: what was added, modified, removed. always
consolidate_decisions LLM-driven semantic dedup of the decision store. always
delete_corpus Remove a saved corpus (manifest + packed body). always
detect_antipatterns Detect performance & design antipatterns: N+1 queries, missing eager loading, unbounded queries, event listener leaks, circular ORM association cycles, missi… always
detect_ast_clones Find Type-2 AST clones: functions/methods with identical structure after normalizing identifiers and literals (tree-sitter parse + AST subtree hash). always
detect_communities Run Leiden community detection on the file dependency graph. always
detect_drift Detect architectural drift: cross-module co-change anomalies (files in different modules that always change together) and shotgun surgery patterns (commits t… always
detect_topic_tunnels Cross-project topic tunnels: links between registered subprojects sharing canonical entities — manifest package names, top-level declared dependencies, and g… opt-in
diff_graph_snapshots Compare two named graph snapshots and report deltas in counts, communities, and top in-degree files. always
discover_claude_sessions Scan ~/.claude/projects for projects Claude Code has touched on this machine, decode each directory name back to its absolute path, and report which ones sti… opt-in
discover_hermes_sessions List Hermes Agent (NousResearch) sessions visible on this machine. always
embed_repo Precompute and cache symbol embeddings for semantic / hybrid search. always
export_decisions Export decisions to JSONL or Markdown. always
export_graph Export the dependency graph in formats external tools understand. always
export_security_context Export security context for MCP server analysis. always
extract_function Extract a line range out of an enclosing function into a new named helper (AST-aware, TypeScript/JavaScript). always
find_usages Find all places that reference a symbol or file (imports, calls, renders, dispatches). always
generate_docs Auto-generate project documentation from the code graph. always
generate_insights_report Single-call narrative health snapshot: god files (PageRank), architectural bridges (edge bottlenecks), risk hotspots (complexity × churn), edge resolution-ti… always
generate_sbom Generate a Software Bill of Materials (SBOM) from package manifests and lockfiles. always
get_api_contract Get API contract (OpenAPI/gRPC/GraphQL) for a service. opt-in
get_api_surface List all exported symbols (public API) of a file or matching files. always
get_artifacts Surface non-code knowledge from the index: DB schemas (migrations, ORM models), API specs (routes, OpenAPI endpoints), infrastructure (docker-compose service… always
get_call_graph Build a bidirectional call graph centered on a symbol (who calls it + what it calls). always
get_change_impact Full change impact report: risk score + mitigations, breaking change detection, enriched dependents (complexity, coverage, exports), module groups, affected… always
get_changed_symbols Map a git diff to affected symbols (functions, classes, methods). always
get_circular_imports Find circular dependency chains in the import graph (Kosaraju SCC algorithm). always
get_cluster_decisions Return the member decisions of a cluster, plus the cluster header. always
get_co_changes Find files that frequently change together in git history (temporal coupling). always
get_code_owners Git-based code ownership: who contributed most to specific files (git shortlog). always
get_communities Get previously detected communities (file clusters). always
get_community Get details for a specific community: files, inter-community dependencies. always
get_complexity_report Get complexity metrics (cyclomatic, max nesting, param count) for symbols in a file or across the project. always
get_complexity_trend File complexity over git history: cyclomatic complexity at past commits. always
get_component_tree Build a component render tree starting from a given .vue file. framework
get_context_bundle Get a symbol’s source code + its import dependencies + optional callers, packed within a token budget. always
get_contract_drift Detect mismatches between API spec and implementation: endpoints in spec but not in code, or in code but not in spec. opt-in
get_contract_versions Show version history for a service API contract with breaking change detection between versions. opt-in
get_control_flow Build a Control Flow Graph (CFG) for a function/method: if/else branches, loops, try/catch, returns, throws. always
get_coupling Coupling analysis: afferent (Ca), efferent (Ce), instability index per file. always
get_coupling_trend File coupling over git history: Ca/Ce/instability at past commits. always
get_coverage_report Technology profile of the project: detected frameworks/ORMs/UI libs from manifests (package.json, composer.json, etc.), which are covered by trace-mcp plugin… always
get_cross_domain_deps Show which business domains depend on which. always
get_cross_service_impact Analyze cross-service impact of changing an endpoint or event. opt-in
get_cross_workspace_impact Show which workspaces are affected by changes in a given workspace. always
get_dataflow Intra-function dataflow analysis: track how each parameter flows through the function body — into which calls, where it gets mutated, and what is returned. always
get_dead_code Dead code detection. always
get_decision Fetch a single decision by id, including its full content. always
get_decision_clusters List decision clusters with optional full-text filter. always
get_decision_stats Overview of the decision knowledge graph: total decisions, active/invalidated counts, breakdown by type and source. always
get_decision_timeline Chronological timeline of decisions for a project, symbol, or file. always
get_dependency_diagram Render dependency diagram for a file/directory path as Mermaid or DOT. always
get_di_tree Trace NestJS dependency injection tree (what a service injects + who injects it). framework
get_domain_context Get all code related to a specific business domain. always
get_domain_map Get hierarchical map of business domains with key symbols per domain. always
get_edge_bottlenecks Find architectural bottleneck edges in the import graph: edges on many shortest paths (betweenness), edges whose removal would disconnect the graph (bridges)… always
get_endpoint_analytics Per-route analytics: request count, error rate, latency, caller services. opt-in
get_env_vars List environment variable keys from .env files with inferred value types/formats. always
get_event_graph Get event/signal/task dispatch graph (Laravel events, Django signals, NestJS events, Celery tasks, Socket.io events). framework
get_feature_context Search code by keyword/topic → returns ranked source snippets within a token budget. always
get_federation_impact Aggregates cross-repo impact into ONE call: if you change an endpoint, service, or symbol, this combines subproject client-call impact (which repos/files cal… opt-in
get_file_health_timeline Aggregates get_complexity_trend, get_coupling_trend, and get_git_churn into one per-file time series: complexity, coupling, and a lightweight risk_score per… always
get_git_churn Per-file git churn: commits, unique authors, frequency, volatility assessment. always
get_graph_timeline Graph-evolution timeline: samples evenly-spaced historical commits (via git log) and reports file-count + commit churn per period, with a short narrative dif… always
get_health_trends Time-series health metrics for a file or module: bug score, complexity, coupling, churn over time. always
get_implementations Find all classes that implement or extend a given interface or base class. always
get_import_graph Show file-level dependency graph: what a file imports and what imports it (requires reindex for ESM edge resolution). always
get_index_health Get index status, statistics, health information, and pipeline progress (indexing, summarization, embedding). always
get_livewire_context Get full context for a Livewire component: properties, actions, events, view, child components. framework
get_middleware_chain Trace middleware chain for a route URL (Express/NestJS/FastAPI/Flask). framework
get_minimal_context Single-call orientation context (~150 tokens). always
get_model_context Get full model context: relationships, schema, and metadata (Eloquent/Mongoose/Sequelize/SQLAlchemy/Prisma/TypeORM/Drizzle). framework
get_module_graph Build NestJS module dependency graph (module -> imports -> controllers -> providers -> exports). framework
get_navigation_graph Build React Native navigation tree from screens, navigators, and deep links. framework
get_nova_resource Get full context for a Laravel Nova resource: model, fields, actions, filters, lenses, metrics. framework
get_optimization_report Detect token waste patterns in AI agent sessions: repeated file reads, Bash grep instead of search, large file reads, unused trace-mcp tools. always
get_outline Get all symbols for a file (signatures only, no bodies) — cheaper than Read for understanding a file before editing. always
get_package_deps Cross-repo package dependency analysis: find which registered projects depend on a package, or what packages a project publishes. always
get_pagerank File importance ranking via PageRank on the import graph. always
get_plugin_registry List all registered indexer plugins and the edge types they emit. always
get_preset_info Show active tool preset, available presets, which tools are registered in this session, and which are deferred (loadable via load_tools). always
get_project_health Structural health: coupling instability, dependency cycles, PageRank rankings, refactor candidates. always
get_project_map Get project overview: detected frameworks, languages, file counts, structure. always
get_real_savings A/B comparison: how many tokens could be saved by using trace-mcp instead of raw Read/Bash file reads. always
get_refactor_candidates Find functions with high complexity called from many files — candidates for extraction to shared modules. always
get_related_symbols Find symbols related via co-location (same file), shared importers, and name similarity. always
get_request_flow Trace request flow for a URL+method: route → middleware → controller → service (Laravel/Express/NestJS/Fastify/Hono/tRPC/FastAPI/Flask/DRF). framework
get_risk_hotspots Code hotspots: files with both high complexity AND high git churn (Adam Tornhill methodology). always
get_runtime_call_graph Actual call graph from runtime traces (vs static analysis). opt-in
get_runtime_deps Which external services (databases, caches, APIs, queues) does this code actually call at runtime. opt-in
get_runtime_profile Runtime profile for a symbol or route: call count, latency percentiles (p50/p95/p99), error rate, calls per hour. opt-in
get_schema Get database schema reconstructed from migrations or ORM model definitions. framework
get_screen_context Get full context for a React Native screen: navigator, navigation edges, deep link, platform variants, native modules. framework
get_service_deps Get external service dependencies: which services this one calls (outgoing) and which call it (incoming). opt-in
get_service_map Get map of all services, their APIs, and inter-service dependencies. opt-in
get_session_analytics Analyze AI agent session logs: token usage, cost breakdown by tool/server, top files, models used. always
get_session_journal Session history: all tool calls made, files read, zero-result searches, and duplicate queries. always
get_session_snapshot Compact session snapshot (~200 tokens) for context recovery after compaction. always
get_session_stats Token savings stats for this session: per-tool call counts, estimated token savings, reduction percentage, dedup savings, and per-tool latency (p50/p95/max/e… always
get_state_stores List all Zustand stores and Redux Toolkit slices with their state fields, actions/reducers, and dispatch sites. framework
get_subproject_clients Find all client calls across subprojects that call a specific endpoint. opt-in
get_subproject_graph Show all subprojects and their cross-repo connections. opt-in
get_subproject_impact Cross-repo impact analysis: find all client code across subprojects that would break if an endpoint changes. opt-in
get_suggested_questions Auto-generated, prioritized review questions derived from the analyses we already cache (untested framework entry points, circular imports, ast-clone cluster… always
get_surprises Rank cross-module file edges by how unexpected they look (deep folder distance + popular target + few edges = high surprise). always
get_symbol Look up a symbol by symbol_id or FQN and return its source code. always
get_symbol_complexity_trend Single symbol complexity over git history: cyclomatic, nesting, params, lines at past commits. always
get_symbol_owners Git blame-based symbol ownership: who wrote which lines of a specific symbol. always
get_task_context All-in-one context for starting a dev task: execution paths, tests, entry points, adapted by task type. always
get_tech_debt Per-module tech debt score (A–F grade) combining: complexity, coupling instability, test coverage gaps, and git churn. always
get_tests_for Find test files/functions covering a given symbol or file. always
get_type_hierarchy Walk TypeScript class/interface hierarchy: ancestors (what it extends/implements) and descendants (what extends/implements it). always
get_untested_symbols Find symbols lacking test coverage. always
get_usage_trends Daily token usage time-series: sessions, tokens, estimated cost, tool calls per day. always
get_wake_up Compact orientation context (~300 tokens) for session start. always
get_workspace_map List all detected monorepo workspaces with file counts, symbol counts, and languages. always
graph_query Trace how named symbols relate in the dependency graph → returns subgraph + Mermaid diagram. always
index_sessions Index conversation content from Claude Code / Claw Code sessions for cross-session search. always
invalidate_decision Mark a decision as no longer valid. always
list_bundles List installed pre-indexed bundles for dependency libraries. always
list_corpora List every corpus saved on disk with its manifest (scope, project_root, sizes, timestamps). always
list_graph_snapshots List previously captured graph snapshots, most recent first. always
list_pins List all active ranking pins with weight, scope, target, expiry, and creator. always
list_projects List projects registered with trace-mcp (~/.trace-mcp/registry.json), plus any known subprojects. always
load_tools Load tools this session’s preset deferred, by preset name and/or explicit tool names. always
mine_sessions Mine Claude Code / Claw Code session logs for architectural decisions, tech choices, bug root causes, and preferences. always
pack_context Pack project context into a single document for external LLMs. always
pin Boost (or demote) a symbol and/or file in PageRank-driven ranking by setting a multiplicative weight. always
plan_batch_change Analyze the impact of updating a package/dependency. always
plan_refactoring Preview any refactoring (rename, move, extract, signature) without applying. always
plan_turn Opening-move router for new tasks. always
predict_bugs Heuristic bug-risk triage: ranks files by git churn, fix-commit ratio, complexity, coupling, PageRank, and author count — a prioritization heuristic, NOT a v… always
query_by_intent Map a business question to domain taxonomy → returns domain ownership and relevance scores (no source code). always
query_corpus Answer a natural-language question against a saved corpus. always
query_decisions Query the decision knowledge graph. always
refresh_co_changes Rebuild co-change index from git history. always
regenerate_project_memo Synthesise (or refresh) the project memo — a 250-400 word LLM-written orientation digest over the decision store. always
register_edit Notify trace-mcp that a file was edited. always
reindex Trigger (re)indexing of the project or a subdirectory. always
reject_decision Reject a decision currently in the memoir-style review queue (review_status=”pending”). always
remember_decision Live agent write into the decision knowledge graph. always
remove_dead_code Safely remove a dead symbol from its file. always
repair_index Apply a targeted repair to the local SQLite index. always
scan_code_smells Find deferred work and shortcuts: TODO/FIXME/HACK/XXX comments, empty functions & stubs, hardcoded values (IPs, URLs, credentials, magic numbers), and per-la… always
scan_security Scan project files for OWASP Top-10 security vulnerabilities using pattern matching. always
search Search symbols by name, kind, or text. always
search_bundles Search pre-indexed bundles for symbols from popular libraries (React, Express, etc.). always
search_sessions Search across all past session conversations. always
search_text Full-text search across all indexed files. always
self_audit Dead code & coverage audit: dead exports, untested public symbols, heritage debt. always
snapshot_graph Capture the current graph shape (file/symbol counts, edges by type, top in-degree files, communities, exported symbols) under a named label. always
subproject_add_repo Add a repository as a subproject of the current project. opt-in
subproject_sync Re-scan all subprojects: re-discover services, re-parse contracts, re-scan client calls, and re-link everything. opt-in
suggest_queries Onboarding helper: shows top imported files, most connected symbols (PageRank), language stats, and example tool calls. always
taint_analysis Track flow of untrusted data from sources (HTTP params, env vars, file reads) to dangerous sinks (SQL queries, exec, innerHTML, redirects). always
traverse_graph Walk the dependency graph from a starting symbol or file using BFS/DFS, with a hard token budget on the response. always
tune_decision_weights Decision memory, not retrieval ranking (that is tune_weights): re-fit decision confidence weights from accumulated review feedback (approve/reject events). always
tune_weights Retrieval fusion ranking for search, not decision memory (that is tune_decision_weights): read the persistent ranking ledger and learn per-repo signal-fu… always
unpin Remove a ranking pin by target. always
verify_index Read-only structural check of the local SQLite index: SQLite integrity_check, foreign-key violations, required-table presence, FTS5 integrity-check, embeddin… always
visualize_graph Open interactive HTML graph in browser showing file/symbol dependencies. always
visualize_subproject_topology Open interactive HTML visualization of the subproject topology: services as nodes, API calls as edges, health/risk indicators per service. opt-in

Last updated: August 30, 2026