#!/usr/bin/env bash
# Auth MCP Google via l'app OAuth « Cursor » (projet latoutfrancais, .secrets/.env).
set -euo pipefail

ROOT="$(cd "$(dirname "$0")/.." && pwd)"
export NPM_CONFIG_CACHE="${HOME}/.cache/npm-mcp"
export PATH="/opt/homebrew/bin:${HOME}/.local/bin:/usr/bin:/bin:/usr/sbin:/sbin"
CLIENT_FILE="${HOME}/.config/gcloud/cursor-latoutfrancais-oauth-client.json"
GCP_PROJECT="latoutfrancais"

echo "==> Sync client OAuth depuis .secrets/.env"
"${ROOT}/scripts/mcp-sync-oauth-client.sh"

echo ""
echo "==> Projet GCP actif : ${GCP_PROJECT}"
gcloud config set project "${GCP_PROJECT}" >/dev/null

echo ""
echo "==> Vérification (avant auth)"
"${ROOT}/scripts/mcp-oauth-whoami.sh" || true

echo ""
echo "==> ADC (GA4 + Google Ads) — client Desktop depuis .secrets/.env"
echo "    (Google peut afficher « PilotEcom » = nom de l'écran de consentement du projet)"
gcloud auth application-default login \
  --client-id-file="${CLIENT_FILE}" \
  --scopes="openid,https://www.googleapis.com/auth/userinfo.email,https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/analytics.readonly,https://www.googleapis.com/auth/webmasters.readonly,https://www.googleapis.com/auth/adwords,https://www.googleapis.com/auth/documents,https://www.googleapis.com/auth/drive"

echo ""
echo "==> GSC MCP — même app Cursor (config déjà synchronisée)"
npx -y @appsyogi/gsc-mcp-server init --force

echo ""
echo "==> Quota project ADC → ${GCP_PROJECT}"
gcloud auth application-default set-quota-project "${GCP_PROJECT}" 2>/dev/null || true

echo ""
echo "==> Diagnostics"
"${ROOT}/scripts/mcp-oauth-whoami.sh" || true
gcloud auth application-default print-access-token >/dev/null && echo "ADC token: OK" || echo "ADC token: KO"
npx -y @appsyogi/gsc-mcp-server doctor || true
echo ""
echo "Terminé. Redémarre les MCP : Cursor → Settings → MCP → Restart."
