Skip to content
Agentmart
Submit a tool

GA4 SEO MCP

Set up and audit site measurement: GA4, Search Console and PageSpeed.

Connector by GermaniU · GitHub account verified by the MCP Registry

IndexedMITLocal (stdio)★ 1
Write a review

Install

Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.

npx agentmarket install connector/germaniu-ga4-seo-mcp

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

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

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 25, 2026.

Tools
17 read · 2 write · 0 delete · 11 not yet classified
Secrets
4 (API keys, tokens or passwords)
Install scripts
None found
Runs as
Python package

Tools by what they do 30

Read from the source code; the running server may list different tools.

Read 17 · Look things up without changing anything.

  • audit_portfolio
  • events_summary
  • get_data_stream
  • get_property
  • kw_ideas
  • kw_ideas_gads
  • list_account_summaries
  • list_custom_dimensions
  • list_data_streams
  • list_google_ads_links
  • list_key_events
  • list_properties
Show 5 more tools
  • sc_list_sitemaps
  • sc_list_sites
  • sc_query_breakdown_by_page
  • sc_top_queries
  • sc_verify_site_dns

Write 2 · Create, change, send or run things.

  • sc_add_site_and_get_verify_token
  • sc_submit_sitemap

Not yet classified 11 · We could not tell from the name and description.

  • conversions_summary
  • kw_volume
  • kw_volume_gads
  • psi_audit
  • psi_field_data_only
  • run_realtime_report
  • run_report
  • sc_page_performance
  • top_pages
  • traffic_sources
  • web_vitals_summary

Secrets and settings it asks for

Secrets: values you paste in that let it act as you.

  • DATAFORSEO_PASSWORD
  • GOOGLE_ADS_DEVELOPER_TOKEN
  • GOOGLE_APPLICATION_CREDENTIALS
  • PAGESPEED_API_KEY

Other settings (environment variables or headers).

  • DATAFORSEO_LOGIN
  • GA4SEO_ENABLE_WRITES
  • GA4SEO_TOOLSETS
  • GOOGLE_ADS_LOGIN_CUSTOMER_ID

Network hosts it talks to 6

  • ::1 · found in code
  • api.dataforseo.com · found in code
  • developers.google.com · found in code
  • github.com · found in code
  • googleapis.com · found in code
  • oauth2.googleapis.com · found in code

Files it touches

  • Your home directory (~)
  • ~/.config/ga4-seo-mcp/dev-token

Tools (30)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • audit_portfolio

    Summary metrics for several GA4 properties in one call. Returns sessions, active users, conversions, bounce rate and average session duration per property, plus the properties that failed and why. Args: property_ids: e.g. ['123456789', '987654321'].

  • conversions_summary

    Conversions and total users per event name: a summary of the active key events.

  • events_summary

    Count of every event that fired, to audit what is actually being measured. Compare it with list_key_events to find key events that never fire.

  • get_data_stream

    Get one data stream, including the measurement ID of a web stream.

  • get_property

    Get the full settings of a GA4 property (time zone, currency, industry, type).

  • kw_ideas

    Discover long-tail keyword ideas related to one or more seed keywords (DataForSEO Labs). Ideas are related to the seeds but do not necessarily contain them. Paid API: each call spends DataForSEO credit. Args: keywords: seed keywords, e.g. ['coffee shop', 'espresso machine']. location_name: DataForSEO location name (default 'Mexico'). language_code: ISO language code (default 'es'). limit: maximum results (default 50, API maximum 1000). Returns keyword, search_volume, competition, competition_level and cpc per idea.

  • kw_ideas_gads

    Discover keyword ideas from seed keywords with Google Ads Keyword Planner. Free, but without active ad spend the volume comes in buckets; use kw_ideas (DataForSEO) when you need exact long-tail volumes. Args: customer_id: Google Ads customer ID (10 digits, dashes allowed). The account does not need campaigns or spend. keywords: seed keywords, e.g. ['coffee shop', 'espresso machine']. location_id: geo target constant ID (default '2484', Mexico; '2840' is United States). language_id: language constant ID (default '1003', Spanish; '1000' is English). limit: maximum r…

  • kw_volume

    Exact monthly search volume and CPC for queries you already know (DataForSEO). Typical use: enrich the queries returned by sc_top_queries. Does not discover new keywords. Paid API. Args: keywords: exact queries (max 1000, 80 characters each). location_name: DataForSEO location name (default 'Mexico'). language_code: ISO language code (default 'es'). Returns keyword, search_volume, cpc, competition and monthly_searches per query.

  • kw_volume_gads

    Historical metrics from Google Ads Keyword Planner for queries you already know. Same caveat as kw_ideas_gads: bucketed volume without active spend; use kw_volume (DataForSEO) for exact numbers. Args: customer_id: Google Ads customer ID (10 digits, dashes allowed). keywords: exact queries. location_id: geo target constant ID (default '2484', Mexico). language_id: language constant ID (default '1003', Spanish).

  • list_account_summaries

    List every GA4 account you can access, with a summary of its properties. Start here to find the account_id and property_id the other tools need.

  • list_custom_dimensions

    List the custom dimensions declared on a GA4 property, with their scope.

  • list_data_streams

    List the data streams (web, iOS, Android) of a GA4 property. Web streams include their measurement ID (G-XXXXXXX) and default URI.

  • list_google_ads_links

    List the links between a GA4 property and Google Ads accounts.

  • list_key_events

    List the key events (formerly conversions) declared on a GA4 property.

  • list_properties

    List the GA4 properties under an account. Args: account_id: numeric account ID or 'accounts/123456789'. include_deleted: also return properties in the trash (soft-deleted, kept 35 days).

