get_type_info
[analysis]
Gets detailed information about a type (members, inheritance, interfaces, docs, and location).
Try it locally in the Glider playground
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| typeName | string | No | Type name (simple or fully qualified). Provide this or symbolKey. |
| symbolKey | string | No | A key returned by search_symbols or resolve_symbol. Pass it unchanged. Provide this or typeName. |
| projectName | string | No | Optional project name filter. |
| includeMembers | boolean | No | Include member list in response. Default is true. Default: true |
| maxMembers | number | No | Maximum number of members to return. Default is 100. Default: 100 |
| memberKinds | string | No | Filter members by kind, comma-separated: 'Method', 'Property', 'Field', 'Event', or 'Constructor'. |
| pathStyle | string | No | Path style: 'absolute' (default) or 'relative' (to solution root). Default: "absolute" |
| responseDetail | string | No | compact 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.
Get type info
Arguments
{
"typeName": "UserService"
}Full MCP request
Full MCP request
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_type_info",
"arguments": {
"typeName": "UserService"
}
}
}Illustrative response
{
"success": true,
"name": "UserService",
"fullName": "Acme.App.Services.UserService",
"kind": "Class",
"accessibility": "Public",
"baseType": "BaseService",
"declaredBaseType": null,
"interfaces": [
"IUserService"
],
"filePath": "/path/to/UserService.cs",
"lineNumber": 10,
"members": [
{
"name": "GetUserAsync",
"kind": "Method",
"type": "Task",
"accessibility": "Public",
"signature": "Task GetUserAsync(int userId)"
}
]
}Response Notes
Returns type details including members and inheritance. declaredBaseType names the base a class declares when the compiler rejected it (an illegal base), otherwise null. If a key does not resolve, discover the type again with search_symbols or resolve_symbol. Results use top-level fields with success. Compact is the default; full adds responseDiagnostics. Both modes retain errors, coverage, partial state, and recovery advice.