@@ -22,6 +22,7 @@ features = [
2222 " client-side-sse" ,
2323 " elicitation" ,
2424 " macros" ,
25+ " request-state" ,
2526 " reqwest" ,
2627 " reqwest-native-tls" ,
2728 " reqwest-tls-no-provider" ,
@@ -64,6 +65,10 @@ schemars = { version = "1.0", optional = true, features = ["chrono04"] }
6465# for image encoding
6566base64 = { version = " 0.22" , optional = true }
6667
68+ # for SEP-2322 requestState integrity sealing (opt-in via the `request-state` feature)
69+ hmac = { version = " 0.12" , optional = true }
70+ sha2 = { version = " 0.10" , optional = true }
71+
6772# for HTTP client
6873reqwest = { version = " 0.13.2" , default-features = false , features = [
6974 " json" ,
@@ -120,6 +125,9 @@ server = ["transport-async-rw", "dep:schemars", "dep:pastey"]
120125macros = [" dep:rmcp-macros" , " dep:pastey" ]
121126elicitation = [" dep:url" ]
122127
128+ # SEP-2322 requestState integrity helper (HMAC-SHA256 seal/open codec)
129+ request-state = [" dep:hmac" , " dep:sha2" , " base64" ]
130+
123131# reqwest http client
124132__reqwest = [" dep:reqwest" ]
125133
@@ -309,6 +317,11 @@ name = "test_trace_context"
309317required-features = [" server" , " client" ]
310318path = " tests/test_trace_context.rs"
311319
320+ [[test ]]
321+ name = " test_mrtr_behavior"
322+ required-features = [" server" , " client" ]
323+ path = " tests/test_mrtr_behavior.rs"
324+
312325[[test ]]
313326name = " test_prompt_macros"
314327required-features = [" server" , " client" ]
0 commit comments