MCP HeartbeatTHE MCP OBSERVATORY
Public workspace

Explore

Evidence for your next connection.

Independent measurements of remote MCP servers. Every observation has a timestamp.

Read-only probes

MCP server · Data access / search

Organiq GEO

Search Console and GA4 analysis (read-only Google): queries, decay, cannibalization, AI traffic.

Checks passed
15 / 22

0 failed · 7 not measured

Median response
789 ms

Median of successful probes over 7 days

30-day uptime
Not measured

Share of countable probes over 30 days, including daily rollups. Auth challenges are excluded.

Discovered tools
51

Tool definitions returned by this server

Independent monitoring

Health & checks

Status history

Outdated check

Last connection measurement is over 24 hours old. Current availability is unknown.

Last checked
Check summary by test group
Test areaPassedFailedUnmeasured
ConnectionCan a client connect and discover tools?
500
Reliability & speedDoes it respond consistently and quickly?
103
Access & authenticationWhat is required to use this server?
102
Tool qualityAre the tool definitions usable by an agent?
400
Publisher identityCan the publisher be traced to its source?
402

Unmeasured means there is not enough evidence to decide. How these checks work

Inspect individual checks 22 recorded

Core

  • Pass
    Reachable

    Latest probe returned HTTP 200 in 956 ms.

  • Pass
    Valid handshake

    protocolVersion 2025-11-25, serverInfo.name organiq.

  • Pass
    Lists tools

    tools/list returned 51 tools.

  • Pass
    Current protocol

    Negotiated 2025-11-25. The bar is 2025-06-18 or newer.

  • Pass
    HTTPS

    The endpoint URL is https.

Performance

  • Not measured
    Fast (p50)

    Median latency 789 ms over 2 samples in 7 days. The bar is 1000 ms. Need at least 5 samples.

  • Not measured
    Consistent (p95)

    95th percentile 939 ms over 2 samples in 7 days. The bar is 3000 ms. Need at least 20 samples.

  • Not measured
    Reliable (uptime)

    2 of 2 attempts returned a tool list in 30 days (100%). The bar is 99%. Need at least 30 samples.

  • Pass
    Stable tool list

    No tool was removed and no required parameter was added in the last 30 days.

Access

  • Pass
    Open access

    tools/list succeeded with no credential, and the record declares none.

  • Not measured
    Standard auth

    Auth is not required, so the OAuth metadata check does not apply.

  • Not measured
    Free tier cited

    No publisher quote has been checked.

Tools

  • Pass
    Tools described

    Every tool description is at least 20 characters.

  • Pass
    Valid input schemas

    Every inputSchema is a JSON Schema object.

  • Pass
    Parameters documented

    412 of 413 parameters have a description (100%). The bar is 80%.

  • Pass
    Safety hints

    Every tool sets readOnlyHint or destructiveHint.

Publisher

  • Pass
    Verified namespace

    Listed in the Official MCP Registry.

  • Pass
    Website matches publisher

    The website host matches the reverse-domain namespace.

  • Pass
    Source repo linked

    A repository URL is on file.

  • Not measured
    Repo owner matches

    This namespace is not an io.github login, so the owner comparison does not apply.

  • Pass
    Recently updated

    Updated 2026-11-03T16:53:55.650719Z, within 180 days.

  • Not measured
    Open-source licence

    The GitHub licence lookup has not returned an OSI result yet.

Start using Organiq GEO

Connect to this server

Choose your client, copy the configuration, then enable the server in your client’s MCP settings.

Run this command in your terminal, then restart Claude Code.

Claude Code

claude mcp add --transport http organiq-geo https://organiqgeo.com/mcp

Capabilities

Tools 51

analyze_cannibalization

Queries where 2+ pages of the property compete for the same search in the period. Per cluster: totals, Shannon entropy of impressions across pages (bits; higher = more even split = worse; level high >= 1.5, medium >= 1.0), normalized (0–1), winner (most clicks; tie: best position) and the contenders with clicks/impressions/ctr/position/impressionShare. Sorted by entropy and impressions. Protocol/host/hash variants of one URL are canonical hygiene, not cannibalization; brand + home + deep page is usually sitelinks. Use when asked which page should rank for a keyword. / Canibalização de queries.

Discovered
analyze_query_shapes

