[symbols]
Searches symbol index by name pattern (* and ? wildcards). Full-featured: namespace/accessibility filters, sorting, paging. Use for exploration or filtered/sorted results. Returns stable symbolKeys.
Try this tool in Playground.
| Name | Type | Required | Description |
|---|---|---|---|
| query | string | Yes | Search pattern. Supports '*' and '?', or plain text for substring match. |
| kinds | string | No | Optional kinds filter (comma-separated): 'Type,Method,Property,Field,Event'. |
| namespaceFilter | string | No | Optional namespace prefix filter (e.g., 'MyApp.Services'). |
| projectName | string | No | Optional project name filter. |
| sourceOnly | boolean | No | Only search symbols with source in solution (excludes external assemblies/packages). Default is true. |
| accessibility | string | No | Filter by accessibility: 'Public', 'Internal', 'Private', 'Protected', 'ProtectedOrInternal', 'ProtectedAndInternal'. |
| pathStyle | string | No | Path style: 'absolute' (default) or 'relative' (to solution root). |
| sortBy | string | No | Optional sort: 'name', 'kind', 'filePath', 'projectName', 'namespace'. |
| sortOrder | string | No | Sort order: 'asc' (default) or 'desc'. |
| skip | number | No | Pagination offset. Default is 0. |
| take | number | No | Pagination size. Default is 200. |
| timeout_ms | number | No | Timeout in milliseconds (5 minutes). Use 0 to disable. Default is 300000. |
Search for service types
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "search_symbols",
"arguments": {
"query": "*Service",
"kinds": "Type"
}
}
}{
"success": true,
"data": {
"query": "*Service",
"matchCount": 2,
"paging": {
"skip": 0,
"take": 200,
"returned": 2,
"total": 2
},
"matches": [
{
"name": "UserService",
"fullName": "MyApp.Services.UserService",
"kind": "Type",
"containingType": null,
"namespace": "MyApp.Services",
"filePath": "/path/to/UserService.cs",
"lineNumber": 12,
"symbolKey": "...",
"projectName": "MyApp",
"accessibility": "Public"
}
]
},
"error": null
}Search methods containing "Login"
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "search_symbols",
"arguments": {
"query": "*Login*",
"kinds": "Method"
}
}
}{
"success": true,
"data": {
"query": "*Service",
"matchCount": 2,
"paging": {
"skip": 0,
"take": 200,
"returned": 2,
"total": 2
},
"matches": [
{
"name": "UserService",
"fullName": "MyApp.Services.UserService",
"kind": "Type",
"containingType": null,
"namespace": "MyApp.Services",
"filePath": "/path/to/UserService.cs",
"lineNumber": 12,
"symbolKey": "...",
"projectName": "MyApp",
"accessibility": "Public"
}
]
},
"error": null
}Search public types only
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "search_symbols",
"arguments": {
"query": "*Manager",
"kinds": "Type",
"accessibility": "Public"
}
}
}{
"success": true,
"data": {
"query": "*Service",
"matchCount": 2,
"paging": {
"skip": 0,
"take": 200,
"returned": 2,
"total": 2
},
"matches": [
{
"name": "UserService",
"fullName": "MyApp.Services.UserService",
"kind": "Type",
"containingType": null,
"namespace": "MyApp.Services",
"filePath": "/path/to/UserService.cs",
"lineNumber": 12,
"symbolKey": "...",
"projectName": "MyApp",
"accessibility": "Public"
}
]
},
"error": null
}Include external assemblies
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "search_symbols",
"arguments": {
"query": "Task",
"kinds": "Type",
"sourceOnly": false
}
}
}{
"success": true,
"data": {
"query": "*Service",
"matchCount": 2,
"paging": {
"skip": 0,
"take": 200,
"returned": 2,
"total": 2
},
"matches": [
{
"name": "UserService",
"fullName": "MyApp.Services.UserService",
"kind": "Type",
"containingType": null,
"namespace": "MyApp.Services",
"filePath": "/path/to/UserService.cs",
"lineNumber": 12,
"symbolKey": "...",
"projectName": "MyApp",
"accessibility": "Public"
}
]
},
"error": null
}Returns matching symbols (with paging) including stable symbol keys