Jupyter MCP Server

name: Build on: push: branches: ["main"] pull_request: defaults: run: shell: bash -eux {0} jobs: build: runs-on: ubuntu-latest strategy: fail-fast: false matrix: os: [ubuntu-latest, macos-latest, windows-latest] python-version: ["3.9", "3.13"] steps: - name: Checkout uses: actions/checkout@v4 - name: Base Setup uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 - name: Install the extension run: | python -m pip install ".[test]" - name: Test the extension run: | pytest . - name: Build the extension run: | pip install build python -m build --sdist cp dist/*.tar.gz my_server_extension.tar.gz pip uninstall -y "jupyter_mcp_server" rm -rf "jupyter_mcp_server" - uses: actions/upload-artifact@v4 if: startsWith(matrix.os, 'ubuntu') with: name: my_server_extension-sdist-${{ matrix.python-version }} path: my_server_extension.tar.gz check_links: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 - uses: jupyterlab/maintainer-tools/.github/actions/check-links@v1 test_lint: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 - name: Run Linters run: | bash ./.github/workflows/lint.sh test_sdist: needs: build runs-on: ubuntu-latest strategy: matrix: python-version: ["3.13"] steps: - name: Checkout uses: actions/checkout@v4 - name: Install Python uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} architecture: "x64" - uses: actions/download-artifact@v4 with: name: my_server_extension-sdist-${{ matrix.python-version }} - name: Install and Test run: | pip install my_server_extension.tar.gz pip list 2>&1 | grep -ie "jupyter_mcp_server" python -c "import jupyter_mcp_server" check_release: needs: test_sdist runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Base Setup uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 - name: Install Dependencies run: | pip install -e . - name: Check Release uses: jupyter-server/jupyter_releaser/.github/actions/check-release@v2 with: token: ${{ secrets.GITHUB_TOKEN }} - name: Upload Distributions uses: actions/upload-artifact@v4 with: name: jupyter_mcp_server-releaser-dist-${{ github.run_number }} path: .jupyter_releaser_checkout/dist