Classifies the period's queries into shapes and aggregates each: branded, question, comparison, transactional, local, longtail (5+ words), head (<= 2 words), other, with queries, clicks, impressions, ctr, position, shares, comparison (clicksChangePct, impressionSharePoints) and top example queries per shape. Also reports the "AI-style" split used by the Organiq dashboard (conversational marker or >= 5 words: the kind of query AI Overviews / AI Mode answer) — a proxy, since Search Console does not expose AI-feature data in the API. Shapes: branded = contains one of the property's branded terms; question = interrogative (how, what, why, como, o que, qual…); comparison = compares options (vs, best, melhor, diferença entre…); transactional = buying intent (price, buy, comprar, preço, promoção…); local = local intent (near me, perto de mim, address…); longtail = 5+ words without another marker; head = 2 words or fewer; other = 3–4 words without a marker. Use for intent mix, "how much of our demand is questions", GEO (generative engine) planning. / Formatos de query (perguntas, comparação, transacional, marca, longas "estilo IA") com shares e exemplos.

Discovered
analyze_sampling_impact

How much of the property's traffic Search Console hides from the query/page rows because of anonymization: exact totals per day (no dimensions) minus the sum of the query × page rows = hidden clicks/impressions, with hiddenShare (fraction), level (ok < 5 %, warn 5–15 %, high > 15 %), the worst day and an optional daily table. Only searchType applies (dimension filters do not make sense here). Use to explain why top-queries totals do not add up to the summary, and before trusting query-level shares on small sites. / Cliques escondidos pela anonimização do Search Console.

Discovered
breakdown_by_path

Groups the property's pages by host (subdomain) and by the first `depth` path segments (1–4), e.g. "example.com/blog/*": pages per group, clicks, impressions, ctr, position, clickShare, comparison (prevClicks, clicksChange, clicksChangePct, positionChange) and the top 3 pages of each group. Sorted by clicks. Use for "which section drives traffic", "is the blog growing", "how is the /pt/ folder doing" and to compare subdomains. / Tráfego por subdomínio e pasta (profundidade 1–4).

Discovered
check_ai_access

Checks whether AI crawlers can read one public web page and whether the page is set up to be cited. For the exact URL path it evaluates the domain's robots.txt for 8 AI robots (GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot, Google-Extended, Bingbot, CCBot, Applebot-Extended), each as allowed, blocked or no-rule (no rule for that robot or *, so allowed by default), or unknown when robots.txt could not be read; it checks for a valid /llms.txt (title, link count); and it reads the page's JSON-LD for citable types (Article, BlogPosting, FAQPage, HowTo…) and the fields that are missing (author Person with url, datePublished, dateModified, Organization.sameAs). Each part has a verdict (pass, warn, fail, info). Works without signing in and without a property: it fetches three public URLs of the site (the page, /robots.txt, /llms.txt) and stores nothing. Only public http/https addresses on the standard ports are accepted; private, local and internal addresses return invalid_argument. Use it to answer "can GPTBot / ClaudeBot / PerplexityBot read this page", "does this site have llms.txt" or "does this page have the structured data to be cited". It does not measure traffic or rankings. / Checa, sem login, se os robôs de IA podem ler uma página pública (robots.txt no caminho exato, llms.txt e JSON-LD de citação); não mede tráfego nem posição.

Discovered
check_connection

Reports whether this request is authenticated and, if so, which Organiq account it uses (name, plan, how it authenticated), how many Search Console properties are available with their data coverage, and what is missing (no account, no properties, and per property GA4, Bing and branded terms) with the panel URL and the steps that resolve each gap. Without credentials it explains how to connect. Use it when a tool returned unauthorized/site_not_found or before a first analysis. / Diz se há conta, propriedades, plano e o que falta, com a URL para resolver.

Discovered
detect_anomalies

Flags days in the period whose clicks (or impressions, ctr, position) deviate from what the same weekday did in the previous baselineWeeks weeks (default 8): expected = median of those weekdays, scale = scaled MAD, zScore = (value − expected) / scale; anomaly when |z| >= threshold (sensitivity low 4, medium 3, high 2.5). Robust to outliers in the baseline and to the weekly cycle (weekends are compared with weekends). Each anomaly has direction (drop/spike; for position, drop = visibility loss), severity, deviationPct and the baseline size. Use for "did anything unusual happen", to date a drop before looking at causes (get_annotations), or to check a release day. / Dias anômalos comparados com o mesmo dia da semana nas semanas anteriores.

Discovered
detect_change_points

