ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที รีวิวและบัญชีผู้ใช้จะมาในขั้นถัดไป
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · อธิบายเป็นภาษาคน

GA4 SEO MCP

โดย GermaniUรุ่น 0.1.2i★ –iรันบนเครื่อง
ชื่อใน registryio.github.GermaniU/ga4-seo-mcp

ติดตั้ง

ภาพรวม

คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)

Set up and audit site measurement: GA4, Search Console and PageSpeed. Read-only unless enabled.

สามเสาของ PopNx MCP

สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน

ใช้ทำอะไรได้

ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry

  • การเชื่อมต่อ: รันบนเครื่อง
  • ช่องทาง (transport): stdio
  • หมวด: การตลาดและโซเชียล
  • ต้องใส่ค่าเหล่านี้: PAGESPEED_API_KEY, DATAFORSEO_PASSWORD, GOOGLE_ADS_DEVELOPER_TOKEN

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ก่อนติดตั้ง

  • ผลตรวจเบื้องต้น: ผ่าน 1 จาก 1 ข้อ
  • รันในเครื่องคุณด้วยสิทธิ์ของผู้ใช้คุณ (ไฟล์ อินเทอร์เน็ต แอปต่าง ๆ)
  • ค่าที่คุณต้องใส่เอง: GOOGLE_APPLICATION_CREDENTIALS, GA4SEO_TOOLSETS, GA4SEO_ENABLE_WRITES, PAGESPEED_API_KEY, DATAFORSEO_LOGIN, DATAFORSEO_PASSWORD, GOOGLE_ADS_DEVELOPER_TOKEN, GOOGLE_ADS_LOGIN_CUSTOMER_ID

ค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต

ต้องเตรียมก่อน

  • PyPIติดตั้ง uv ของ Python (มีคำสั่ง uvx) ในเครื่อง

คุณใช้แอปไหน

เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”

เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json

{
  "mcpServers": {
    "ga4-seo": {
      "command": "uvx",
      "args": [
        "ga4-seo-mcp"
      ],
      "env": {
        "GOOGLE_APPLICATION_CREDENTIALS": "ใส่ค่าของคุณ",
        "GA4SEO_TOOLSETS": "ใส่ค่าของคุณ",
        "GA4SEO_ENABLE_WRITES": "ใส่ค่าของคุณ",
        "PAGESPEED_API_KEY": "ใส่ค่าของคุณ",
        "DATAFORSEO_LOGIN": "ใส่ค่าของคุณ",
        "DATAFORSEO_PASSWORD": "ใส่ค่าของคุณ",
        "GOOGLE_ADS_DEVELOPER_TOKEN": "ใส่ค่าของคุณ",
        "GOOGLE_ADS_LOGIN_CUSTOMER_ID": "ใส่ค่าของคุณ"
      }
    }
  }
}

พิมพ์คำสั่งนี้ใน Terminal

claude mcp add ga4-seo --env GOOGLE_APPLICATION_CREDENTIALS='ใส่ค่าของคุณ' --env GA4SEO_TOOLSETS='ใส่ค่าของคุณ' --env GA4SEO_ENABLE_WRITES='ใส่ค่าของคุณ' --env PAGESPEED_API_KEY='ใส่ค่าของคุณ' --env DATAFORSEO_LOGIN='ใส่ค่าของคุณ' --env DATAFORSEO_PASSWORD='ใส่ค่าของคุณ' --env GOOGLE_ADS_DEVELOPER_TOKEN='ใส่ค่าของคุณ' --env GOOGLE_ADS_LOGIN_CUSTOMER_ID='ใส่ค่าของคุณ' -- uvx ga4-seo-mcp

เติมค่าที่เว้นว่างไว้ก่อนรัน

เปิดใน Cursor

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json

