Update to MCP conformance tests version 0.1.13 (#1249)

This commit is contained in:
Stephen Toub 2026-02-05 21:18:47 -05:00 • committed by GitHub
commit 0114de746e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 98 additions and 30 deletions

73
package-lock.json generated
View file

@ -1,12 +1,11 @@
{
"name": "csharp-sdk",
"name": "mcp",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"dependencies": {
"@modelcontextprotocol/conformance": "0.1.10",
"@modelcontextprotocol/sdk": "1.25.3",
"@modelcontextprotocol/conformance": "0.1.13",
"@modelcontextprotocol/server-everything": "2025.12.18",
"@modelcontextprotocol/server-memory": "2026.1.26"
}
@ -24,16 +23,18 @@
}
},
"node_modules/@modelcontextprotocol/conformance": {
"version": "0.1.10",
"resolved": "https://registry.npmjs.org/@modelcontextprotocol/conformance/-/conformance-0.1.10.tgz",
"integrity": "sha512-efzLxW3sNiC48ARADxNkSNSZREdjtQNJ+12MJHCUDSnHZMbiFa7v5SivB2Aja4LCE0ZiWgnG5I5PSNMBrp1xKg==",
"version": "0.1.13",
"resolved": "https://registry.npmjs.org/@modelcontextprotocol/conformance/-/conformance-0.1.13.tgz",
"integrity": "sha512-J9cC7Dsi7hTn7sxorvxDZ+wC8OlHAkOmVxVm1/IBQ8HEpYJu8r0eAUEw68vTmjBPP5WcU8Jld4RZ3cOFp/Ih1g==",
"license": "MIT",
"dependencies": {
"@modelcontextprotocol/sdk": "^1.25.2",
"@modelcontextprotocol/sdk": "^1.26.0",
"commander": "^14.0.2",
"eventsource-parser": "^3.0.6",
"express": "^5.1.0",
"jose": "^6.1.2",
"undici": "^7.19.0",
"yaml": "^2.8.2",
"zod": "^3.25.76"
},
"bin": {
@ -41,9 +42,9 @@
}
},
"node_modules/@modelcontextprotocol/sdk": {
"version": "1.25.3",
"resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.25.3.tgz",
"integrity": "sha512-vsAMBMERybvYgKbg/l4L1rhS7VXV1c0CtyJg72vwxONVX0l4ZfKVAnZEWTQixJGTzKnELjQ59e4NbdFDALRiAQ==",
"version": "1.26.0",
"resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.26.0.tgz",
"integrity": "sha512-Y5RmPncpiDtTXDbLKswIJzTqu2hyBKxTNsgKqKclDbhIgg1wgtf1fRuvxgTnRfcnxtvvgbIEcqUOzZrJ6iSReg==",
"license": "MIT",
"dependencies": {
"@hono/node-server": "^1.19.9",
@ -54,14 +55,15 @@
"cross-spawn": "^7.0.5",
"eventsource": "^3.0.2",
"eventsource-parser": "^3.0.0",
"express": "^5.0.1",
"express-rate-limit": "^7.5.0",
"jose": "^6.1.1",
"express": "^5.2.1",
"express-rate-limit": "^8.2.1",
"hono": "^4.11.4",
"jose": "^6.1.3",
"json-schema-typed": "^8.0.2",
"pkce-challenge": "^5.0.0",
"raw-body": "^3.0.0",
"zod": "^3.25 || ^4.0",
"zod-to-json-schema": "^3.25.0"
"zod-to-json-schema": "^3.25.1"
},
"engines": {
"node": ">=18"
@ -467,10 +469,13 @@
}
},
"node_modules/express-rate-limit": {
"version": "7.5.1",
"resolved": "https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-7.5.1.tgz",
"integrity": "sha512-7iN8iPMDzOMHPUYllBEsQdWVB6fPDMPqwjBaFrgr4Jgr/+okjvzAy+UHlYYL/Vs0OsOrMkwS6PJDkFlJwoxUnw==",
"version": "8.2.1",
"resolved": "https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-8.2.1.tgz",
"integrity": "sha512-PCZEIEIxqwhzw4KF0n7QF4QqruVTcF73O5kFKUnGOyjbCCgizBBiFaYpd/fnBLUMPw/BWw9OsiN7GgrNYr7j6g==",
"license": "MIT",
"dependencies": {
"ip-address": "10.0.1"
},
"engines": {
"node": ">= 16"
},
@ -629,7 +634,6 @@
"resolved": "https://registry.npmjs.org/hono/-/hono-4.11.7.tgz",
"integrity": "sha512-l7qMiNee7t82bH3SeyUCt9UF15EVmaBvsppY2zQtrbIhl/yzBTny+YUxsVjSjQ6gaqaeVtZmGocom8TzBlA4Yw==",
"license": "MIT",
"peer": true,
"engines": {
"node": ">=16.9.0"
}
@ -682,6 +686,15 @@
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
"license": "ISC"
},
"node_modules/ip-address": {
"version": "10.0.1",
"resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.0.1.tgz",
"integrity": "sha512-NWv9YLW4PoW2B7xtzaS3NCot75m6nK7Icdv0o3lfMceJVRfSoQwqD4wEH5rLwoKJwUiZ/rfpiVBhnaF0FK4HoA==",
"license": "MIT",
"engines": {
"node": ">= 12"
}
},
"node_modules/ipaddr.js": {
"version": "1.9.1",
"resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
@ -1207,6 +1220,15 @@
"node": ">= 0.6"
}
},
"node_modules/undici": {
"version": "7.20.0",
"resolved": "https://registry.npmjs.org/undici/-/undici-7.20.0.tgz",
"integrity": "sha512-MJZrkjyd7DeC+uPZh+5/YaMDxFiiEEaDgbUSVMXayofAkDWF1088CDo+2RPg7B1BuS1qf1vgNE7xqwPxE0DuSQ==",
"license": "MIT",
"engines": {
"node": ">=20.18.1"
}
},
"node_modules/unpipe": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
@ -1252,6 +1274,21 @@
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
"license": "ISC"
},
"node_modules/yaml": {
"version": "2.8.2",
"resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.2.tgz",
"integrity": "sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==",
"license": "ISC",
"bin": {
"yaml": "bin.mjs"
},
"engines": {
"node": ">= 14.6"
},
"funding": {
"url": "https://github.com/sponsors/eemeli"
}
},
"node_modules/zod": {
"version": "3.25.76",
"resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz",

View file

@ -2,8 +2,7 @@
"private": true,
"description": "Pinned npm dependencies for MCP C# SDK integration and conformance tests",
"dependencies": {
"@modelcontextprotocol/conformance": "0.1.10",
"@modelcontextprotocol/sdk": "1.25.3",
"@modelcontextprotocol/conformance": "0.1.13",
"@modelcontextprotocol/server-everything": "2025.12.18",
"@modelcontextprotocol/server-memory": "2026.1.26"
}

View file

@ -332,16 +332,49 @@ public class ConformanceTools
{
Properties =
{
["color"] = new ElicitRequestParams.UntitledSingleSelectEnumSchema()
["untitledSingle"] = new ElicitRequestParams.UntitledSingleSelectEnumSchema()
{
Description = "Choose a color",
Enum = ["red", "green", "blue"]
Description = "Choose an option",
Enum = ["option1", "option2", "option3"]
},
["size"] = new ElicitRequestParams.UntitledSingleSelectEnumSchema()
["titledSingle"] = new ElicitRequestParams.TitledSingleSelectEnumSchema()
{
Description = "Choose a size",
Enum = ["small", "medium", "large"],
Default = "medium"
Description = "Choose a titled option",
OneOf =
[
new() { Const = "value1", Title = "First Option" },
new() { Const = "value2", Title = "Second Option" },
new() { Const = "value3", Title = "Third Option" }
]
},
#pragma warning disable MCP9001
["legacyEnum"] = new ElicitRequestParams.LegacyTitledEnumSchema()
{
Description = "Choose a legacy option",
Enum = ["opt1", "opt2", "opt3"],
EnumNames = ["Option One", "Option Two", "Option Three"]
},
#pragma warning restore MCP9001
["untitledMulti"] = new ElicitRequestParams.UntitledMultiSelectEnumSchema()
{
Description = "Choose multiple options",
Items = new ElicitRequestParams.UntitledEnumItemsSchema
{
Enum = ["option1", "option2", "option3"]
}
},
["titledMulti"] = new ElicitRequestParams.TitledMultiSelectEnumSchema()
{
Description = "Choose multiple titled options",
Items = new ElicitRequestParams.TitledEnumItemsSchema
{
AnyOf =
[
new() { Const = "value1", Title = "First Choice" },
new() { Const = "value2", Title = "Second Choice" },
new() { Const = "value3", Title = "Third Choice" }
]
}
}
}
};
@ -354,8 +387,7 @@ public class ConformanceTools
if (result.Action == "accept" && result.Content != null)
{
return $"Accepted with values: color={result.Content["color"].GetString()}, " +
$"size={result.Content["size"].GetString()}";
return $"Elicitation completed: action={result.Action}, content={result.Content}";
}
else
{

View file

@ -5,5 +5,5 @@
"Microsoft.AspNetCore": "Warning"
}
},
"AllowedHosts": "*"
"AllowedHosts": "localhost;127.0.0.1;[::1]"
}