Finds the dates where the property's clicks (or impressions) moved to a new sustained level — a step up or down that holds for several weeks, as after a Google update, a migration or a content launch — using a robust CUSUM on the weekly (default) or daily series. Each point has date, direction, before/after averages (4 observations each), change, changePct and how many following observations stayed on the new level. Isolated spikes are not change points (see detect_anomalies). Default period 52 weeks. Use to date a lasting drop or gain and then correlate with get_annotations. / Degraus sustentados na série (semanal ou diária), com antes × depois.

Discovered
find_decaying_content

Pages (or queries) that lost clicks between a BASELINE and the RECENT period. Recent = days/startDate/endDate; baseline = compare (previous = window before, year = one year earlier) or explicit comparisonStartDate/comparisonEndDate (for slow decay compare with 6–12 months ago). Classifies the drop: severe > 50%, moderate 20–50%, mild < 20%; sorted by absolute clicks lost; pattern hints the diagnosis (position_slipped, impressions_collapsed, ctr_dropped, disappeared, mixed). Use for "which pages are dying" and refresh candidates. / Conteúdo em decaimento.

Discovered
find_internal_link_opportunities

Internal links to add, from the latest finished site audit: a target page that has a Search Console query at positions 4–20, and a source page of the same site whose text contains that query and does not link to the target yet. Each row has sourceUrl, targetUrl, query, snippet (up to 160 characters of the source text where the link fits), impressions (of the query on the target page, last 28 days) and position (average, lower is better). Ordered by impressions of the target; up to 3 sources per target and query. Page text is not stored, only the snippet. Use it to improve internal linking for pages already close to page one. / Links internos a criar: página de origem, destino, consulta, trecho, impressões e posição.

Discovered
find_page_poaching_opportunities

Queries just outside the top (default positions 4–20) with the estimated click gain if they reached the CTR of the target position (default 3 → 18.6% benchmark, or the property's own CTR at that position when it has volume: see ctrSource). estimatedGain = max(0, round(impressions × (targetCtr − ctr))). Sorted by impressions (default) or by gain. Use for "what is close to page one / top 3". / Queries perto do topo com ganho estimado.

Discovered
forecast_traffic

Projects the property's clicks (or impressions) for the next `horizon` weeks (default 12) or months (default 6) from the history in the period (default 364 days): aggregates the daily series, estimates a multiplicative seasonal index when >= 2 full cycles exist (otherwise 1.0, stated in seasonality), fits linear / logarithmic / exponential / power / polynomial trendlines and keeps the best adjusted R² (model=auto) or the one requested; forecast points carry baseline, low/high (±1.96 × residual sd, widening with the horizon), seasonalIndex and, with growthRate, a growth scenario (baseline × (1 + growthRate)); cvr + aov add revenue (= visits × cvr × aov). Returns an error when fewer than 8 full weeks / 6 full months exist. Use for "what should we expect next quarter", target setting and scenario planning; treat it as a trend extrapolation, not a promise. / Previsão semanal ou mensal com sazonalidade, trendline auto-selecionada, faixa e cenário de crescimento.

Discovered
generate_seo_report

One compact report for a property over the period (default 28 days, 7–180) with the comparison period: headline KPIs with change and year-over-year, top movers (queries and pages up/down), daily anomalies and sustained level shifts, Google updates and annotations, decaying pages, cannibalized queries, CTR quick wins, brand share, Core Web Vitals, indexing health, AI search (GA4 sessions from assistants, impressions in AI Overviews / AI Mode, AI-style query share), Bing, and up to three data-derived next actions. Parts without data (no GA4, no CrUX, no imports) or outside the plan are listed in skipped instead of failing. format=markdown (default) or json (the structured parts). Use for monthly client reports or a full status check in one call. / Relatório SEO completo em markdown (ou JSON) numa chamada.

Discovered
get_ai_traffic

Referral sessions from AI assistants (chatgpt.com, perplexity.ai, gemini, copilot, claude…) according to GA4 (dimension ai_source): per source (sessions, activeUsers, engagedSessions, keyEvents) for the period and the comparison, totals and daily series. site also accepts "all" for the whole account. A property without GA4 returns the error no_data with the panel URL where GA4 is connected (site="all" returns hasGa4=false and a setup note instead). Limitation: Search Console does not separate clicks from AI Overviews / AI Mode; only referral traffic is measurable. / Sessões vindas de IAs segundo o GA4.

Discovered
get_annotations

Events annotated in the period for the property and globally: deploys, content changes, manual notes and Google algorithm updates (category "algo_update"). Use to correlate drops or gains with causes. Default: last 90 days. / Anotações e algo updates do período.

Discovered
get_audit_issue

One issue code from the latest finished site audit: title, how to fix it, severity and the affected pages ordered by impressions of the last 28 days (url, HTTP status, depth, in sitemap, clicks, impressions). Codes come from get_site_audit (for example title_missing, broken_internal_link, noindex_with_clicks). Site-wide codes (robots_missing, sitemap_missing, llms_txt_missing, ai_bots_blocked, robots_blocks_audit) have no page list. Use it after get_site_audit to see which pages to fix for one issue. / Um problema da auditoria: título, correção e páginas afetadas por impressões.

Discovered
get_bing_performance

Organic performance on Bing (Bing Webmaster Tools, weekly data) for the property: view=traffic gives weekly clicks/impressions with totals and change vs the previous same-length window; view=queries or view=pages gives the top keys with clicks, impressions, impression-weighted position, previous-period values and growth/decline sorting. Period is in whole weeks ending on the last synced Bing week (default 12 weeks). A property without Bing returns no_data with the panel URL where Bing is connected; hasBing in list_sites tells which properties have it. Use for "how do we do on Bing", Bing vs Google query overlap, Copilot-era visibility. / Bing: tráfego semanal, queries e páginas com comparação.

Discovered
get_branded_performance

Daily series of branded and non-branded traffic (clicks, impressions, ctr, position per group, plus brandedClickShare) with totals for the period and the comparison, using the property's branded_terms. brandedTermsConfigured=0 means no terms are set and everything counts as non-branded (set them in the "Integrações" block of the property in the Organiq panel; the response carries the URL). Use to separate brand demand from SEO work, to check whether a drop was brand or non-brand, and to track brand share over time. / Marca × sem marca por dia, com totais e comparação.

Discovered
get_breakdown

Splits the period's traffic into branded/nonBranded (by the property's branded_terms) and into position bands (1-3, 4-10, 11-20, 21+) with impressions and clicks per band, plus queryCount. Position of each query = impression-weighted average over the period. Without branded terms on the property everything counts as nonBranded and the response says where to set them. Use for "how much of our traffic is brand" and "how much sits on page 2". / Marca × sem marca e faixas de posição.

