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
Copy file name to clipboardExpand all lines: docs/specification/draft/client/elicitation.mdx
+5-6Lines changed: 5 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -31,7 +31,6 @@ For trust & safety and security:
31
31
32
32
- Servers **MUST NOT** use form mode elicitation to request sensitive information
33
33
- Servers **MUST** use URL mode for interactions involving sensitive information, such as credentials
34
-
- URLs **MUST NOT** appear in any field of an elicitation request, other than the `url` field in an URL mode request
35
34
36
35
MCP clients **MUST**:
37
36
@@ -699,11 +698,10 @@ Clients **MUST** return standard JSON-RPC errors for common failure cases:
699
698
700
699
MCP servers requesting elicitation:
701
700
702
-
1.**MUST NOT** include URLs in any message or schema fields as part of a form mode elicitation request.
703
-
1.**MUST NOT** include URLs in any message or schema fields as part of an URL mode elicitation request, except for the `url` field.
704
-
1.**MUST NOT** include plain text sensitive information about the end-user, including credentials, personal identifiable information, etc., in the URL sent to the client.
705
-
1.**MUST NOT** provide a URL which is pre-authenticated to access a protected resource, as the URL could be used to impersonate the user by a malicious client.
706
-
1.**SHOULD** use HTTPS URLs for non-development environments.
701
+
1.**MUST NOT** include sensitive information about the end-user, including credentials, personal identifiable information, etc., in the URL sent to the client in a URL elicitation request.
702
+
2.**MUST NOT** provide a URL which is pre-authenticated to access a protected resource, as the URL could be used to impersonate the user by a malicious client.
703
+
3.**SHOULD NOT** include URLs intended to be clickable in any field of a form mode elicitation request.
704
+
4.**SHOULD** use HTTPS URLs for non-development environments.
707
705
708
706
These server requirements ensure that client implementations have clear rules about when to present a URL to the user, so that the client-side rules (below) can be consistently applied.
For example, on iOS, [SFSafariViewController](https://developer.apple.com/documentation/safariservices/sfsafariviewcontroller) is good, but [WkWebView](https://developer.apple.com/documentation/webkit/wkwebview) is not.
719
717
5.**SHOULD** highlight the domain of the URL to mitigate subdomain spoofing.
720
718
6.**SHOULD** have warnings for ambiguous/suspicious URIs (i.e., containing Punycode).
719
+
7.**SHOULD NOT** render URLs as clickable in any field of an elicitation request, except for the `url` field in a URL elicitation request (with the restrictions detailed above).
0 commit comments