[analysis]
Gets detailed information about a type (members, inheritance, interfaces, docs, and location).
Agents need enough source and member detail to act, but whole files are often too much context.
These tools provide bounded, structured slices of types and methods so the model can inspect intent without flooding the prompt.
| Name | Type | Required | Description |
|---|---|---|---|
| typeName | string | Yes | Type name (simple or fully qualified). |
| projectName | string | No | Optional project name filter. |
| includeMembers | boolean | No | Include member list in response. Default is true. |
| maxMembers | number | No | Maximum number of members to return. Default is 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). |
Get type info
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_type_info",
"arguments": {
"typeName": "UserService"
}
}
}{
"success": true,
"data": {
"name": "UserService",
"fullName": "Acme.App.Services.UserService",
"kind": "Class",
"accessibility": "Public",
"baseType": "Object",
"interfaces": [
"IUserService"
],
"filePath": "/path/to/UserService.cs",
"lineNumber": 10,
"members": [
{
"name": "GetUserAsync",
"kind": "Method",
"type": "Task",
"accessibility": "Public",
"signature": "Task LoadSolutionAsync(string solutionPath)"
}
]
},
"error": null
}Returns type details including members