Discovered
get_capabilities

Returns a factual overview of this connector: what data it holds (Google Search Console synced daily into Organiq, plus GA4 referral sessions from AI assistants), the list of tools with when to use each, units, default periods, how to connect an account (OAuth or API key), rate limits and example questions. Works without signing in. Use it first when you do not know what this server can answer. / Visão geral factual do conector, sem login: dados, ferramentas, unidades, como conectar, limites.

Discovered
get_core_web_vitals

Field Core Web Vitals of the property's origin (or a URL) from the Chrome UX Report history, weekly, per form factor (PHONE, DESKTOP): latest p75 of LCP, INP, CLS, FCP, TTFB with rating (good / needs_improvement / poor by Google's thresholds), share of good experiences, trend vs 4 weeks earlier, passesCoreWebVitals, alerts when a metric changed rating or worsened >= 20 %, and up to 26 weeks of history. CrUX only exists for origins with enough Chrome traffic; the response lists what is available. Use for "is the site fast enough for Google", regressions after a release, mobile vs desktop. / Core Web Vitals reais (CrUX) por semana e dispositivo, com tendência e alertas.

Discovered
get_ctr_benchmark

Returns the generic organic click-through-rate curve by Google position (1–20, fraction 0–1) used by score_opportunities and find_page_poaching_opportunities as the fallback when a property lacks its own volume, optionally interpolated for a fractional position. No account needed; no property data involved. Use it to estimate expected clicks for a position or to explain a CTR gap. / Curva genérica de CTR por posição, sem login.

Discovered
get_ctr_curve

The property's real CTR by position (bucket = round(position), 1–20, impression-weighted) compared with the generic benchmark (31.7% at position 1 … 18.6% at 3 … 2.0% at 10). deltaPoints in percentage points (negative = below expected: likely title/meta problem); reliable = bucket with enough impressions. Use to find where titles underperform. / Curva de CTR própria × benchmark.

Discovered
get_genai_impressions