Show 15 more tools
  • psi_audit

    Run a PageSpeed Insights audit (Lighthouse lab test + CrUX field data) on a public URL. Takes 30-90 seconds. Without PAGESPEED_API_KEY the anonymous quota is small and Google may answer 429; set the key for regular use. Args: url: absolute public URL, e.g. 'https://example.com/'. strategy: 'mobile' (default) or 'desktop'. categories: subset of ['performance', 'accessibility', 'best-practices', 'seo']. Default: all four. Returns 0-100 category scores, lab Core Web Vitals (LCP, FCP, CLS, TBT, SI, TTFB) and, when Chrome has enough real-user traffic, CrUX p75 field data for …

  • psi_field_data_only

    Only the CrUX field data (real Chrome users, p75 over 28 days) for a URL and its origin. PageSpeed Insights still runs a performance-only Lighthouse pass, so expect 15-40 seconds. `overall_category` is FAST, AVERAGE or SLOW; it is null when the page has too little traffic.

  • run_realtime_report

    Realtime report for the last 30 minutes. Useful to confirm that a new event fires in production right after a deploy. Args: metrics: default ['activeUsers']; 'eventCount' also works. dimensions: default ['eventName']; also 'unifiedScreenName', 'country', 'deviceCategory'.

  • run_report

    Run a flexible GA4 report. Args: property_id: numeric ID or 'properties/123456789'. metrics: e.g. ['sessions', 'activeUsers', 'keyEvents']. Catalog: https://developers.google.com/analytics/devguides/reporting/data/v1/api-schema#metrics dimensions: optional, e.g. ['date', 'sessionSource', 'pagePath']. Catalog: https://developers.google.com/analytics/devguides/reporting/data/v1/api-schema#dimensions date_start: 'YYYY-MM-DD', 'today', 'yesterday' or 'NdaysAgo' (e.g. '28daysAgo'). date_end: same formats as date_start. limit: maximum rows (default 25). o…

  • sc_add_site_and_get_verify_token

    Add a domain property to Search Console and return the DNS TXT record that verifies it. Domain properties ('sc-domain:') cover every subdomain and both http and https, but Google only verifies them over DNS (TXT or CNAME). Add the returned token as a TXT record on the zone root (name '@'), wait for it to propagate, then call sc_verify_site_dns. Safe to call again: an existing site is reported as 'already_exists'. Args: domain: bare domain without scheme, e.g. 'example.com'. Returns `add` (created / already_exists), `txt_token` and `next_steps`.

  • sc_list_sitemaps

    List the sitemaps submitted for a Search Console site, with errors and warnings.

  • sc_list_sites

    List the Search Console sites you can access. Each entry has `siteUrl` ('sc-domain:example.com' for domain properties or a URL prefix like 'https://example.com/') and `permissionLevel` ('siteOwner', 'siteFullUser', 'siteRestrictedUser' or 'siteUnverifiedUser').

  • sc_page_performance

    Top pages in Google Search by clicks, with impressions, CTR (%) and average position.

  • sc_query_breakdown_by_page

    Which search queries bring traffic to one specific page. Useful to decide which keywords to strengthen in that page's content.

  • sc_submit_sitemap

    Submit (or resubmit) a sitemap to Search Console. Args: site_url: 'sc-domain:example.com' or 'https://example.com/'. sitemap_url: absolute URL of the sitemap, e.g. 'https://example.com/sitemap.xml'.

  • sc_top_queries

    Top search queries with clicks, impressions, CTR (%) and average position. Args: site_url: 'sc-domain:example.com' or 'https://example.com/', exactly as in sc_list_sites. date_start: 'YYYY-MM-DD'. date_end: 'YYYY-MM-DD'. Search Console data lags 2-3 days. limit: rows to return (max 25000). country: optional ISO 3166-1 alpha-3 code to filter by, e.g. 'mex' or 'usa'.

  • sc_verify_site_dns

    Verify ownership of a domain property whose DNS TXT record is already published. Run sc_add_site_and_get_verify_token first and wait until `dig TXT <domain> +short` shows the token. Args: domain: bare domain without scheme, e.g. 'example.com'.

  • top_pages

    Top pages by sessions, with active users, bounce rate and average session duration.

  • traffic_sources

    Top traffic sources (source / medium) with sessions, active users and conversions.

  • web_vitals_summary

    Core Web Vitals reported by your own site as GA4 events. Requires the site to send web-vitals events with the parameters `web_vital_metric` and `web_vital_rating`, both registered as event-scoped custom dimensions. For Google's field data use psi_field_data_only instead.

Compare and alternatives

    Featured in

    Signals

    Stars
    1
    Forks
    0
    Open issues
    0
    Weekly downloads
    231
    Last commit
    Oct 24, 2026 (5 days ago)
    Last release
    Oct 24, 2026 (5 days ago)
    Last package publish
    Oct 24, 2026 (5 days ago)

    From GitHub (fetched Oct 24, 2026) and the package registry.

    Details

    Registry name
    io.github.GermaniU/ga4-seo-mcp
    Version
    0.1.2
    Auth
    API key
    Packages
    pypi ga4-seo-mcpoci ghcr.io/germaniu/ga4-seo-mcp:0.1.2
    License
    MIT
    First seen
    Oct 24, 2026
    Last checked
    Oct 24, 2026

    More from GermaniU

    Cite this page

    GA4 SEO MCP. Agent Mart. https://agentmart.dev/connectors/germaniu-ga4-seo-mcp (last updated 2026-10-24)