{"name":"io.github.mindstone/mcp-server-google-analytics","slug":"mindstone-mcp-server-google-analytics","title":"Google Analytics 4","description":"Google Analytics 4 MCP server with reporting, schema discovery, and admin visibility tools","url":"https://mcp.market/server/mindstone-mcp-server-google-analytics","rating":null,"grade":"A","score":94,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":35,"stars":14,"forks":4,"downloads_week":65,"last_push_at":"2026-11-04T07:07:50.000Z","license":"NOASSERTION"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/mindstone/mcp-servers","website":null,"version":"0.2.1","remotes":[],"packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"@mindstone/mcp-server-google-analytics","version":"0.2.1","runtimeHint":"npx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to ADC or service-account JSON file","isRequired":true,"format":"filepath","name":"GOOGLE_APPLICATION_CREDENTIALS"},{"description":"Default GA4 property ID (e.g. 123456789)","format":"string","name":"GA4_PROPERTY_ID"}]}],"tools":[{"name":"ga_batch_run_reports","description":"Run multiple GA4 reports (max 5) in a single batch request. Each report shares the row-volume safety net of ga_run_report.","write_action":true,"price_micros":0,"input_schema":null},{"name":"ga_check_compatibility","description":"Check whether a set of dimensions and metrics can be used together in a GA4 report. Useful before running a complex report to avoid INCOMPATIBLE errors.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_create_audience_export","description":"Create an audience export — a server-side snapshot of the users in a GA4 audience for later retrieval. Charges audience-export quota tokens and takes seconds-to-minutes to become ACTIVE; poll with ga_get_audience_export, then page users with ga_query_audience_export. Does not modify property configuration.","write_action":true,"price_micros":0,"input_schema":null},{"name":"ga_create_report_task","description":"Start an asynchronous report task for a large GA4 export. Unlike ga_run_report this has no synchronous timeout and no row-volume warning gate — the task materialises up to `limit` rows server-side. Poll ga_get_report_task until state is ACTIVE, then page rows with ga_query_report_task. Uses the v1alpha Data API; structure may evolve over time.","write_action":true,"price_micros":0,"input_schema":null},{"name":"ga_get_audience_export","description":"Get the configuration metadata and state of an audience export. Poll this after ga_create_audience_export until state is ACTIVE before querying rows.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_get_custom_dimensions_and_metrics","description":"List all custom dimensions and custom metrics configured on a GA4 property.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_get_data_retention_settings","description":"Get the configured event data retention settings for a GA4 property.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_get_dimensions_by_category","description":"Get dimensions for a given category name (from ga_list_dimension_categories).","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_get_global_site_tag","description":"Get the gtag.js / global site tag snippet for the first web data stream on a GA4 property.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_get_metadata","description":"Get the live GA4 metadata for the property, including all available dimensions and metrics. Use this when you need the raw schema; prefer ga_search_schema for keyword lookups.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_get_metrics_by_category","description":"Get metrics for a given category name (from ga_list_metric_categories).","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_get_property_details","description":"Get details for a single GA4 property — display name, currency code, configured time zone, industry category, service level, and timestamps.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_get_property_quotas_snapshot","description":"Return a fresh property quota snapshot using a lightweight GA4 report call. Use this to check remaining tokens / requests before kicking off a large batch.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_get_property_schema","description":"Return the full GA4 property schema, including dimension count and metric count. Same data as ga_get_metadata with summary counts.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_get_report_task","description":"Get the metadata and state of a report task. Poll this after ga_create_report_task until state is ACTIVE before querying rows. Uses the v1alpha Data API.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_list_account_summaries","description":"List Google Analytics accounts and their property summaries available to the authenticated user. Use this first to discover available property IDs before calling other tools.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_list_audience_exports","description":"List all audience exports for a GA4 property. Useful to find and reuse an existing export rather than creating a new one.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_list_audiences","description":"List all audiences configured on a GA4 property, including membership duration, ads-personalization flag, and filter clauses. Uses the v1alpha Admin API (audiences are not yet promoted to v1beta); structure may evolve over time.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_list_bigquery_links","description":"List all BigQuery export links configured on a GA4 property.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_list_channel_groups","description":"List all channel groups configured on a GA4 property, including the grouping rules that define channels such as \"Organic Social\". Uses the v1alpha Admin API (channel groups are not yet promoted to v1beta); structure may evolve over time.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_list_data_streams","description":"List all data streams (web, Android app, iOS app) on a GA4 property.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_list_dimension_categories","description":"List available dimension categories for the property schema.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_list_firebase_links","description":"List all Firebase project links configured on a GA4 property.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_list_google_ads_links","description":"List all Google Ads links configured on a GA4 property.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_list_key_events","description":"List all key events (formerly conversions) configured on a GA4 property.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_list_metric_categories","description":"List available metric categories for the property schema.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_list_properties","description":"List GA4 properties visible to the authenticated user, optionally filtered by account_id or property_id. Returns a flat list — easier to consume than ga_list_account_summaries when you just want property IDs.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_query_audience_export","description":"Retrieve users from an ACTIVE audience export, with offset/limit pagination. Rows contain user-level identifiers (user IDs / device IDs) — treat them as privacy-sensitive. The export must be ACTIVE; poll ga_get_audience_export first.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_query_report_task","description":"Retrieve rows from an ACTIVE report task with offset/limit pagination (up to 250,000 rows per page). The task must be ACTIVE; poll ga_get_report_task first. Uses the v1alpha Data API.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_run_pivot_report","description":"Run a GA4 pivot report. Pivots are useful for cross-tabulating dimensions (e.g. country x device).","write_action":true,"price_micros":0,"input_schema":null},{"name":"ga_run_realtime_report","description":"Run a GA4 realtime report with configurable dimensions and metrics. Realtime data covers the last 30 minutes by default.","write_action":true,"price_micros":0,"input_schema":null},{"name":"ga_run_report","description":"Run a GA4 report with configurable dimensions, metrics, date range, ordering, and safe dataset controls. Estimates row count first; returns a warning above row_warning_threshold (default 2500). Use ga_search_schema to discover dimension/metric apiNames.","write_action":true,"price_micros":0,"input_schema":null},{"name":"ga_search_change_history_events","description":"Search the change history (created/updated/deleted) for a GA4 property. Follows all result pages automatically, so large histories are returned in full. Uses the v1alpha admin API; structure may evolve over time.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ga_search_schema","description":"Search dimensions and metrics by keyword across the live GA4 property schema. Use this to discover the exact apiName for a concept (e.g. \"session\", \"revenue\", \"country\").","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":94,"grade":"A","scanned_at":"2026-11-04T14:40:05.770Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-11-04T14:40:05.723Z","components":{"code":{"score":25,"max":25,"notes":["31 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":15,"max":15,"notes":["last push 0 days ago"]},"identity":{"score":9,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"@mindstone/mcp-server-google-analytics","version":"0.2.1","found":true,"license":"FSL-1.1-MIT","hasInstallScripts":false,"dependencyCount":3,"publishedAt":"2026-08-10T03:01:19.513Z","repositoryUrl":"git+https://github.com/mindstone/mcp-servers.git","weeklyDownloads":65}],"repo":{"found":true,"owner":"mindstone","repo":"mcp-servers","archived":false,"pushedAt":"2026-11-04T07:07:50Z","stars":14,"forks":4,"openIssues":27,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/58389135?v=4","ownerCreatedAt":"2019-12-01T11:21:22Z","license":"NOASSERTION"},"icon":{"url":"https://avatars.githubusercontent.com/u/58389135?v=4&s=128","source":"registry","width":128,"height":128},"presence":{"stars":14,"forks":4,"downloadsWeek":65,"license":"NOASSERTION","lastPushAt":"2026-11-04T07:07:50.000Z","score":35}}}},"grade_history":[],"reviews":[]}