#!/bin/bash
# Smart install/update script for Gemini MCP Server v3
set -e
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
PROJECT_ROOT="$(dirname "$SCRIPT_DIR")"
MCP_DIR="$HOME/.claude-mcp-servers/gemini-collab"
# Determine if this is first install or update
if [ -d "$MCP_DIR" ]; then
echo "š Updating Gemini MCP Server v3"
IS_UPDATE=true
else
echo "š Installing Gemini MCP Server v3"
IS_UPDATE=false
fi
echo " Source: $PROJECT_ROOT/server.py"
echo " Target: $MCP_DIR"
# Check if bundled server exists, if not create it
if [ ! -f "$PROJECT_ROOT/server.py" ]; then
echo "šØ Bundled server not found, creating from modular source..."
cd "$PROJECT_ROOT"
python3 scripts/bundler.py
fi
# Create MCP directory if needed
if [ ! -d "$MCP_DIR" ]; then
echo "š Creating MCP directory..."
mkdir -p "$MCP_DIR"
fi
# Backup existing server if updating
if [ "$IS_UPDATE" = true ] && [ -f "$MCP_DIR/server.py" ]; then
if ! cmp -s "$PROJECT_ROOT/server.py" "$MCP_DIR/server.py"; then
echo "š¦ Backing up current server..."
cp "$MCP_DIR/server.py" "$MCP_DIR/server.backup.$(date +%Y%m%d_%H%M%S).py"
fi
fi
# Deploy the server
if [ "$IS_UPDATE" = true ]; then
echo "š Updating server..."
else
echo "š¦ Installing server..."
fi
cp "$PROJECT_ROOT/server.py" "$MCP_DIR/server.py"
chmod +x "$MCP_DIR/server.py"
# Copy requirements
echo "š Copying requirements..."
cp "$PROJECT_ROOT/requirements.txt" "$MCP_DIR/"
# Copy .env.example if .env doesn't exist
if [ ! -f "$MCP_DIR/.env" ] && [ -f "$PROJECT_ROOT/.env.example" ]; then
echo "š Creating .env file from template..."
cp "$PROJECT_ROOT/.env.example" "$MCP_DIR/.env"
echo " ā ļø Remember to add your GEMINI_API_KEY to $MCP_DIR/.env"
fi
echo ""
if [ "$IS_UPDATE" = true ]; then
echo "ā Update complete!"
echo ""
echo "š Changes:"
echo " - Server rebuilt from modular source"
echo " - Previous version backed up"
else
echo "ā Installation complete!"
echo ""
echo "š Gemini MCP Server v3 is ready to use!"
fi
echo ""
echo "š Next steps:"
echo " 1. Ensure GEMINI_API_KEY is set in $MCP_DIR/.env"
echo " 2. Restart Claude Desktop"
echo " 3. Test with: mcp__gemini-collab__server_info"
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/lbds137/gemini-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server