Remote MCP server · read-only · EU hosted
Your Google marketing data, one MCP URL away.
Connect Search Console, Google Ads and AdSense once. Ask Claude, Cursor or ChatGPT about rankings, spend and earnings across every client account. No local server, no cloud project, no token juggling.
Free plan includes Search Console. No credit card.
{
"mcpServers": {
"metricport": {
"url": "https://metricport.io/api/mcp"
}
}
}1. Sign in with Google
Choose which of Search Console, Ads and AdSense to share. Add more Google accounts any time.
2. Copy your endpoint
One URL for every property. Authenticate with OAuth in claude.ai and Claude Desktop, or an API key anywhere else.
3. Ask questions
“Which queries lost clicks last week?” “What did we spend per campaign?” “Where am I paying for clicks I already rank for?”
57 tools, four sources
Every tool is read-only and returns compact JSON an LLM can reason about. Analyses like quick wins, cannibalization, content decay, wasted spend and budget pacing are computed server-side, so one call answers the question.
Google Search Console
gsc_search_analyticsClicks, impressions, CTR and position by query, page, country, device, date or search appearance. Filters, search type and period comparison.gsc_top_queriesTop queries by clicks, optionally for one page.gsc_top_pagesTop pages by clicks, optionally for one query term.gsc_page_queriesEvery query one URL ranks for, with position.gsc_quick_winsStriking-distance queries (positions 5-20) ranked by potential extra clicks, with the ranking page.gsc_ctr_opportunitiesPage-one queries whose CTR is far below the expected curve: title and snippet problems with missed clicks.gsc_content_decayPages that lost the most clicks vs. the previous period or last year, plus the winners.gsc_new_and_lost_queriesQueries that appeared or disappeared between two periods.gsc_cannibalizationQueries where several of your pages compete, with leader share and competitors.gsc_brand_splitBrand vs. non-brand totals, click share, trend and top non-brand queries via regex.gsc_query_clustersGroups queries into topic clusters with totals and examples.gsc_question_queriesQuestion-shaped queries (how, what, why, wie, was…) for FAQs and snippets.gsc_zero_click_pagesPages with impressions but no clicks.gsc_daily_trendDaily clicks and impressions with 7-day average and flagged drops or spikes.gsc_device_country_breakdownPerformance per device and country with the mobile vs. desktop CTR gap.gsc_search_appearanceSearch appearance types plus Discover and Google News traffic.gsc_inspect_urlIndex status, crawl date, canonical and rich result status for one URL.gsc_index_checkBatch inspection of up to 10 URLs with canonical mismatch and blocker flags.gsc_sitemapsSubmitted sitemaps with errors, warnings and URL counts.gsc_weekly_reportOne-call weekly summary: totals, winners, losers, new queries, quick wins, anomalies.
Google Ads
ads_list_accountsCustomer accounts including MCC managers and child accounts.ads_queryRun any GAQL SELECT.ads_campaign_performanceCampaigns with cost, clicks, CTR, conversions, CPA, ROAS and impression share.ads_search_termsSearch terms that triggered ads, with match type, cost and conversions.ads_wasted_spendNon-converting search terms aggregated across campaigns with negative keyword suggestions.ads_keyword_performanceKeywords with quality score, cost, conversions, CPA and impression share.ads_quality_score_auditWeighted quality score, distribution and low-QS keywords with their weakest component.ads_impression_shareImpression share per search campaign with share lost to budget and to rank.ads_budget_pacingMonth-to-date spend vs. expected with month-end projection per campaign.ads_ad_performanceResponsive search ads with ad strength, headlines, CTR, cost and conversions.ads_geo_performanceCost, conversions and CPA by country, region or city.ads_device_performanceCost, CTR, conversion rate and CPA per device.ads_daypartingPerformance by hour of day and weekday for ad schedules.ads_landing_pagesLanding pages with cost, conversions, CPA, mobile-friendly rate and speed score.ads_recommendationsGoogle's open optimization recommendations with impact estimates.ads_change_historyWho changed what in the last N days.ads_conversion_actionsConversion actions with status, counting, attribution and conversions produced.ads_pmax_asset_groupsPerformance Max asset groups with ad strength, cost and ROAS.ads_daily_trendDaily cost, clicks, conversions, CPA with flagged spend or conversion anomalies.ads_metadataSelectable fields of a resource, to build GAQL queries.ads_account_auditOne-call audit: totals vs. previous period, wasted spend, impression share, quality score, pacing, recommendations, prioritized findings.
Google AdSense
adsense_earningsEarnings totals and daily breakdown, optional previous period with change.adsense_reportCustom report by any dimension and metric with filters.adsense_top_pagesPages by earnings with RPM, plus high-traffic pages with weak RPM.adsense_by_countryEarnings, page views, RPM and CPC per country.adsense_ad_unit_performanceAd units with earnings, RPM, CTR, viewability and coverage.adsense_platform_splitDesktop vs. mobile vs. tablet earnings and RPM.adsense_daily_trendDaily earnings and page views with flagged anomalies.adsense_sitesSites with approval state.adsense_alertsPolicy and account alerts.adsense_paymentsUnpaid balance and payment history.adsense_ad_unitsAd units per ad client.adsense_monthly_reportOne-call monthly review: month over month, best day, top pages, countries, platforms, alerts, anomalies.
Cross-source
paid_vs_organicPaid search terms vs. organic queries: cannibalized spend, content gaps and pages to push.content_monetizationOrganic clicks per page joined with AdSense earnings per page: earnings per click, weak monetizers, pages to push.landing_page_overviewAds landing page cost and conversions joined with organic clicks for the same URLs.
Local MCP servers vs. MetricPort
| Open-source stdio servers | MetricPort | |
|---|---|---|
| Setup | Create a Google Cloud project, enable 3 APIs, create OAuth client, run a Python or Node process locally | Sign in with Google |
| Works in claude.ai and mobile | No | Yes, via OAuth connector |
| Multiple Google accounts | One per process | All in one endpoint |
| Cross-source analysis | Separate servers, no joins | paid_vs_organic, content_monetization built in |
| SEO and Ads analyses | Raw rows only | Quick wins, cannibalization, decay, wasted spend, pacing, audits |
| Token storage | Plain JSON on disk | AES-256-GCM encrypted, EU database |
| Keeps working after a reboot | Depends | Always |
Read-only by design
No tool can create, pause or edit anything. Read-only Google scopes wherever Google offers them.
Built for agencies
Each client’s Google account becomes a connection. Properties are addressed by id, so one prompt can span clients.
Standard MCP
Streamable HTTP, OAuth 2.1 with dynamic client registration, Bearer API keys. No proprietary SDK.
Pricing
Start free. Upgrade when you connect more accounts.
Free
Try Search Console through MCP.
€0 /month
- 1 Google account
- 200 tool calls / month
- Search Console tools
- API key auth
Pro
PopularFor site owners and freelancers.
€19 /month
excl. VAT
- 3 Google accounts
- 5,000 tool calls / month
- Search Console, Ads, AdSense
- OAuth for claude.ai and Claude Desktop
- Email support
Agency
For teams managing many clients.
€79 /month
excl. VAT
- Unlimited Google accounts
- 50,000 tool calls / month
- All services
- Cross-source analyses
- Priority support
Questions
- Do I need a Google Cloud project or developer token?
- No. MetricPort runs its own Google OAuth app. You sign in with Google, pick which services to share, and you are done.
- Can MetricPort change my campaigns or sites?
- No. Every tool is read-only. We request read-only scopes for Search Console and AdSense; Google Ads has a single scope, but the server never issues mutations.
- What do you store?
- Only the encrypted refresh token for each connected Google account, the list of properties, and a log of tool calls (tool name, property id, duration). Report data is never stored.
- Which clients work?
- Anything that speaks remote MCP over Streamable HTTP: Claude Desktop, claude.ai, Claude Code, Cursor, ChatGPT, Windsurf, and your own agents. OAuth or API key, your choice.
- Multiple clients or Google accounts?
- Yes. Connect as many Google accounts as your plan allows. One workspace, one endpoint, every property reachable by id.
- Is this an official Google product?
- No. MetricPort is an independent service by Simon Grimm, Austria. Google, Google Ads, AdSense and Search Console are trademarks of Google LLC.