mcp: fail connect when subscriptions listen is rejected #1067
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Conformance Tests | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| workflow_dispatch: | |
| concurrency: | |
| group: conformance-${{ github.ref }} | |
| cancel-in-progress: true | |
| permissions: | |
| contents: read | |
| env: | |
| CONFORMANCE_VERSION: "0.2.0-alpha.10" | |
| jobs: | |
| server-conformance: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Check out code | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - name: Set up Go | |
| uses: actions/setup-go@b7ad1dad31e06c5925ef5d2fc7ad053ef454303e # v7.0.0 | |
| with: | |
| go-version: "^1.26" | |
| - name: Set up Node.js | |
| uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 | |
| with: | |
| node-version: 22 | |
| - name: Build everything-server | |
| run: go build -o everything-server ./conformance/everything-server | |
| - name: Run conformance tests (stateful, legacy spec versions) | |
| run: | | |
| ./everything-server -http=":3001" -stateless=false & | |
| SERVER_PID=$! | |
| trap "kill -9 $SERVER_PID 2>/dev/null || true; wait $SERVER_PID 2>/dev/null || true" EXIT | |
| timeout 30 bash -c 'until curl -s http://localhost:3001/mcp > /dev/null; do sleep 0.5; done' | |
| npx -y "@modelcontextprotocol/conformance@${CONFORMANCE_VERSION}" server \ | |
| --url http://localhost:3001/mcp \ | |
| --suite active \ | |
| --spec-version 2025-11-25 \ | |
| --expected-failures ./conformance/baseline.yml | |
| - name: Run conformance tests (stateless, 2026-07-28, full suite) | |
| run: | | |
| ./everything-server -http=":3001" -stateless & | |
| SERVER_PID=$! | |
| trap "kill -9 $SERVER_PID 2>/dev/null || true; wait $SERVER_PID 2>/dev/null || true" EXIT | |
| timeout 30 bash -c 'until curl -s http://localhost:3001/mcp > /dev/null; do sleep 0.5; done' | |
| npx -y "@modelcontextprotocol/conformance@${CONFORMANCE_VERSION}" server \ | |
| --url http://localhost:3001/mcp \ | |
| --suite all \ | |
| --spec-version 2026-07-28 \ | |
| --expected-failures ./conformance/baseline.yml | |
| client-conformance: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Check out code | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - name: Set up Go | |
| uses: actions/setup-go@b7ad1dad31e06c5925ef5d2fc7ad053ef454303e # v7.0.0 | |
| with: | |
| go-version: "^1.26" | |
| - name: Set up Node.js | |
| uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 | |
| with: | |
| node-version: 22 | |
| - name: Run conformance tests (full suite) | |
| run: | | |
| npx -y "@modelcontextprotocol/conformance@${CONFORMANCE_VERSION}" client \ | |
| --command "go run ./conformance/everything-client" \ | |
| --suite all \ | |
| --expected-failures ./conformance/baseline.yml |