{
  "mcpServers": {
    "ga4-seo": {
      "command": "uvx",
      "args": [
        "ga4-seo-mcp"
      ],
      "env": {
        "GOOGLE_APPLICATION_CREDENTIALS": "ใส่ค่าของคุณ",
        "GA4SEO_TOOLSETS": "ใส่ค่าของคุณ",
        "GA4SEO_ENABLE_WRITES": "ใส่ค่าของคุณ",
        "PAGESPEED_API_KEY": "ใส่ค่าของคุณ",
        "DATAFORSEO_LOGIN": "ใส่ค่าของคุณ",
        "DATAFORSEO_PASSWORD": "ใส่ค่าของคุณ",
        "GOOGLE_ADS_DEVELOPER_TOKEN": "ใส่ค่าของคุณ",
        "GOOGLE_ADS_LOGIN_CUSTOMER_ID": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .vscode/mcp.json ของโปรเจกต์

{
  "servers": {
    "ga4-seo": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "ga4-seo-mcp"
      ],
      "env": {
        "GOOGLE_APPLICATION_CREDENTIALS": "ใส่ค่าของคุณ",
        "GA4SEO_TOOLSETS": "ใส่ค่าของคุณ",
        "GA4SEO_ENABLE_WRITES": "ใส่ค่าของคุณ",
        "PAGESPEED_API_KEY": "ใส่ค่าของคุณ",
        "DATAFORSEO_LOGIN": "ใส่ค่าของคุณ",
        "DATAFORSEO_PASSWORD": "ใส่ค่าของคุณ",
        "GOOGLE_ADS_DEVELOPER_TOKEN": "ใส่ค่าของคุณ",
        "GOOGLE_ADS_LOGIN_CUSTOMER_ID": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น

ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี

ค่าที่ต้องใส่เอง

  • GOOGLE_APPLICATION_CREDENTIALS env
    Path to a service account key file. Leave unset to use Application Default Credentials from gcloud.
  • GA4SEO_TOOLSETS env
    Comma-separated toolsets: admin,data,gsc,psi,dataforseo,ads.
  • GA4SEO_ENABLE_WRITES env
    Set to 1 to register tools that create, update, delete, submit or verify. Off by default.
  • PAGESPEED_API_KEY ความลับ env
    PageSpeed Insights API key. Recommended: the anonymous quota is shared and often exhausted.
  • DATAFORSEO_LOGIN env
    DataForSEO login, for the dataforseo toolset.
  • DATAFORSEO_PASSWORD ความลับ env
    DataForSEO password, for the dataforseo toolset.
  • GOOGLE_ADS_DEVELOPER_TOKEN ความลับ env
    Google Ads developer token, for the ads toolset.
  • GOOGLE_ADS_LOGIN_CUSTOMER_ID env
    Manager (MCC) customer ID, only when operating through a manager account.

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

ทำอะไรได้บ้าง

รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 9 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub GermaniU ซึ่งเป็นเจ้าของ repo

  • … ยังไม่ตรวจ

    ยังมีคนดูแล

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    มีสัญญาอนุญาต (license)

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • – ไม่เกี่ยว

    endpoint ตอบ

    ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต

เทียบกับตัวอื่นในหมวด การตลาดและโซเชียลi

  • ดาวมากกว่า 0% ของอีก 3620 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 68% ของอีก 3620 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 3620 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

GA4 SEO MCP ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

ต้องใส่ค่าเหล่านี้: PAGESPEED_API_KEY, DATAFORSEO_PASSWORD, GOOGLE_ADS_DEVELOPER_TOKEN

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.2) เข้า registry 16 วันที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv), Docker ในเครื่องด้วย

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี MCP YouTube Transcript, Google Analytics MCP, BibiGPT YouTube Video Summarizer

ตัวที่ใช้แทนได้

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

MCP YouTube Transcript

An MCP server retrieving transcripts of YouTube videos

โดย jkawamotoกำลังโต★ 495อัปเดต 12 วันที่ผ่านมา

รันบนเครื่อง

Google Analytics MCP

GA4 MCP server for AI agents: schema discovery, server-side aggregation, analysis-ready defaults.

โดย surendranbกำลังโต↓ 1.1K/สัปดาห์★ 244อัปเดต 11 วันที่ผ่านมา

รันบนเครื่อง

BibiGPT YouTube Video Summarizer

AI video summarizer: summarize and transcribe YouTube, Bilibili, TikTok and podcast videos.

โดย JimmyLvกำลังโต★ 137อัปเดต 12 วันที่ผ่านมา

รันบนคลาวด์✓ bibigpt.co

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

English · Español

ga4-seo-mcp — site measurement for AI agents, end to end

Get a site's measurement ready end to end: GA4 + Search Console + PageSpeed, with optional, guarded writes.

An open source Model Context Protocol server for Google Analytics 4 & Search Console. Most MCP servers for Google *read* your data; this one can also set it up: property, web stream, key events, custom dimensions, Search Console DNS verification, sitemap and a PageSpeed baseline — read-only until you say otherwise.

Tags: mcp-server · ga4 · google-analytics · search-console · seo · pagespeed · core-web-vitals · keyword-research · claude-code · cursor

Real run: psi_audit on a public site and bootstrap_site_measurement(apply=False) planning a new site. The demo script redacts the account ID.


💡 Why this one?

Launching a site means the same chores every time: create the GA4 property and its web stream, mark the key events, register custom dimensions, add the domain to Search Console, publish a DNS TXT record, verify it, submit the sitemap, and record a PageSpeed baseline. ga4-seo-mcp turns that into one plan your agent shows you, and one confirmation.

ga4-seo-mcpGoogle's official GA4 MCPsearch-console-mcpgoogle-seo-mcp
GA4 reports (Data API)✅✅✅✅
Search Console✅—✅ (+ Bing)✅
PageSpeed Insights / CrUX✅—✅✅
Create GA4 property + web stream✅———
Create key events / custom dimensions✅——✅
Search Console DNS verification✅———
One-call site plan → apply (idempotent)✅ bootstrap_site_measurement———
Read-only by default✅ write tools are not even registeredread-only onlysee its docs✅ read-only mode
Toolsets✅——✅
LanguagePythonPythonTypeScriptTypeScript

Based on each project's README on 2026-10-19; "—" means we did not find it documented. Corrections welcome. Those projects go wider than this one (Bing, AdSense, WordPress, GEO audits…); this one goes deeper on setting up measurement.

🤝 Need this done for you?

This server is built and maintained by Germani Uicab. If you'd rather not run it yourself, ServerStack Solutions can get your GA4 + Search Console measurement ready: a written plan, property and key events configured, the DNS verification and sitemap in place, and a PageSpeed baseline — with a QA pass before handover.


Extras: optional keyword research with DataForSEO (exact long-tail volumes) and Google Ads Keyword Planner (free, bucketed volumes), with es-MX defaults that you can override.


⚡ Quick start

1. Install [`uv`](https://docs.astral.sh/uv/) 0.13.4 or newer — the client launches the server with uvx; nothing else to install.

2. Log in with the minimum scopes. The CLI prints the exact gcloud command for the toolsets you enable:

uvx ga4-seo-mcp auth-command --client-id-file=oauth-client.json

gcloud auth application-default login --client-id-file=oauth-client.json --scopes=https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/analytics.readonly,https://www.googleapis.com/auth/webmasters.readonly

Run the printed command. Google blocks Analytics and Search Console scopes on gcloud's built-in OAuth client, so you need your own (a one-time, few-minute setup) or a service account — both are explained in docs/AUTH.md.

3. Check everything before connecting a client (read-only, changes nothing):

uvx ga4-seo-mcp doctor

[ok] credentials found: Credentials via Application Default Credentials

[ok] access token refreshed

[ok] token has the 2 scope(s) these toolsets need

[ok] admin: account(s) visible on the first page

[ok] data: responded ( metrics in the schema)

[ok] gsc: site(s) visible

[ok] psi: no Google login needed; PAGESPEED_API_KEY set

all checks passed

4. Add it to your client (Claude Code shown; others below):

claude mcp add ga4-seo -- uvx ga4-seo-mcp

Ask: *"List my GA4 properties and show last week's sessions for the first one."*


🧰 Toolsets, scopes and tools

Enable only what you need with --toolsets (or GA4SEO_TOOLSETS). Default: admin,data,gsc,psi. Only the tools of active toolsets are registered, and the OAuth scopes follow.

ToolsetWhatScopes (read-only)Extra scopes with --enable-writesTools (read + write)
adminGA4 Admin API: accounts, properties, streams, key events, custom dimensions, Ads links, `bootstrap_site_measurement`analytics.readonlyanalytics.edit9 + 10
dataGA4 Data API: reports, realtime, top pages, events, traffic sources, portfolioanalytics.readonly—8 + 0
gscSearch Console: queries, pages, sitemaps, domain add + DNS verificationwebmasters.readonlywebmasters, siteverification5 + 3
psiPageSpeed Insights: Lighthouse lab + CrUX field datanone (PAGESPEED_API_KEY recommended)—2 + 0
dataforseoDataForSEO keyword ideas and exact volumes (paid)none (DATAFORSEO_LOGIN / DATAFORSEO_PASSWORD)—2 + 0
adsGoogle Ads Keyword Planner (needs pip install 'ga4-seo-mcp[ads]')adwords—2 + 0

Tool counts from the real registry: 24 with the defaults, 37 with --enable-writes, 8 with --toolsets data, 41 with every toolset and writes. The full list with descriptions is in docs/TOOLS.md (generated from the registry and checked in CI).

Prompts: audit_ga4_setup, seo_360_audit, portfolio_performance_digest and launch_site_measurement (the guided flow: plan → your confirmation → apply → DNS verification → sitemap → PageSpeed baseline).

bootstrap_site_measurement
bootstrap_site_measurement(site_url="https://example.com", account_id="123456789",

property_display_name="Example", time_zone="America/Mexico_City", currency_code="USD", key_events=["generate_lead"], custom_dimensions=[{"parameter_name": "plan_type", "display_name": "Plan type"}])

  • `apply=False` (default): a plan. Read-only and always registered. It finds the existing property and web stream by the site's domain, the key events and custom dimensions already declared, and the Search Console domain property, and lists what would be created.
  • `apply=True`: executes the plan. Only works when the server runs with --enable-writes; otherwise it fails before touching anything. Idempotent: it skips what exists, so you can re-run it. Returns a step-by-step report with the measurement ID (G-…) and the DNS TXT token.
  • DNS verification (sc_verify_site_dns) and the sitemap (sc_submit_sitemap) stay explicit follow-up steps: you have to publish the TXT record first.

🔒 Security model

Defaults are safe for a single user on a laptop. Details and threat model: SECURITY.md.

  • Read-only by default. Without --enable-writes (or GA4SEO_ENABLE_WRITES=1), tools that create, update, delete, submit or verify are not registered at all — the model cannot call what does not exist.
  • MCP annotations on every tool: readOnlyHint on reads, destructiveHint on deletes and updates, idempotentHint where repeating is harmless, openWorldHint everywhere. Clients that honor them can auto-approve reads and ask before writes.
  • Minimum scopes: each Google client requests only the scope of the call it makes; auth-command asks only for the scopes of your toolsets.
  • HTTP transport (--transport streamable-http): binds to 127.0.0.1, DNS-rebinding protection on, CORS off unless MCP_CORS_ORIGINS, and an optional bearer token MCP_AUTH_TOKEN (401 without it). Listening on 0.0.0.0 without a token prints a warning, and LAN clients need MCP_ALLOWED_HOSTS or the rebinding protection answers 421.
  • Secrets (DataForSEO, Ads developer token, PageSpeed key) come only from environment variables or a chmod 600 file, and are never logged or returned in errors.

⚙️ Configuration

VariableDefaultDescription
GOOGLE_APPLICATION_CREDENTIALS—Service account key file. Unset = Application Default Credentials from gcloud.
GA4SEO_TOOLSETSadmin,data,gsc,psiSame as --toolsets.
GA4SEO_ENABLE_WRITES01 = same as --enable-writes.
PAGESPEED_API_KEY—Recommended: the anonymous PageSpeed quota is shared and often exhausted (429).
DATAFORSEO_LOGIN, DATAFORSEO_PASSWORD—dataforseo toolset.
GOOGLE_ADS_DEVELOPER_TOKEN—ads toolset, or ~/.config/ga4-seo-mcp/dev-token with chmod 600.
GOOGLE_ADS_LOGIN_CUSTOMER_ID—Only when operating through a manager (MCC) account.
MCP_TRANSPORTstdiostdio, streamable-http or sse.
MCP_HOST / MCP_PORT127.0.0.1 / 8000HTTP bind address and port. A specific non-loopback address is added to the allowed Host headers; 0.0.0.0 is not, so set MCP_ALLOWED_HOSTS for LAN clients.
MCP_AUTH_TOKEN—Require Authorization: Bearer on every HTTP request.
MCP_CORS_ORIGINS—Comma-separated exact origins for a browser client. Never *.
MCP_ALLOWED_HOSTS—Comma-separated host/IP values clients use (e.g. 192.168.1.10). Required when binding 0.0.0.0 and connecting over the LAN; DNS-rebinding protection rejects everything else with 421.

Copy .env.example as a starting point.


🔌 Connect your client

Every client launches the server over stdio. Add --enable-writes to args only for the session where you actually want to set up a site.

Claude Code

claude mcp add ga4-seo -- uvx ga4-seo-mcp

with options:

claude mcp add ga4-seo -e PAGESPEED_API_KEY=your-key -- uvx ga4-seo-mcp --toolsets admin,data,gsc,psi

Claude Desktop (claude_desktop_config.json) and Cursor (~/.cursor/mcp.json)

ตัดมาแค่ช่วงต้น อ่านต่อใน repo

ถาม PopNx