Daily impressions of the property in Google's generative AI features (AI Overviews and AI Mode) from the Search Console "Generative AI features" report, imported into Organiq (this report is not in the Search Analytics API and has no clicks). kind = all (default), text or multimodal. Returns totals for the period and the comparison with change, the daily series and the import coverage (firstDate, lastDate, importedAt). hasData=false when nothing was imported for the property. Requires the GEO add-on (error plan_limit otherwise). Use for GEO: "how visible are we inside AI Overviews", trend after content changes, share vs classic impressions (compare with get_site_summary). / Impressões na Visão geral de IA e no Modo IA (relatório importado), com série diária e comparação.

Discovered
get_indexing_requests

Lists the indexing requests made for the property (from request_indexing, the panel or the sitemap job), newest first: url, engine (indexnow / google), action, source (manual / sitemap / agent), status (queued, submitted, failed, skipped), queuedAt, submittedAt, httpStatus and error (the cause of a failed or skipped request; starts with google_not_eligible when the page has no JobPosting or BroadcastEvent structured data). Filter by status; days = how far back (default 7, max 365). Returns counts per status and per engine, plus the daily credit per route (indexnow and google: used, limit, left; null = no limit). Reads only Organiq data. A sent request is not a confirmation; the confirmed state comes from the inspection (get_indexing_tracker). Use after request_indexing to see what was sent or why a request failed. / Pedidos de indexação da propriedade, com status por motor e crédito do dia.

Discovered
get_indexing_tracker

Indexing status of the property's inspected URLs (Search Console URL Inspection results stored by Organiq, plus the tracked_urls watch list): healthScore 0–100 (70 % indexed share + 30 % fresh-crawl share), indexed / not indexed counts, breakdown by coverageState and verdict, crawl freshness (fresh <= 30 days, aging, stale >= 120 days, never), alerts (deindexed since an earlier check, fetch errors, robots blocks, canonical mismatch, stale crawl, not indexed) and coverage over time by week of check. hasData=false means no inspection has been stored for this property yet (the inspection sync is not enabled for the account). The submissions field adds the last indexing request per URL (request_indexing: last submission time, state, cause, last inspection). Use for "are my pages indexed", "did Google drop a page", crawl staleness. / Saúde de indexação das URLs inspecionadas: nota 0–100, cobertura, frescor de crawl e alertas.

Discovered
get_longtail_clusters

Splits the period's queries into head, chunky middle and long tail by word count (preset balanced: 1–2 / 3–4 / 5+ words; strict: 1 / 2–3 / 4+; loose: 1–3 / 4–5 / 6+), with queries, clicks, impressions, ctr, position, shares and top examples per tier, plus a Pareto view (share of clicks held by the top 10 % / 25 % / 50 % of queries). Use for "how dependent are we on a few head terms", "how much comes from long-tail", content-planning by intent length. / Cauda longa por nº de palavras e curva de Pareto.

Discovered
get_page_performance

Daily performance of ONE page (URL) of the property. Returns totals for the period and the comparison with change, the daily (or weekly) series and the top counterparts (queries bringing the page traffic). Exact match (case-insensitive for queries); when nothing matches, the error lists up to 5 candidates containing the text. / Série de uma página exata.

Discovered
get_position_distribution

How the property's queries spread across position bands 1-3, 4-10, 11-20 and 21+ for each day (or week) of the period: number of queries, clicks, impressions and impression share per band. Each query's position for a day is its impression-weighted average that day. Also returns the period aggregate and the share shift between the first and the last week (sharePoints, percentage points). Use for "are we moving from page 2 to page 1", "how much visibility sits beyond position 10", or to see when a band changed. / Faixas de posição por dia ou semana, com deslocamento entre a primeira e a última semana.

Discovered
get_query_performance

Daily performance of ONE search query on the property (optionally on one page). Returns totals for the period and the comparison with change, the daily (or weekly) series and the top counterparts (pages ranking for the query). Exact match (case-insensitive for queries); when nothing matches, the error lists up to 5 candidates containing the text. / Série de uma query exata.

Discovered
get_query_shape_trend

Weekly share of impressions (or clicks) per query shape (branded, question, comparison, transactional, local, longtail, head, other) and of "AI-style" queries over the period (default 12 weeks), with sharePointsChange = last weeks minus first weeks in percentage points. Weeks are keyed by Monday; incomplete first/last weeks are listed in partialWeeks. Use to see whether questions / conversational queries are growing, i.e. demand shifting toward AI-style searches. / Tendência semanal da participação de cada formato de query, inclusive "estilo IA".

