Skip to main content
Glama

Keboola Explorer MCP Server

release.yml3.95 kB
name: Build and Push Docker Image on: push: tags: - 'v*' - 'agent-v*' env: SERVICE_IMAGE_NAME: "keboola/mcp-server" jobs: build-and-push: runs-on: ubuntu-latest permissions: contents: read id-token: write steps: - name: Checkout repository uses: actions/checkout@v4 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - name: Extract metadata id: meta uses: docker/metadata-action@v5 with: images: | ${{ env.SERVICE_IMAGE_NAME }} tags: | type=sha,format=long type=raw,value=production-${{ github.sha }},enable=${{ (startsWith(github.ref, 'refs/tags/v') || startsWith(github.ref, 'refs/tags/agent-v')) && !contains(github.ref, '-dev.') }} type=raw,value=latest,enable=${{ startsWith(github.ref, 'refs/tags/v') && !contains(github.ref, '-dev.') }} type=raw,value=canary-orion-${{ github.sha }},enable=${{ (startsWith(github.ref, 'refs/tags/v') || startsWith(github.ref, 'refs/tags/agent-v')) && contains(github.ref, '-dev.') }} - name: Docker login uses: docker/login-action@v3 with: username: ${{ secrets.DOCKERHUB_PUSH_USER }} password: ${{ secrets.DOCKERHUB_PUSH_TOKEN }} # Build for tests (single-arch, load into daemon) - name: Build Docker image uses: docker/build-push-action@v6 with: context: . file: ./Dockerfile # Explicitly specify the Dockerfile path tags: "keboola/mcp-server:ci" push: false load: true cache-from: type=gha cache-to: type=gha,mode=max - name: Run simple e2e test run: | set -euo pipefail STORAGE_API_TOKEN=${{ secrets.INTEGTEST_STORAGE_TOKEN }} STORAGE_API_URL=${{ vars.INTEGTEST_STORAGE_API_URL }} WORKSPACE_SCHEMA=${{ vars.INTEGTEST_WORKSPACE_SCHEMA }} ./tests/docker/ci.sh # Push multi-arch image (no load) - name: Push Docker image uses: docker/build-push-action@v6 with: context: . file: ./Dockerfile platforms: linux/amd64,linux/arm64 tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} push: true cache-from: type=gha cache-to: type=gha,mode=max - name: Trigger image tag update for canary-orion uses: ./.github/actions/trigger-image-tag-update if: startsWith(github.ref, 'refs/tags/v') && contains(github.ref, '-dev.') with: helm-chart: "mcp-server" image-tag: canary-orion-${{ github.sha }} github-app-private-key: ${{ secrets.GITOPS_KBC_STACKS_TRIGGER_APP_PVK }} - name: Trigger image tag update for production uses: ./.github/actions/trigger-image-tag-update if: startsWith(github.ref, 'refs/tags/v') && !contains(github.ref, '-dev.') with: helm-chart: "mcp-server" image-tag: production-${{ github.sha }} github-app-private-key: ${{ secrets.GITOPS_KBC_STACKS_TRIGGER_APP_PVK }} - name: Trigger image tag update for canary-orion (agent) uses: ./.github/actions/trigger-image-tag-update if: startsWith(github.ref, 'refs/tags/agent-v') && contains(github.ref, '-dev.') with: helm-chart: "mcp-server-agent" image-tag: canary-orion-${{ github.sha }} github-app-private-key: ${{ secrets.GITOPS_KBC_STACKS_TRIGGER_APP_PVK }} - name: Trigger image tag update for production (agent) uses: ./.github/actions/trigger-image-tag-update if: startsWith(github.ref, 'refs/tags/agent-v') && !contains(github.ref, '-dev.') with: helm-chart: "mcp-server-agent" image-tag: production-${{ github.sha }} github-app-private-key: ${{ secrets.GITOPS_KBC_STACKS_TRIGGER_APP_PVK }}

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/keboola/keboola-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server