Prepare Error Report
prepare-error-report · Query · Server · Error reporting
Creates the complete external payload without network activity. Exception messages may contain Workspace data. Present the returned destination, payload JSON string and digest to the user before calling submit-error-report when approval is required; the user can choose to remove exception messages during submission.
Availability: Published in every operational mode when external error-report consent is configured as Prompt or Always.
Generated from Roslyn Workbench MCP 1.0.1 (1.0.1).
Behaviour annotations
| Annotation | Value |
|---|---|
destructiveHint |
false |
idempotentHint |
false |
openWorldHint |
false |
readOnlyHint |
true |
title |
"Prepare Error Report" |
Request
| Property | Type | Required | Description |
|---|---|---|---|
correlationId |
string |
Yes | Correlation identifier of the captured failure to prepare for review. |
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 |
No | Exact immutable workspace snapshot associated with the result, when available. |
warnings |
array |
No | Non-fatal warnings the agent should consider. |
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. |
diagnostics |
array |
No | Diagnostics that explain the failed invocation. |
warnings |
array |
No | Non-fatal warnings the agent should consider. |
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. |
diagnostics |
object |
Yes | Diagnostics that explain the failed invocation. |
reporting |
object |
No | Error-reporting workflow available for an unhandled failure. |
Continuations and required actions
A response may include a structured continuation at the following schema location. Follow its tool call or user-action instruction instead of guessing how to continue:
$/oneOf/1/properties/continuation
Examples
Prepare an error report for review
Workflow: Review and submit an error report, step 1.
Operational modes: inspection-only, transactional, autonomous-trusted.
Create the immutable review payload before asking the user whether it may be submitted.
Expected outcome: A temporary reviewed submission handle and payload preview are returned without network activity.
Complete input schema
Complete output schema
{
"type": "object",
"oneOf": [
{
"type": "object",
"required": [
"ok",
"data"
],
"properties": {
"ok": {
"const": true,
"description": "Whether the tool invocation succeeded."
},
"data": {
"type": [
"object",
"null"
],
"properties": {
"submissionHandle": {
"description": "Opaque handle required to submit this reviewed payload.",
"type": "string"
},
"dispatcher": {
"description": "Dispatcher that will send the report.",
"type": "string"
},
"destination": {
"description": "External destination to which the report will be sent.",
"type": "string"
},
"payloadDigest": {
"description": "Digest that identifies the exact immutable payload presented for review.",
"type": "string"
},
"expiresAt": {
"description": "Time after which the submission handle can no longer be used.",
"type": "string",
"format": "date-time"
},
"payloadJson": {
"description": "Immutable JSON payload presented for user review.",
"type": "string"
},
"excludedCategories": {
"description": "Data categories excluded from the prepared payload.",
"type": "array",
"items": {
"type": "string"
}
},
"reviewWarnings": {
"description": "Warnings the user should consider before approving submission.",
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"submissionHandle",
"dispatcher",
"destination",
"payloadDigest",
"expiresAt",
"payloadJson"
],
"description": "Tool-specific result payload."
},
"snapshot": {
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid"
},
"workspaceEpoch": {
"type": "integer"
},
"snapshotId": {
"type": "string",
"format": "uuid"
},
"transactionRevision": {
"type": [
"integer",
"null"
]
}
},
"required": [
"workspaceId",
"workspaceEpoch",
"snapshotId",
"transactionRevision"
],
"description": "Exact immutable workspace snapshot associated with the result, when available."
},
"warnings": {
"type": "array",
"description": "Non-fatal warnings the agent should consider.",
"items": {
"$ref": "#/$defs/warningInfo"
}
}
}
},
{
"type": "object",
"required": [
"ok",
"error"
],
"properties": {
"ok": {
"const": false,
"description": "Whether the tool invocation succeeded."
},
"error": {
"type": "object",
"properties": {
"code": {
"description": "Stable machine-readable error code.",
"type": "string"
},
"message": {
"description": "Human-readable explanation of the failure.",
"type": "string"
},
"correlationId": {
"description": "Correlation identifier for matching the failure to server-side diagnostics, when available.",
"type": [
"string",
"null"
]
}
},
"required": [
"code",
"message"
],
"description": "Structured error details when the invocation failed."
},
"continuation": {
"oneOf": [
{
"type": "object",
"additionalProperties": false,
"required": [
"kind",
"tool",
"instruction"
],
"properties": {
"kind": {
"const": "CallTool",
"description": "Action required before the original request can continue."
},
"instruction": {
"type": "string",
"description": "Agent-facing instruction explaining how to continue.",
"minLength": 1
},
"tool": {
"type": "string",
"description": "Tool to call before continuing the original request.",
"minLength": 1
}
}
},
{
"type": "object",
"additionalProperties": false,
"required": [
"kind",
"tools",
"instruction"
],
"properties": {
"kind": {
"const": "ChooseTool",
"description": "Action required before the original request can continue."
},
"instruction": {
"type": "string",
"description": "Agent-facing instruction explaining how to continue.",
"minLength": 1
},
"tools": {
"type": "array",
"description": "Allowed tool choices from which the agent must select one.",
"minItems": 1,
"uniqueItems": true,
"items": {
"type": "string",
"description": "Name of a tool the agent may choose.",
"minLength": 1
}
}
}
},
{
"type": "object",
"additionalProperties": false,
"required": [
"kind",
"instruction"
],
"properties": {
"kind": {
"const": "RetryRequest",
"description": "Action required before the original request can continue."
},
"instruction": {
"type": "string",
"description": "Agent-facing instruction explaining how to continue.",
"minLength": 1
}
}
},
{
"type": "object",
"additionalProperties": false,
"required": [
"kind",
"instruction"
],
"properties": {
"kind": {
"const": "ReviseRequest",
"description": "Action required before the original request can continue."
},
"instruction": {
"type": "string",
"description": "Agent-facing instruction explaining how to continue.",
"minLength": 1
}
}
},
{
"type": "object",
"additionalProperties": false,
"required": [
"kind",
"instruction"
],
"properties": {
"kind": {
"const": "ResolveExternally",
"description": "Action required before the original request can continue."
},
"instruction": {
"type": "string",
"description": "Agent-facing instruction explaining how to continue.",
"minLength": 1
}
}
}
],
"description": "Action the agent should take before retrying or continuing."
},
"diagnostics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"description": "The diagnostic identifier.",
"type": "string"
},
"severity": {
"description": "The diagnostic severity.",
"type": "string",
"enum": [
"Hidden",
"Info",
"Warning",
"Error"
]
},
"message": {
"description": "The diagnostic message.",
"type": "string"
},
"location": {
"description": "The optional source location of the diagnostic.",
"type": [
"object",
"null"
],
"properties": {
"document": {
"description": "The resolved document.",
"type": [
"object",
"null"
],
"properties": {
"documentId": {
"description": "The document identifier.",
"type": "string"
},
"path": {
"description": "The normalized document path.",
"type": "string"
},
"projectId": {
"description": "The owning project identifier.",
"type": "string"
}
},
"required": [
"documentId",
"path",
"projectId"
]
},
"span": {
"description": "The resolved text span.",
"type": [
"object",
"null"
],
"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
}
}
},
"line": {
"description": "The one-based line number.",
"type": "integer"
},
"column": {
"description": "The one-based column number.",
"type": "integer"
},
"snapshot": {
"description": "The exact immutable workspace snapshot associated with this location.",
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid"
},
"workspaceEpoch": {
"type": "integer"
},
"snapshotId": {
"type": "string",
"format": "uuid"
},
"transactionRevision": {
"type": [
"integer",
"null"
]
}
},
"required": [
"workspaceId",
"workspaceEpoch",
"snapshotId",
"transactionRevision"
]
},
"selector": {
"description": "The canonical selector that can resolve this source location again.",
"type": [
"object",
"null"
],
"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",
"null"
]
},
"name": {
"type": [
"string",
"null"
]
},
"path": {
"description": "Workspace-relative path.",
"type": [
"string",
"null"
]
},
"targetFramework": {
"type": [
"string",
"null"
]
}
}
},
"path": {
"description": "Workspace-relative path.",
"type": [
"string",
"null"
]
},
"documentId": {
"description": "Workspace-local document ID.",
"type": [
"string",
"null"
]
}
}
},
"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"
]
}
},
"required": [
"span"
]
}
},
"required": [
"snapshot"
]
}
},
"required": [
"id",
"message"
]
},
"description": "Diagnostics that explain the failed invocation."
},
"warnings": {
"type": "array",
"description": "Non-fatal warnings the agent should consider.",
"items": {
"$ref": "#/$defs/warningInfo"
}
}
}
},
{
"type": "object",
"required": [
"ok",
"error",
"diagnostics"
],
"properties": {
"ok": {
"const": false,
"description": "Whether the tool invocation succeeded."
},
"error": {
"type": "object",
"required": [
"code",
"message",
"correlationId"
],
"properties": {
"code": {
"const": "UnhandledException"
},
"message": {
"const": "Tool execution failed."
},
"correlationId": {
"type": "string",
"format": "uuid"
}
},
"description": "Structured error details when the invocation failed."
},
"diagnostics": {
"type": "object",
"required": [
"detailsAvailable",
"detailsTool"
],
"properties": {
"detailsAvailable": {
"const": true
},
"detailsTool": {
"const": "get-error-details"
}
},
"description": "Diagnostics that explain the failed invocation."
},
"reporting": {
"type": "object",
"properties": {
"state": {
"type": "string",
"enum": [
"Available",
"AlwaysApproved",
"DisabledByConfiguration",
"ApprovalUnavailable"
]
},
"canPrepare": {
"type": "boolean"
},
"prepareTool": {
"type": [
"string",
"null"
]
}
},
"required": [
"state"
],
"description": "Error-reporting workflow available for an unhandled failure."
}
}
}
],
"$defs": {
"warningInfo": {
"type": "object",
"properties": {
"code": {
"description": "The stable machine-readable warning code.",
"type": "string"
},
"message": {
"description": "The human-readable warning message.",
"type": "string"
}
},
"required": [
"code",
"message"
]
}
}
}