Discovered
get_ranking_changes

Classifies each query (or page) of the property by what happened between the comparison period and the current one: new (appeared), lost (disappeared), improved (position better by >= minPositionChange), declined (worse) or stable. Rows carry clicks/impressions/ctr/position for both periods, positionChange (negative = improved) and clicksChange; summary counts every status plus clicks gained from new and lost keys. Sorted by impressions then by size of the move. Use for "what did we gain or lose in rankings", "which queries fell off", "new queries this month". / Queries ou páginas novas, perdidas, que subiram ou caíram entre dois períodos.

Discovered
get_site_audit

Result of the latest finished crawl audit of the property's own site (HTML only, no JavaScript): audit date, pages crawled, the plan's per-audit page limit and whether the crawl was cut by it, two health scores (0–100) with the formula written out (page health: share of crawled pages with no error; traffic health: share of Search Console impressions of the last 28 days that land on pages with no error), pages counted per severity (error, warning, notice), issues sorted by impressions of the affected pages (code, severity, title, fix, pages, impressions, clicks), site-wide issues (robots.txt, sitemap, llms.txt, AI bots) and the health trend over the previous audits. Without a finished audit it states the state of the last one and points to request_site_audit. Use it for "how healthy is the site" or "what should I fix first"; get_audit_issue lists the pages of one issue. / Última auditoria concluída do site: nota por páginas e por tráfego com a fórmula, problemas por impressões afetadas, problemas do site inteiro e tendência.

Discovered
get_site_summary

Totals of clicks, impressions, CTR and average position for one property over the period, with the comparison period and the change (absolute, Pct as fraction, ctrPoints in percentage points, position difference where negative means improvement). Accepts all filters (country, device, brand, page, query). Start here for "how is site X doing". / Resumo da propriedade com comparação.

Discovered
get_timeseries

Clicks, impressions, CTR and position per day, week (Monday as key) or month (yyyy-mm) over the period, with filters. Use for trend, seasonality and to locate the date of a drop. Days without data are omitted. / Série temporal por dia, semana ou mês.

Discovered
get_weekly_digest

Short weekly digest for a property: the last 7 synced days vs the 7 before (and year-over-year), top 3 queries/pages up and down, anomalies of the week, Google updates and annotations, quick wins, technical alerts (Core Web Vitals, indexing), AI search lines and three next actions. Computed live from the synced data; when the account's weekly report job has run, storedReport carries the saved report's KPIs and actions (the same the e-mail/Slack digest sent) and alerts lists the alerts raised in the week. endDate moves the week (default: last synced date). Use for "what changed this week", Monday stand-ups, a client's weekly update. / Resumo da semana com movers, anomalias, alertas e 3 ações.

Discovered
list_ga4_properties

Lists the Google Analytics 4 properties the connected Google account can see (Analytics Admin API accountSummaries.list): id (numeric, the value set_ga4_property takes), displayName and the GA4 account name, sorted by account. Needs an active Google connection in the Organiq account that granted analytics.readonly; otherwise no_data with reason scope_missing / no_connection / token_revoked and the step that fixes it. Use it before set_ga4_property to find the property id, or when the user does not know their GA4 property id. Guide: https://organiqgeo.com/connect/ga4. / Lista as propriedades GA4 da conta Google conectada, para escolher o id em set_ga4_property.

Discovered
list_sitemaps

Sitemaps known to Search Console for the property: path, lastSubmitted, lastDownloaded, isPending, errors, warnings and contents per type (web, image, video, news: submitted URL counts). Search Console no longer reports indexed counts per sitemap through the API, so `indexed` is usually 0 — use get_indexing_tracker for indexing. Use to confirm Google is fetching the sitemap, spot errors/warnings and count submitted URLs. / Sitemaps da propriedade com status de download, erros e URLs enviadas.

Discovered
list_sites

Lists the Search Console properties synced for the signed-in account: id, siteUrl (Search Console format), displayName, tags, branded_terms (used by the brand filter), whether GA4/Bing are mapped and the data coverage (dataFrom/dataTo, web search). Use it first when you do not know the exact name of a site or need the date range available. Default: visible properties only. / Propriedades da conta com cobertura de dados.

Discovered
list_url_inspections

