add --format fastmcp option to inspect CLI (#49) #64
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: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| # Cancel in-progress runs for the same ref when a new commit is pushed. | |
| concurrency: | |
| group: ci-${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| test: | |
| name: Test (Node ${{ matrix.node }}) | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| node: ['22', '24', 'latest'] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ matrix.node }} | |
| cache: npm | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Typecheck | |
| run: npm run typecheck | |
| - name: Unit & integration tests | |
| run: npm test | |
| - name: Build | |
| run: npm run build | |
| - name: Verify dist exports | |
| run: node scripts/test-dist.mjs | |
| - name: Verify browser bundle | |
| run: npm run test:browser-bundle | |
| e2e: | |
| name: Browser e2e (OAuth) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: '22' | |
| cache: npm | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Install Playwright Chromium | |
| run: npx playwright install --with-deps chromium | |
| - name: Run browser e2e tests | |
| run: npm run test:e2e | |
| conformance-server: | |
| name: MCP conformance (server) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: '22' | |
| cache: npm | |
| - name: Install dependencies | |
| run: npm ci | |
| # Boots the everything-server fixture, runs the pinned | |
| # @modelcontextprotocol/conformance suite (active + draft) against it, and | |
| # applies conformance-baseline.yml. Fails the job (and the PR) on any | |
| # regression or stale baseline entry — see tests/conformance/run-server.mjs. | |
| - name: Run server conformance suite | |
| run: npm run conformance:server | |
| conformance-client: | |
| name: MCP conformance (client) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: '22' | |
| cache: npm | |
| - name: Install dependencies | |
| run: npm ci | |
| # Runs the pinned @modelcontextprotocol/conformance suite in client mode | |
| # against the everything-client fixture (the four non-auth core scenarios, | |
| # plus the 14 [2025-11-25]-era core auth/* OAuth scenarios driven through | |
| # the OAuth-configured client driver, plus the draft filter) and applies | |
| # conformance-baseline.yml. Fails the job (and the PR) on any regression or | |
| # stale baseline entry — see tests/conformance/run-client.mjs. | |
| - name: Run client conformance suite | |
| run: npm run conformance:client |