Skip to main content
Glama
FlorianBruniaux

gsc-mcp

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
GSC_SKIP_OAUTHNoSet to 'true' when using service account to skip OAuth flow
GA4_PROPERTY_IDNoGoogle Analytics 4 property ID (optional, for GA4 tools)
GSC_CREDENTIALS_PATHNoPath to OAuth client credentials JSON file
GSC_SERVICE_ACCOUNT_PATHNoPath to service account JSON file

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_capabilitiesD
list_propertiesD
get_site_detailsD
get_search_analyticsD
get_performance_overviewD
compare_search_periodsD
get_search_by_page_queryD
get_advanced_search_analyticsD
analytics_anomaliesD
quick_winsD
traffic_dropsD
check_alertsD
seo_striking_distanceD
seo_cannibalizationD
seo_lost_queriesD
inspect_urlD
batch_url_inspectionD
check_indexing_issuesD
submit_urlD
submit_batchD
list_sitemapsD
submit_sitemapD
sitemaps_deleteD
sitemaps_getD
ga4_organic_landing_pagesD
ga4_traffic_sourcesD
ga4_page_performanceD
ga4_realtimeD
ga4_user_behaviorD
ga4_conversion_funnelD
traffic_health_checkA

Compare total GSC clicks with total GA4 organic sessions to detect tracking gaps.

Fetches aggregate GSC clicks (no page dimension) and sums all organic sessions from GA4. The ratio ga4_sessions / gsc_clicks indicates tracking health:

  • "no_gsc_data" : zero GSC clicks (ratio is None, nothing to compare)

  • "tracking_gap" : ratio < 0.6 (GA4 records far fewer sessions than GSC clicks)

  • "filter_issue" : ratio > 1.3 (GA4 records more sessions than GSC clicks)

  • "healthy" : 0.6 <= ratio <= 1.3

Boundaries 0.6 and 1.3 are inclusive of the healthy range (strict < and >). GA4 is queried with limit=10000 to avoid under-counting sessions on large sites.

page_analysisA

Join GSC and GA4 data at the page level and rank by opportunity score.

GSC rows are fetched with dimensions=["page"] (already aggregated per page). GA4 organic landing pages are fetched with a high limit to avoid truncation. Pages are joined on _normalize_url. Pages that appear in only one source get None for the missing fields.

opportunity_score = log10(impressions+1)10 + engagement_rate100 + log10(conversions+1)*20

engagement_rate is derived as engaged_sessions/sessions (GA4 native formula) because ga4_organic_landing_pages does not expose it directly.

Results are sorted by opportunity_score descending, truncated to limit.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/FlorianBruniaux/google-search-console-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server