Browse documentation

find_member_in_hierarchy

[hierarchy]

Walks a member's override chain to find the original declaration. Requires a symbolKey.

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.
pathStylestringNoPath style: 'absolute' (default) or 'relative' (to solution root). Default: "absolute"
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.

Find original declaration for an override

Arguments
{
  "symbolKey": "..."
}
Full MCP request
Full MCP request
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "find_member_in_hierarchy",
    "arguments": {
      "symbolKey": "..."
    }
  }
}
Illustrative response
{
  "success": true,
  "symbolKey": "...",
  "chain": [
    {
      "name": "ToString",
      "fullName": "MyApp.Models.User.ToString()",
      "symbolKey": "...",
      "filePath": "/path/to/User.cs",
      "lineNumber": 42
    },
    {
      "name": "ToString",
      "fullName": "System.Object.ToString()",
      "symbolKey": "...",
      "filePath": null,
      "lineNumber": null
    }
  ],
  "original": {
    "name": "ToString",
    "fullName": "System.Object.ToString()",
    "symbolKey": "..."
  }
}

Response Notes

Returns the override chain and original declaration Results use top-level fields with success. Compact is the default; full adds responseDiagnostics. Both modes retain errors, coverage, partial state, and recovery advice.