|
29 | 29 | - uses: Swatinem/rust-cache@v2 |
30 | 30 |
|
31 | 31 | # Build the whole package (server + client bins): the conformance crate is |
32 | | - # excluded from the workspace default-members, so this is the only CI job |
33 | | - # that catches compile breakage in it. |
| 32 | + # excluded from the workspace default-members. |
34 | 33 | - name: Build conformance binaries |
35 | 34 | run: cargo build -p mcp-conformance |
36 | 35 |
|
|
75 | 74 | with: |
76 | 75 | name: conformance-server-results |
77 | 76 | path: conformance-results |
| 77 | + |
| 78 | + client: |
| 79 | + runs-on: ubuntu-latest |
| 80 | + permissions: |
| 81 | + contents: read |
| 82 | + steps: |
| 83 | + - uses: actions/checkout@v7 |
| 84 | + |
| 85 | + - name: Install Rust toolchain |
| 86 | + uses: dtolnay/rust-toolchain@stable |
| 87 | + |
| 88 | + - uses: Swatinem/rust-cache@v2 |
| 89 | + |
| 90 | + - name: Build conformance binaries |
| 91 | + run: cargo build -p mcp-conformance |
| 92 | + |
| 93 | + - name: Run client metadata conformance suite |
| 94 | + run: | |
| 95 | + npx -y "@modelcontextprotocol/conformance@${CONFORMANCE_VERSION}" client \ |
| 96 | + --command "$(pwd)/target/debug/conformance-client" \ |
| 97 | + --suite metadata \ |
| 98 | + --spec-version 2025-11-25 \ |
| 99 | + -o conformance-client-results/metadata |
| 100 | +
|
| 101 | + - name: Run client legacy auth fallback scenario |
| 102 | + run: | |
| 103 | + npx -y "@modelcontextprotocol/conformance@${CONFORMANCE_VERSION}" client \ |
| 104 | + --command "$(pwd)/target/debug/conformance-client" \ |
| 105 | + --scenario auth/2025-03-26-oauth-endpoint-fallback \ |
| 106 | + -o conformance-client-results/auth-2025-03-26-oauth-endpoint-fallback |
| 107 | +
|
| 108 | + - name: Upload results |
| 109 | + if: always() |
| 110 | + uses: actions/upload-artifact@v7 |
| 111 | + with: |
| 112 | + name: conformance-client-results |
| 113 | + path: conformance-client-results |
0 commit comments