|
648 | 648 | }, |
649 | 649 | "ContentBlock": { |
650 | 650 | "description": "Content blocks represent displayable information in the Agent Client Protocol.\n\nThey provide a structured way to handle various types of user-facing content—whether\nit's text from language models, images for analysis, or embedded resources for context.\n\nContent blocks appear in:\n- User prompts sent via `session/prompt`\n- Language model output streamed through `session/update` notifications\n- Progress updates and results from tool calls\n\nThis structure is compatible with the Model Context Protocol (MCP), enabling\nagents to seamlessly forward content from MCP tool outputs without transformation.\n\nSee protocol docs: [Content](https://agentclientprotocol.com/protocol/content)", |
| 651 | + "discriminator": { |
| 652 | + "propertyName": "type" |
| 653 | + }, |
651 | 654 | "oneOf": [ |
652 | 655 | { |
653 | | - "description": "Plain text content\n\nAll agents MUST support text content blocks in prompts.", |
| 656 | + "description": "Text content. May be plain text or formatted with Markdown.\n\nAll agents MUST support text content blocks in prompts.\nClients SHOULD render this text as Markdown.", |
654 | 657 | "properties": { |
655 | 658 | "_meta": { |
656 | 659 | "description": "Extension point for implementations" |
|
1261 | 1264 | "type": "object" |
1262 | 1265 | } |
1263 | 1266 | ], |
1264 | | - "description": "Configuration for connecting to an MCP (Model Context Protocol) server.\n\nMCP servers provide tools and context that the agent can use when\nprocessing prompts.\n\nSee protocol docs: [MCP Servers](https://agentclientprotocol.com/protocol/session-setup#mcp-servers)" |
| 1267 | + "description": "Configuration for connecting to an MCP (Model Context Protocol) server.\n\nMCP servers provide tools and context that the agent can use when\nprocessing prompts.\n\nSee protocol docs: [MCP Servers](https://agentclientprotocol.com/protocol/session-setup#mcp-servers)", |
| 1268 | + "discriminator": { |
| 1269 | + "propertyName": "type" |
| 1270 | + } |
1265 | 1271 | }, |
1266 | 1272 | "ModelId": { |
1267 | 1273 | "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nA unique identifier for a model.", |
|
1613 | 1619 | }, |
1614 | 1620 | "RequestPermissionOutcome": { |
1615 | 1621 | "description": "The outcome of a permission request.", |
| 1622 | + "discriminator": { |
| 1623 | + "propertyName": "outcome" |
| 1624 | + }, |
1616 | 1625 | "oneOf": [ |
1617 | 1626 | { |
1618 | 1627 | "description": "The prompt turn was cancelled before the user responded.\n\nWhen a client sends a `session/cancel` notification to cancel an ongoing\nprompt turn, it MUST respond to all pending `session/request_permission`\nrequests with this `Cancelled` outcome.\n\nSee protocol docs: [Cancellation](https://agentclientprotocol.com/protocol/prompt-turn#cancellation)", |
|
1837 | 1846 | }, |
1838 | 1847 | "SessionUpdate": { |
1839 | 1848 | "description": "Different types of updates that can be sent during session processing.\n\nThese updates provide real-time feedback about the agent's progress.\n\nSee protocol docs: [Agent Reports Output](https://agentclientprotocol.com/protocol/prompt-turn#3-agent-reports-output)", |
| 1849 | + "discriminator": { |
| 1850 | + "propertyName": "sessionUpdate" |
| 1851 | + }, |
1840 | 1852 | "oneOf": [ |
1841 | 1853 | { |
1842 | 1854 | "description": "A chunk of the user's message being streamed.", |
|
2249 | 2261 | }, |
2250 | 2262 | "ToolCallContent": { |
2251 | 2263 | "description": "Content produced by a tool call.\n\nTool calls can produce different types of content including\nstandard content blocks (text, images) or file diffs.\n\nSee protocol docs: [Content](https://agentclientprotocol.com/protocol/tool-calls#content)", |
| 2264 | + "discriminator": { |
| 2265 | + "propertyName": "type" |
| 2266 | + }, |
2252 | 2267 | "oneOf": [ |
2253 | 2268 | { |
2254 | 2269 | "description": "Standard content block (text, images, resources).", |
|
0 commit comments