🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
144 lines
3.0 KiB
Markdown
144 lines
3.0 KiB
Markdown
# 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
|