You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -399,12 +398,10 @@ The agent sends an `elicitation/create` request when it needs information from t
399
398
}
400
399
```
401
400
402
-
The optional `scope` field determines what context the elicitation is tied to. Elicitation supports two scoping variants:
403
-
404
-
-**Session scope**: `scope.sessionId` is set — tied to a specific session. Optionally includes `scope.toolCallId` when tied to a specific tool call within that session (e.g., when an agent receives an elicitation from an MCP server during a tool call and needs to redirect it to the user).
405
-
-**Request scope**: `scope.requestId` is set — tied to a specific JSON-RPC request outside of a session (e.g., auth/configuration phases before any session is started).
401
+
The scope fields are flattened at the top level of the request. Elicitation supports two scoping variants:
406
402
407
-
When `scope` is omitted entirely, the elicitation is standalone and not tied to any specific context.
403
+
-**Session scope**: `sessionId` is set — tied to a specific session. Optionally includes `toolCallId` when tied to a specific tool call within that session (e.g., when an agent receives an elicitation from an MCP server during a tool call and needs to redirect it to the user).
404
+
-**Request scope**: `requestId` is set — tied to a specific JSON-RPC request outside of a session (e.g., auth/configuration phases before any session is started).
408
405
409
406
**Request-scoped example:**
410
407
@@ -414,9 +411,7 @@ When `scope` is omitted entirely, the elicitation is standalone and not tied to
414
411
"id": 45,
415
412
"method": "elicitation/create",
416
413
"params": {
417
-
"scope": {
418
-
"requestId": 12
419
-
},
414
+
"requestId": 12,
420
415
"mode": "form",
421
416
"message": "Please provide your workspace name to continue setup.",
Copy file name to clipboardExpand all lines: schema/schema.unstable.json
+46-60Lines changed: 46 additions & 60 deletions
Original file line number
Diff line number
Diff line change
@@ -1646,7 +1646,52 @@
1646
1646
"type": "object"
1647
1647
},
1648
1648
"CreateElicitationRequest": {
1649
-
"description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nRequest from the agent to elicit structured user input.\n\nThe agent sends this to the client to request information from the user,\neither via a form or by directing them to a URL.\nElicitations may be tied to a session, request, or tool call,\nor sent without a specific scope.",
1649
+
"anyOf": [
1650
+
{
1651
+
"description": "Tied to a session, optionally to a specific tool call within that session.\n\nWhen `tool_call_id` is set, the elicitation is tied to a specific tool call.\nThis is useful when an agent receives an elicitation from an MCP server\nduring a tool call and needs to redirect it to the user.",
1652
+
"properties": {
1653
+
"sessionId": {
1654
+
"allOf": [
1655
+
{
1656
+
"$ref": "#/$defs/SessionId"
1657
+
}
1658
+
],
1659
+
"description": "The session this elicitation is tied to."
1660
+
},
1661
+
"toolCallId": {
1662
+
"anyOf": [
1663
+
{
1664
+
"$ref": "#/$defs/ToolCallId"
1665
+
},
1666
+
{
1667
+
"type": "null"
1668
+
}
1669
+
],
1670
+
"description": "Optional tool call within the session."
1671
+
}
1672
+
},
1673
+
"required": ["sessionId"],
1674
+
"title": "Session",
1675
+
"type": "object"
1676
+
},
1677
+
{
1678
+
"description": "Tied to a specific JSON-RPC request outside of a session\n(e.g., during auth/configuration phases before any session is started).",
1679
+
"properties": {
1680
+
"requestId": {
1681
+
"allOf": [
1682
+
{
1683
+
"$ref": "#/$defs/RequestId"
1684
+
}
1685
+
],
1686
+
"description": "The request this elicitation is tied to."
1687
+
}
1688
+
},
1689
+
"required": ["requestId"],
1690
+
"title": "Request",
1691
+
"type": "object"
1692
+
}
1693
+
],
1694
+
"description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nRequest from the agent to elicit structured user input.\n\nThe agent sends this to the client to request information from the user,\neither via a form or by directing them to a URL.\nElicitations are tied to a session (optionally a tool call) or a request.",
1650
1695
"discriminator": {
1651
1696
"propertyName": "mode"
1652
1697
},
@@ -1693,17 +1738,6 @@
1693
1738
"message": {
1694
1739
"description": "A human-readable message describing what input is needed.",
1695
1740
"type": "string"
1696
-
},
1697
-
"scope": {
1698
-
"anyOf": [
1699
-
{
1700
-
"$ref": "#/$defs/ElicitationScope"
1701
-
},
1702
-
{
1703
-
"type": "null"
1704
-
}
1705
-
],
1706
-
"description": "Optional scope for this elicitation.\nWhen absent, the elicitation is standalone and not tied to any specific context."
1707
1741
}
1708
1742
},
1709
1743
"required": ["message"],
@@ -2285,54 +2319,6 @@
2285
2319
}
2286
2320
]
2287
2321
},
2288
-
"ElicitationScope": {
2289
-
"anyOf": [
2290
-
{
2291
-
"description": "Tied to a session, optionally to a specific tool call within that session.\n\nWhen `tool_call_id` is set, the elicitation is tied to a specific tool call.\nThis is useful when an agent receives an elicitation from an MCP server\nduring a tool call and needs to redirect it to the user.",
2292
-
"properties": {
2293
-
"sessionId": {
2294
-
"allOf": [
2295
-
{
2296
-
"$ref": "#/$defs/SessionId"
2297
-
}
2298
-
],
2299
-
"description": "The session this elicitation is tied to."
2300
-
},
2301
-
"toolCallId": {
2302
-
"anyOf": [
2303
-
{
2304
-
"$ref": "#/$defs/ToolCallId"
2305
-
},
2306
-
{
2307
-
"type": "null"
2308
-
}
2309
-
],
2310
-
"description": "Optional tool call within the session."
2311
-
}
2312
-
},
2313
-
"required": ["sessionId"],
2314
-
"title": "Session",
2315
-
"type": "object"
2316
-
},
2317
-
{
2318
-
"description": "Tied to a specific JSON-RPC request outside of a session\n(e.g., during auth/configuration phases before any session is started).",
2319
-
"properties": {
2320
-
"requestId": {
2321
-
"allOf": [
2322
-
{
2323
-
"$ref": "#/$defs/RequestId"
2324
-
}
2325
-
],
2326
-
"description": "The request this elicitation is tied to."
2327
-
}
2328
-
},
2329
-
"required": ["requestId"],
2330
-
"title": "Request",
2331
-
"type": "object"
2332
-
}
2333
-
],
2334
-
"description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nThe scope of an elicitation request, determining what context it's tied to."
2335
-
},
2336
2322
"ElicitationStringType": {
2337
2323
"description": "Items definition for untitled multi-select enum properties.",
0 commit comments