Skip to main content
Glama
mcpb-pack.yaml3.95 kB
name: Release MCPB on: push: tags: - '*' workflow_dispatch: jobs: build-and-release: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v5 - name: Use Node.js 22 uses: actions/setup-node@v4 with: node-version: '22' cache: 'npm' - name: Install dependencies run: npm ci - name: Sync manifest versions with package.json run: | pkg_version=$(jq -r .version package.json) jq --arg v "$pkg_version" '.version = $v' manifest-minimal.json > manifest-minimal.tmp.json mv manifest-minimal.tmp.json manifest-minimal.json jq --arg v "$pkg_version" '.version = $v' manifest-full.json > manifest-full.tmp.json mv manifest-full.tmp.json manifest-full.json jq --arg v "$pkg_version" '.version = $v' manifest-code.json > manifest-code.tmp.json mv manifest-code.tmp.json manifest-code.json - name: Build project run: npm run build - name: Install dependencies for packaging run: npm ci --omit=dev - name: Install MCPB run: npm install -g @anthropic-ai/mcpb - name: Package extensions run: | current_dir=$(basename "$PWD") # Package minimal version cp manifest-minimal.json manifest.json mcpb pack mv "${current_dir}.mcpb" "${current_dir}-minimal.mcpb" # Package full version cp manifest-full.json manifest.json mcpb pack mv "${current_dir}.mcpb" "${current_dir}-full.mcpb" # Package code version cp manifest-code.json manifest.json mcpb pack mv "${current_dir}.mcpb" "${current_dir}-code.mcpb" # Set environment variables echo "MCPB_MINIMAL_FILENAME=${current_dir}-minimal.mcpb" >> $GITHUB_ENV echo "MCPB_FULL_FILENAME=${current_dir}-full.mcpb" >> $GITHUB_ENV echo "MCPB_CODE_FILENAME=${current_dir}-code.mcpb" >> $GITHUB_ENV - name: Upload minimal release asset uses: svenstaro/upload-release-action@7027b7670c56b9473901daad1fb8a09ab534688e with: repo_token: ${{ secrets.GITHUB_TOKEN }} file: ${{ env.MCPB_MINIMAL_FILENAME }} asset_name: ${{ env.MCPB_MINIMAL_FILENAME }} tag: ${{ github.ref }} overwrite: true - name: Upload full release asset uses: svenstaro/upload-release-action@7027b7670c56b9473901daad1fb8a09ab534688e with: repo_token: ${{ secrets.GITHUB_TOKEN }} file: ${{ env.MCPB_FULL_FILENAME }} asset_name: ${{ env.MCPB_FULL_FILENAME }} tag: ${{ github.ref }} overwrite: true - name: Upload code release asset uses: svenstaro/upload-release-action@7027b7670c56b9473901daad1fb8a09ab534688e with: repo_token: ${{ secrets.GITHUB_TOKEN }} file: ${{ env.MCPB_CODE_FILENAME }} asset_name: ${{ env.MCPB_CODE_FILENAME }} tag: ${{ github.ref }} overwrite: true publish-mcp: needs: build-and-release runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v5 - name: Install MCP Publisher run: | curl -L "https://github.com/modelcontextprotocol/registry/releases/latest/download/mcp-publisher_$(uname -s | tr '[:upper:]' '[:lower:]')_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz" | tar xz chmod +x mcp-publisher - name: Login to MCP Registry run: | echo "${{ secrets.MCP_PRIVATE_KEY }}" > key.pem ./mcp-publisher login dns --domain postman.com --private-key $(openssl pkey -in key.pem -noout -text | grep -A3 "priv:" | tail -n +2 | tr -d ' :\n') - name: Publish to MCP Registry run: ./mcp-publisher publish

Latest Blog Posts

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/postmanlabs/postman-mcp-server'

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