Latest stored URL Inspection result per URL of the property: verdict, coverageState, indexingState, robotsState, pageFetchState, Google vs user canonical, lastCrawlTime, crawledAs, mobileVerdict, checkedAt, whether the URL is on the tracked list and lastSubmittedAt (last indexing request made with request_indexing, null if none). Filter by status (indexed / not_indexed) or by URL text. hasData=false when no inspection is stored yet. Use after get_indexing_tracker to see specific URLs, or to check one URL's state. / Resultado da inspeção de cada URL (indexada?, canonical, último crawl).

Discovered
query_countries

Countries (ISO-3166-1 alpha-3, lowercase, e.g. bra) of one property over the period. Each row has clicks, impressions, ctr, position for the period and, with a comparison, prevClicks/prevImpressions/prevCtr/prevPosition plus clicksChange/clicksChangePct/positionChange (keys present in only one period show zeros in the other). sort: clicks (default), impressions, ctr, position (lowest first), growth (largest click gain vs comparison first) or decline (largest loss first). For ctr/position use minImpressions >= 20 to avoid noise. / Por país.

Discovered
query_devices

Devices (MOBILE, DESKTOP, TABLET) of one property over the period. Each row has clicks, impressions, ctr, position for the period and, with a comparison, prevClicks/prevImpressions/prevCtr/prevPosition plus clicksChange/clicksChangePct/positionChange (keys present in only one period show zeros in the other). sort: clicks (default), impressions, ctr, position (lowest first), growth (largest click gain vs comparison first) or decline (largest loss first). For ctr/position use minImpressions >= 20 to avoid noise. / Por dispositivo.

Discovered
query_top_pages

Pages (URLs) of one property over the period, aggregated and sorted. Use for best/worst pages and pages that gained or lost clicks. Each row has clicks, impressions, ctr, position for the period and, with a comparison, prevClicks/prevImpressions/prevCtr/prevPosition plus clicksChange/clicksChangePct/positionChange (keys present in only one period show zeros in the other). sort: clicks (default), impressions, ctr, position (lowest first), growth (largest click gain vs comparison first) or decline (largest loss first). For ctr/position use minImpressions >= 20 to avoid noise. / Páginas da propriedade, agregadas e ordenadas.

Discovered
query_top_queries

Search queries of one property over the period, aggregated and sorted. Use for "what people search to find us", growth/decline lists and ranking changes. Each row has clicks, impressions, ctr, position for the period and, with a comparison, prevClicks/prevImpressions/prevCtr/prevPosition plus clicksChange/clicksChangePct/positionChange (keys present in only one period show zeros in the other). sort: clicks (default), impressions, ctr, position (lowest first), growth (largest click gain vs comparison first) or decline (largest loss first). For ctr/position use minImpressions >= 20 to avoid noise. / Queries da propriedade, agregadas e ordenadas.

Discovered
request_indexing

Queues up to 100 URLs of one property for submission to search engines, by two routes: IndexNow (Bing, Yandex, Naver, Seznam, Yep; needs the IndexNow key set for the property) and Google through the Indexing API (optional per property). Google route (Indexing API) only sends pages with JobPosting or BroadcastEvent structured data, as Google requires; other URLs are checked at send time, not here: get_indexing_requests later shows them skipped, error starting google_not_eligible, and go through IndexNow when configured. Parameters: urls (absolute URLs of the property), action update (default) or delete, engines (indexnow and/or google; default: the configured routes). Returns queued (url + engine), skipped with a reason per URL (invalid_url, outside_property, duplicate_24h, daily_limit_indexnow, daily_limit_google, google_not_allowed_by_plan, google_not_configured, indexnow_not_configured) and creditsLeft ({indexnow, google}: URLs still allowed today on each route; null = no daily limit on that route). A submission is a request, not a confirmation: see get_indexing_requests and list_url_inspections. Writes only to Organiq (the request queue) and sends the URLs to the engines; never changes Search Console. Needs mcp:write. Errors: indexing_not_configured with the panel step; plan_limit only when no requested engine is allowed by the plan. A spent daily credit is not an error: the URLs come back in skipped (daily_limit_*). / Envia até 100 URLs para indexação (IndexNow e, opcional, Google Indexing API); grava só no Organiq e não altera o Search Console.

Discovered
request_site_audit

