From 2e0bdc3b9fc96d88cd80ff0c463935bae37dd235 Mon Sep 17 00:00:00 2001 From: Weidong Sun Date: Wed, 10 Dec 2025 14:14:48 +0800 Subject: [PATCH] =?UTF-8?q?CC=20SIG:=20add=20'=E5=9F=BA=E4=BA=8EConfidenti?= =?UTF-8?q?al=C2=A0AI=E8=A7=A3=E5=86=B3=E6=96=B9=E6=A1=88=E5=9C=A8Anolis?= =?UTF-8?q?=C2=A023=E4=B8=8A=E6=9E=84=E5=BB=BA=E6=9C=BA=E5=AF=86MCP?= =?UTF-8?q?=E6=9C=8D=E5=8A=A1'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Weidong Sun --- .../assets/confidential_mcp.png | Bin 0 -> 35141 bytes ...345\257\206MCP\346\234\215\345\212\241.md" | 251 ++++++++++++++++++ 2 files changed, 251 insertions(+) create mode 100644 sig/ConfidentialComputing/assets/confidential_mcp.png create mode 100644 "sig/ConfidentialComputing/content/Confidential_AI/\345\237\272\344\272\216Confidential\302\240AI\350\247\243\345\206\263\346\226\271\346\241\210\345\234\250Anolis\302\24023\344\270\212\346\236\204\345\273\272\346\234\272\345\257\206MCP\346\234\215\345\212\241.md" diff --git a/sig/ConfidentialComputing/assets/confidential_mcp.png b/sig/ConfidentialComputing/assets/confidential_mcp.png new file mode 100644 index 0000000000000000000000000000000000000000..4d7c6c331216b4f2ba31182ee95b329aa86e6f21 GIT binary patch literal 35141 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 XkZqdT4998kFZ 3001.txt +tcpdump -i lo -n -A 'port 13001' > 13001.txt +``` +```shell +10:09:14.944981 IP 127.0.0.1.45632 > 127.0.0.1.origo-native: Flags [P.], seq 1:413, ack 1, win 512, options [nop,nop,TS val 1081300955 ecr 1081300954], length 412 +E.....@.@.2l.........@..Z..Q............... +@sW.@sW.POST /mcp HTTP/1.1 +host: localhost:3001 +connection: keep-alive +mcp-session-id: 8cac1a3c-fe43-45cc-9598-1a82786e4ceb +mcp-protocol-version: 2025-03-26 +User-Agent: Cursor/2.0.77 (linux x64) +content-type: application/json +accept: application/json, text/event-stream +accept-language: * +sec-fetch-mode: cors +accept-encoding: gzip, deflate +content-length: 46 + +{"method":"tools/list","jsonrpc":"2.0","id":1} +10:09:14.944986 IP 127.0.0.1.origo-native > 127.0.0.1.45632: Flags [.], ack 413, win 509, options [nop,nop,TS val 1081300955 ecr 1081300955], length 0 +E..4./@.@.v............@....Z........(..... +@sW.@sW. +10:09:14.945929 IP 127.0.0.1.origo-native > 127.0.0.1.45632: Flags [P.], seq 1:4537, ack 413, win 512, options [nop,nop,TS val 1081300956 ecr 1081300955], length 4536 +E....0@.@.d............@....Z.............. +@sW.@sW.HTTP/1.1 200 OK +X-Powered-By: Express +Content-Type: text/event-stream +Cache-Control: no-cache +Connection: keep-alive +mcp-session-id: 8cac1a3c-fe43-45cc-9598-1a82786e4ceb +Date: Thu, 20 Nov 2025 02:09:14 GMT +Transfer-Encoding: chunked + +10b8 +event: message +id: 807842b1-fac6-49eb-9343-5caaec1e2489_1763604554945_niyh31ox +data: {"result":{"tools":[{"name":"echo","description":"Echoes back the input","inputSchema":{"type":"object","properties":{"message":{"type":"string","description":"Message to echo"}},"required":["message"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"add","description":"Adds two numbers","inputSchema":{"type":"object","properties":{"a":{"type":"number","description":"First number"},"b":{"type":"number","description":"Second number"}},"required":["a","b"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"longRunningOperation","description":"Demonstrates a long running operation with progress updates","inputSchema":{"type":"object","properties":{"duration":{"type":"number","default":10,"description":"Duration of the operation in seconds"},"steps":{"type":"number","default":5,"description":"Number of steps in the operation"}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"printEnv","description":"Prints all environment variables, helpful for debugging MCP server configuration","inputSchema":{"type":"object","properties":{},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"sampleLLM","description":"Samples from an LLM using MCP's sampling feature","inputSchema":{"type":"object","properties":{"prompt":{"type":"string","description":"The prompt to send to the LLM"},"maxTokens":{"type":"number","default":100,"description":"Maximum number of tokens to generate"}},"required":["prompt"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"getTinyImage","description":"Returns the MCP_TINY_IMAGE","inputSchema":{"type":"object","properties":{},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"annotatedMessage","description":"Demonstrates how annotations can be used to provide metadata about content","inputSchema":{"type":"object","properties":{"messageType":{"type":"string","enum":["error","success","debug"],"description":"Type of message to demonstrate different annotation patterns"},"includeImage":{"type":"boolean","default":false,"description":"Whether to include an example image"}},"required":["messageType"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"getResourceReference","description":"Returns a resource reference that can be used by MCP clients","inputSchema":{"type":"object","properties":{"resourceId":{"type":"number","minimum":1,"maximum":100,"description":"ID of the resource to reference (1-100)"}},"required":["resourceId"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"startElicitation","description":"Demonstrates the Elicitation feature by asking the user to provide information about their favorite color, number, and pets.","inputSchema":{"type":"object","properties":{},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"getResourceLinks","description":"Returns multiple resource links that reference different types of resources","inputSchema":{"type":"object","properties":{"count":{"type":"number","minimum":1,"maximum":10,"default":3,"description":"Number of resource links to return (1-10)"}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"structuredContent","description":"Returns structured content along with an output schema for client data validation","inputSchema":{"type":"object","properties":{"location":{"type":"string","minLength":1,"description":"City name or zip code"}},"required":["location"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"},"outputSchema":{"type":"object","properties":{"temperature":{"type":"number","description":"Temperature in celsius"},"conditions":{"type":"string","description":"Weather conditions description"},"humidity":{"type":"number","description":"Humidity percentage"}},"required":["temperature","conditions","humidity"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}}]},"jsonrpc":"2.0","id":1} +``` +```shell +09:57:31.774345 IP 127.0.0.1.48638 > 127.0.0.1.13001: Flags [P.], seq 33:613, ack 58, win 512, options [nop,nop,TS val 1080597784 ecr 1080597784], length 580 +E..x.C@.@.P:..........2...#..........m..... +@h..@h......?.@.....O27.N\..0..e..A........x....0..P.F,1X.....^.H...l...Z....Dp-.z.[x....Ni3Z.D..E....b..=.M...+&x.V.T.5....s..4_.....{#oHs.|.>9m..d.........&\.....c+D....s..D.e....WP2l....,..p,{l.C.3.UR.?fG.a +..6.+..#cRKl... .-...c.,.....m6.....nr..j.a..H.. +..f.%/t..^0..P...*K......!a=k.H.Q..'.......Y;.....*[...P.NL;< .K...t1...`..x ..}IX.........d..B#.....MM.......7.A.....?..^.^.....Cg........e..1].....\.....4..`U.....}h.....l.g.q .Y.s. .T.x...-..'.4....N..)...t.. .......g..|.4.h...G6.. .e......]y.%...............8.q...y.....v..}:.$.....5.b...7r.*~.....ty.)E..|.p....[.. +09:57:31.775585 IP 127.0.0.1.13001 > 127.0.0.1.48638: Flags [P.], seq 58:2073, ack 613, win 512, options [nop,nop,TS val 1080597785 ecr 1080597784], length 2015 +E...p.@.@...........2.........%............ +@h..@h............l~.u.Cj.=.&&...e......}............Yv.........l.... ..UF,..DB..E......O.d.:l3...'M.Q*.B....K~..L.:|......dfx.wDr.d...=.z!.,...P.\....-V.0EP.......m...4..|.A6..q....].1.uc...sfHw....c.Y...*....,...9.. +h.t......@.....0.'rMU;.......L/\....Jb....X.v..-@&.......c..?u!...7\jB..zw.,T...>0.......t.......?X.?....f'........B..ooI.....I..H,...-.RBA.>..z..ky...#n..J3..5.....i............*....N).TY...[.>.`....I.._.\.]v....C.w.xBq.W.|.u....>..6...4.......gt.........w..6.......?....(..)......s..?%.j...E0..Rp..Q.....F.,..\.C.T..m.....G...G..........(.g..W02.h...[[..b.\.`A.......e3.....p...3..O{nR.d.....;c.u.(....g..G-... ".9=."8.7.}. .'x*..t.'n. +..s^.....Od|..9L.. T..jzz(....u.. +.EOe.Lh.g.Se A.....[lNT....7...L...i...]...@....!E..C. .....P.!..w..p..ir..k`XX+.&...'.-.}.@l...-Q.n..e........AY.1..[.6!...8=8EX.........N.y9D..en.I%..|V2...OL..&>.B7b..W..fh.Y..1.6....ZU.U.q.K5 ..u.`.WQA..F... Pt.....n1M. .{.B..A..&~..~...nB.......-.......#]i../..o.e...&.. .....G..f....b.a....._...Y.n....?........B../........M.UOB}....).B}...i.[4.y2....7B1..W.C1..2*..%...i.&..z\A..tl...*k.a..w......$..V.......R._.+.........o.I{;...F...Fm.o.Y.I4Y..........%1..}i.......0.K.q.U ....gWiw.og...5...R.b.B........A....&..g.....?.N.=h.m..|...{..]..2I..b\....*...Pu.&[\zg.Kc.....7..........n....d..`..o..mg.a~...QL...D.Y>..y1P.M.......>.... +mC...QY:".P...;.;K..ps.V6.?.z[|_k..t.#<.8ew....|.A.... >w`....L'/.e.Y.}?..i/c....e...|......v...o9........Ju^.........vL.....1..L(J..s.F..x.t.@...\....%...~..w..~v.......c..o.A.']..+B1...n..e........J..O...O.,JS6APp...:b....Qp.3.n. ..5....2.......WX.+Q..L....Frt...i....~......V../.!c?..M.4.^..;S..~9.zw..D._..M..T...u..Q..+.Z..AZ.......a$....b.*b.....on....p;2?..h.LG...l..a....T.}.?..yZ$wN0t..gr.....F.\:..0.A........x>..t+..s.Y......Zt..@^.v...Y...a..,...#c. <.6z4.7#X...,.............}..".,.1.Q.. ...l.{..... +.......