find_member_in_hierarchy

[hierarchy]

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

Try this tool in 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).
timeout_msnumberNoTimeout in milliseconds (5 minutes). Use 0 to disable. Default is 300000.

Examples

Find original declaration for an override

Request
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "find_member_in_hierarchy",
    "arguments": {
      "symbolKey": "..."
    }
  }
}
Response
{
  "success": true,
  "data": {
    "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": "..."
    }
  },
  "error": null
}

Response Notes

Returns the override chain and original declaration