# Component 1: MCP Setup **Type:** Infrastructure **Priority:** P0 **Status:** Not Started ## Goal Install and configure GA4 + BigQuery MCP servers for Claude Code. ## Prerequisites - Google Cloud account - GA4 property access - `gcloud` CLI installed ## Setup Steps ### Step 1: Google Cloud Project ```bash # Authenticate gcloud auth login # Set project (create if needed) gcloud config set project YOUR_PROJECT_ID # Enable APIs gcloud services enable \ analyticsdata.googleapis.com \ analyticsadmin.googleapis.com \ bigquery.googleapis.com ``` ### Step 2: Service Account ```bash # Create service account gcloud iam service-accounts create ga-mcp-agent \ --display-name="GA MCP Agent" # Get email SA_EMAIL="ga-mcp-agent@YOUR_PROJECT_ID.iam.gserviceaccount.com" # Grant BigQuery roles gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \ --member="serviceAccount:$SA_EMAIL" \ --role="roles/bigquery.dataViewer" gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \ --member="serviceAccount:$SA_EMAIL" \ --role="roles/bigquery.jobUser" # Download key gcloud iam service-accounts keys create \ ../config/service-account.json \ --iam-account=$SA_EMAIL ``` ### Step 3: GA4 Property Access 1. Go to [GA4 Admin](https://analytics.google.com/) 2. Property → Property Access Management 3. Add user: `ga-mcp-agent@YOUR_PROJECT_ID.iam.gserviceaccount.com` 4. Role: Viewer ### Step 4: Install GA4 MCP Server ```bash # Clone official server git clone https://github.com/googleanalytics/google-analytics-mcp.git cd google-analytics-mcp # Setup Python environment python -m venv venv source venv/bin/activate pip install -e . # Test export GOOGLE_APPLICATION_CREDENTIALS="../config/service-account.json" python -m google_analytics_mcp --help ``` ### Step 5: Install BigQuery MCP Server ```bash # Test with npx (no install needed) npx -y @ergut/mcp-bigquery-server \ --project-id YOUR_PROJECT_ID \ --location us-central1 \ --key-file ../config/service-account.json ``` ### Step 6: Configure Claude Code Add to `~/.claude/mcp_servers.json`: ```json { "mcpServers": { "google-analytics": { "command": "python", "args": ["-m", "google_analytics_mcp"], "cwd": "/path/to/google-analytics-mcp", "env": { "GOOGLE_APPLICATION_CREDENTIALS": "/path/to/service-account.json" } }, "bigquery": { "command": "npx", "args": [ "-y", "@ergut/mcp-bigquery-server", "--project-id", "YOUR_PROJECT_ID", "--location", "us-central1", "--key-file", "/path/to/service-account.json" ] } } } ``` ### Step 7: Verify ```bash # Restart Claude Code, then: mcp-cli servers # Should show: google-analytics, bigquery mcp-cli tools google-analytics mcp-cli tools bigquery ``` ## Checklist - [ ] GCP project configured - [ ] APIs enabled - [ ] Service account created - [ ] GA4 access granted - [ ] GA4 MCP installed - [ ] BigQuery MCP installed - [ ] Claude Code configured - [ ] Connection verified