Queues a crawl audit of the property's own site in Organiq (HTML pages inside the verified property, robots.txt respected). Answers status "queued", or "not_queued" with reason "already_open" (an audit is queued or running) or "recent" (the last audit finished less than 24 hours ago), with the date of the last audit. The audit finishes within minutes to some hours depending on site size; read the result with get_site_audit. Writes only to Organiq, never to the audited site, Search Console, GA4 or Bing. Needs the write scope (mcp:write). Use it when get_site_audit reports no audit yet or the user fixed issues and wants a new reading. / Põe uma auditoria do site na fila; recusa se já há uma aberta ou se a última tem menos de 24 h.

Discovered
score_opportunities

Queries between minPosition and maxPosition whose CTR is below the expected CTR for their position. expectedCtr comes from the property's own curve (ctrSource "own", when the bucket has volume) or from the benchmark; ctrGap = expected − ctr (fraction); lostClicks = impressions × gap; score 0–100 log-normalized by the largest lostClicks (level high >= 80, medium >= 60). Use for title/meta-description quick wins. / Oportunidades por CTR abaixo do esperado.

Discovered
set_bing_key

Tests the Bing Webmaster Tools API key against Bing (GetUserSites) and, only if Bing accepts it, stores it for the Organiq account (one key per account; it serves every property with a Bing site set by set_bing_site). The key is generated by the user in Bing Webmaster Tools under Settings → API access ("Configurações → Acesso à API") and pasted in the chat; it is stored encrypted, never returned by any tool and not logged. Format: 16–128 letters, digits, "-" or "_". Bing refuses the key → bing_key_invalid and the previously stored key, if any, stays; Bing down or slow → upstream_unavailable and nothing is stored (retry in a few minutes). Only an owner or admin of the account can store it (insufficient_scope otherwise). Returns { set, setAt, bingSites }: bingSites are the site URLs Bing lists for the key, to check the value given to set_bing_site. Needs the write scope (mcp:write). Use it after set_bing_site, or when get_bing_performance / check_connection report the key missing. Guide: https://organiqgeo.com/connect/bing. / Testa a chave da API do Bing no próprio Bing e só grava, cifrada, se ele aceitar; chave recusada não substitui a anterior.

Discovered
set_bing_site

Sets the site URL registered in Bing Webmaster Tools for one Search Console property in Organiq (same rule as the panel): https, no query/fragment, and on the property's own domain (an sc-domain property accepts the domain and its subdomains; a URL-prefix property requires the same host under its path); null clears it. Returns the property settings and whether the account's Bing API key is set (set_bing_key). When the value changes, the Bing data already synced is deleted and the next daily sync rebuilds it; get_bing_performance answers after a sync with both the site and the key in place. Needs the write scope (mcp:write). Use it when check_connection lists no_bing or the user asks to connect Bing. Guide: https://organiqgeo.com/connect/bing. / Grava a URL do site no Bing Webmaster Tools para a propriedade; precisa também da chave da conta (set_bing_key).

Discovered
set_branded_terms

Replaces the branded terms of one Search Console property in Organiq (the list used by the brand filter, get_breakdown, get_branded_performance and the branded shape of analyze_query_shapes): brand and product names as people type them, up to 20 terms of 2–40 characters, lower-cased and de-duplicated; a query counts as branded when it contains one of them. The whole list is replaced (send the full list; [] clears). Takes effect immediately on the next read (no sync needed). Needs the write scope (mcp:write). Use it when check_connection lists no_branded_terms or brand=branded was rejected. / Substitui os termos de marca da propriedade (até 20); vale na hora.

Discovered
set_ga4_property

Links a Google Analytics 4 property to one Search Console property in Organiq (the same setting as the panel's "Integrações" block): ga4PropertyId is the numeric id from list_ga4_properties ("123456789" or "properties/123456789"); null unlinks. Returns the property settings. When the value changes, the GA4 data already synced from the previous property is deleted and the next daily sync rebuilds the history from the new one (Search Console data is untouched); get_ai_traffic answers after that sync. Needs the write scope (mcp:write). Use it when check_connection lists no_ga4 or the user asks to connect GA4. Guide: https://organiqgeo.com/connect/ga4. / Liga a propriedade GA4 à propriedade do Search Console; trocar apaga o GA4 já sincronizado e o sync refaz.

Discovered

Recent measurements

Probe history

View status
Latest stored probes. Raw probe rows are kept for 14 days.
CheckedResultResponseTools
Connected956 ms51
Connected621 ms51