Browse documentation

get_cascade_impact

[callgraph]

Expands analyze_change_impact transitively to show callers, implementations, and overrides up to a requested depth. Use it for bounded refactor planning before changing a symbol.

Try it locally in the Glider playground

Parameters

NameTypeRequiredDescription
symbolKeystringYesOpaque symbolKey from search_symbols, resolve_symbol, get_symbol_at_position, or any tool that returns symbolKey. Not a name.
depthnumberNoDepth of transitive expansion. Depth 1 returns only direct impact items. Default is 2. Default: 2
scopejsonNoOptional scope. Omit scope to search the solution. When supplied, set mode to solution, project, document, or pathPrefix. project requires projectName. document requires filePath. pathPrefix requires pathPrefix. Paths can be absolute or relative to solutionRoot. Set includeExternal to true when the tool supports external symbols.
includeCallersbooleanNoInclude callers while building the cascade. Default is true. Default: true
includeImplementationsbooleanNoInclude implementations while building the cascade. Default is true. Default: true
includeOverridesbooleanNoInclude overrides while building the cascade. Default is true. Default: true
pathStylestringNoPath style: 'absolute' (default) or 'relative' (to solution root). Default: "absolute"
skipnumberNoPagination offset. Default is 0. Default: 0
takenumberNoPagination size. Default is 200. Default: 200
maxExpansionSymbolsnumberNoMaximum impacted symbols to expand before returning partial results. Default is 250. Default: 250
responseDetailstringNocompact returns results and actionable state. full adds diagnostic metadata under responseDiagnostics. Default: "compact"

Examples

Replace sample paths and symbol keys with values from your workspace.

Expand direct and transitive impact

Arguments
{
  "symbolKey": "...",
  "depth": 2
}
Full MCP request
Full MCP request
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_cascade_impact",
    "arguments": {
      "symbolKey": "...",
      "depth": 2
    }
  }
}
Illustrative response
{
  "success": true,
  "symbolKey": "...",
  "depth": 2,
  "summaryByDepth": [
    {
      "depth": 1,
      "impactedSymbols": 5
    },
    {
      "depth": 2,
      "impactedSymbols": 11
    }
  ],
  "paging": {
    "total": 2
  },
  "impactedSymbols": [
    {
      "name": "Login",
      "kind": "Method",
      "fullName": "MyApp.Controllers.AuthController.Login()",
      "symbolKey": "...",
      "depth": 1,
      "projectName": "MyApp"
    }
  ],
  "partial": false
}

Focus on callers only

Arguments
{
  "symbolKey": "...",
  "depth": 3,
  "includeImplementations": false,
  "includeOverrides": false
}
Full MCP request
Full MCP request
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_cascade_impact",
    "arguments": {
      "symbolKey": "...",
      "depth": 3,
      "includeImplementations": false,
      "includeOverrides": false
    }
  }
}

Response Notes

Returns depth-based impact summaries plus a paged impacted-symbol list Results use top-level fields with success. Compact is the default; full adds responseDiagnostics. Both modes retain errors, coverage, partial state, and recovery advice.