-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Add server conformance testing #1375
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
- Move conformance server to src/conformance/everything-server.ts - Add scripts/run-server-conformance.sh to start server and run tests - Add server conformance scripts to package.json - Update GitHub Actions workflow with both client and server jobs - Add src/conformance/README.md with usage instructions - Add express, cors, and @modelcontextprotocol/server to root devDependencies
|
commit: |
- Remove unused Tool type import - Remove unused JSON_SCHEMA_2020_12_INPUT_SCHEMA constant (SEP-1613 test is pending - SDK validation supports the fields via PR #1135, but tool registration doesn't yet support generating raw JSON Schema) - Remove emoji from console.log - Alphabetize devDependencies in package.json
Pass through all arguments to conformance CLI instead of just suite name. This allows passing --scenario, --suite, or any other flags.
Runs the conformance server standalone for debugging.
b739add to
8856303
Compare
| .idea/ | ||
|
|
||
| # Conformance test results | ||
| results/ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: this feels slightly odd - it makes sense in the conformance repo because it's obvious what results is there, but here it could be slightly confusing.
E.g. src/conformance/results/ or conformance-results (nit only though, not sure if that might require a bunch of refactors)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yea... let me make an issue. i want to just not output the results by default, we don't use them.
| #!/usr/bin/env node | ||
|
|
||
| /** | ||
| * MCP Conformance Test Server |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this file seems to be mostly a copy-paste from the everything-server we previously had in the conformance repo so sgtm
Summary
Adds server conformance testing alongside the existing client conformance tests.
Changes
src/conformance/everything-server.tsscripts/run-server-conformance.shto start server and run teststest:conformance:server- run active server teststest:conformance:server:all- run all server teststest:conformance:all- run both client and server testssrc/conformance/README.mdwith usage instructionsexpress,cors, and@modelcontextprotocol/serverto root devDependenciesTest Results