Get Operation Tree
get-operation-tree · Query · CorePlugin · Code analysis
Returns a bounded IOperation tree with metadata and exact source pointers.
Availability: Built in and published by default.
Generated from Roslyn Workbench MCP 0.1.0-beta.304 (0.1.0-beta.304).
Behaviour annotations
| Annotation | Value |
|---|---|
destructiveHint |
false |
idempotentHint |
true |
openWorldHint |
false |
readOnlyHint |
true |
title |
"Get Operation Tree" |
Request
| Property | Type | Required | Description |
|---|---|---|---|
location |
object |
Yes | The selected location. |
maxDepth |
integer |
No | The maximum traversal depth. |
nodesLimit |
integer | null |
No | The optional maximum total number of projected operation nodes. |
expectedSnapshot |
object | null |
No | Echo the snapshot returned with the data or transaction state used to construct this request. |
workspace |
object | null |
No | Provide workspaceId, alias, path, or any combination. |
Response
Success response
| Property | Type | Required | Description |
|---|---|---|---|
ok |
boolean constant (true) |
Yes | Whether the tool invocation succeeded. |
data |
object | null |
Yes | Tool-specific result payload. |
snapshot |
object |
Yes | Exact immutable workspace snapshot associated with the result, when available. |
Error response
| Property | Type | Required | Description |
|---|---|---|---|
ok |
boolean constant (false) |
Yes | Whether the tool invocation succeeded. |
error |
object |
Yes | Structured error details when the invocation failed. |
continuation |
oneOf |
No | Action the agent should take before retrying or continuing. |
Continuations and required actions
A non-success response may include a structured continuation at the following schema location. Follow its tool call or user-action instruction instead of guessing how to retry:
$/oneOf/1/properties/continuation
Complete input schema
{
"type": "object",
"properties": {
"location": {
"description": "The selected location.",
"type": "object",
"properties": {
"span": {
"type": "object",
"properties": {
"document": {
"description": "Provide exactly one of path or documentId.",
"type": "object",
"properties": {
"project": {
"description": "Disambiguates documents with matching paths or IDs.",
"type": [
"object",
"null"
],
"properties": {
"projectId": {
"type": "string"
},
"name": {
"type": "string"
},
"path": {
"description": "Workspace-relative path.",
"type": "string"
},
"targetFramework": {
"type": "string"
}
}
},
"path": {
"description": "Workspace-relative path.",
"type": "string"
},
"documentId": {
"description": "Workspace-local document ID.",
"type": "string"
}
}
},
"range": {
"description": "Zero-based UTF-16 range.",
"type": "object",
"properties": {
"start": {
"description": "Zero-based UTF-16 offset.",
"type": "integer",
"minimum": 0,
"maximum": 2147483647
},
"length": {
"description": "UTF-16 code-unit length.",
"type": "integer",
"minimum": 0,
"maximum": 2147483647
}
}
}
},
"required": [
"document",
"range"
]
},
"selection": {
"type": "object",
"properties": {
"document": {
"description": "Provide exactly one of path or documentId.",
"type": "object",
"properties": {
"project": {
"description": "Disambiguates documents with matching paths or IDs.",
"$ref": "#/properties/location/properties/span/properties/document/properties/project"
},
"path": {
"description": "Workspace-relative path.",
"type": "string"
},
"documentId": {
"description": "Workspace-local document ID.",
"type": "string"
}
}
},
"selectedText": {
"type": "string",
"minLength": 1
},
"contextBefore": {
"type": [
"string",
"null"
]
},
"contextAfter": {
"type": [
"string",
"null"
]
}
},
"required": [
"document",
"selectedText"
]
}
}
},
"maxDepth": {
"description": "The maximum traversal depth.",
"type": "integer",
"minimum": 0,
"maximum": 24,
"default": 8
},
"nodesLimit": {
"description": "The optional maximum total number of projected operation nodes.",
"type": [
"integer",
"null"
],
"minimum": 0,
"maximum": 2000,
"default": 200
},
"expectedSnapshot": {
"type": [
"object",
"null"
],
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid"
},
"workspaceEpoch": {
"type": "integer"
},
"snapshotId": {
"type": "string",
"format": "uuid"
},
"transactionRevision": {
"type": [