We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/domdomegg/google-maps-places-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
name: CI/CD
on:
push:
branches: [master]
tags:
- 'v*'
pull_request:
jobs:
ci:
runs-on: ubuntu-latest
timeout-minutes: 10
strategy:
matrix:
node-version: [lts/*, current]
env:
CI: true
steps:
- name: Checkout ${{ github.sha }}
uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
registry-url: https://registry.npmjs.org/
- name: Install dependencies
run: npm ci
- name: Lint
run: npm run lint --if-present
- name: Build
run: npm run build --if-present
- name: Test
run: npm run test --if-present
deploy:
if: startsWith(github.ref, 'refs/tags/v') && github.event_name == 'push'
needs: ci
runs-on: ubuntu-latest
timeout-minutes: 15
permissions:
contents: write
id-token: write
env:
CI: true
steps:
- name: Checkout ${{ github.sha }}
uses: actions/checkout@v4
- name: Use Node.js with the npmjs.org registry
uses: actions/setup-node@v4
with:
node-version: lts/*
registry-url: https://registry.npmjs.org/
- name: Install dependencies
run: npm ci
- name: Build
run: npm run build --if-present
- name: Update server.json version
run: |
VERSION=$(node -p "require('./package.json').version")
sed "s/{{VERSION}}/$VERSION/g" server.json > server.json.tmp
mv server.json.tmp server.json
- uses: google-github-actions/auth@v2
with:
workload_identity_provider: 'projects/457105351064/locations/global/workloadIdentityPools/github-secrets-pool/providers/github-secrets-github'
- uses: google-github-actions/setup-gcloud@v2
- name: Get NPM token
id: npm-token
run: |
token=$(gcloud secrets versions access latest --secret=npm-token --project=gcp-github-secrets)
echo "::add-mask::$token"
echo "token=$token" >> "$GITHUB_OUTPUT"
- name: Publish to NPM
run: npm publish
env:
NODE_AUTH_TOKEN: ${{ steps.npm-token.outputs.token }}
- name: Create GitHub Release
uses: softprops/action-gh-release@v2
with:
generate_release_notes: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- 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
- name: Login to MCP Registry
run: ./mcp-publisher login github-oidc
- name: Publish to MCP Registry
run: ./mcp-publisher publish