Skip to content
Agentmart
Submit a tool

geoseo-mcp

SEO + GEO: Search Console, Bing, Yandex, IndexNow, AI Overviews and LLM citation tracking.

Connector by Rachit8484 · GitHub account verified by the MCP Registry

IndexedMITLocal (stdio)★ 3
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/rachit8484-geoseo-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

SEO + GEO: Search Console, Bing, Yandex, IndexNow, AI Overviews and LLM citation tracking.

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
30 read · 6 write · 0 delete · 11 not yet classified
Secrets
11 (API keys, tokens or passwords)
Install scripts
None found
Runs as
Python package

Tools by what they do 47

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

Read 30 · Look things up without changing anything.

  • aio_citation_check
  • audit_page
  • audit_site
  • bing_list_sites
  • bing_page_stats
  • bing_query_stats
  • bing_url_info
  • brave_query
  • claude_query
  • find_broken_external_links
  • gemini_query
  • geoseo_status
Show 18 more tools
  • grok_query
  • gsc_inspect_url
  • gsc_list_sites
  • gsc_performance
  • internal_link_graph
  • lint_schema_page
  • list_llm_engines
  • multi_llm_citation_check
  • multi_llm_query
  • openai_query
  • perplexity_citation_check
  • perplexity_query
  • suggest_internal_links
  • trend_stats
  • validate_llms_txt
  • yandex_list_sites
  • yandex_query_stats
  • yandex_url_info

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

  • bing_submit_url
  • gsc_submit_sitemap
  • indexnow_submit_url
  • indexnow_submit_urls
  • trend_init
  • yandex_submit_url

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

  • aio_check
  • bing_crawl_issues
  • generate_llms_txt
  • lint_schema_site
  • snapshot_gsc
  • snapshot_llm_citations
  • snapshot_serp_aio
  • trend_gsc
  • trend_llm_citations
  • yandex_crawl_issues
  • yandex_site_summary

Secrets and settings it asks for

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

  • GEOSEO_ANTHROPIC_API_KEY
  • GEOSEO_BING_WEBMASTER_API_KEY
  • GEOSEO_BRAVE_API_KEY
  • GEOSEO_GEMINI_API_KEY
  • GEOSEO_GOOGLE_CLIENT_SECRET
  • GEOSEO_INDEXNOW_KEY
  • GEOSEO_OPENAI_API_KEY
  • GEOSEO_PERPLEXITY_API_KEY
  • GEOSEO_SERPAPI_API_KEY
  • GEOSEO_XAI_API_KEY
  • GEOSEO_YANDEX_OAUTH_TOKEN

Other settings (environment variables or headers).

  • GEOSEO_TOOLSETS

Network hosts it talks to 31

  • ai.google.dev · found in code
  • aistudio.google.com · found in code
  • api-dashboard.search.brave.com · found in code
  • api.anthropic.com · found in code
  • api.indexnow.org · found in code
  • api.openai.com · found in code
  • api.perplexity.ai · found in code
  • api.search.brave.com · found in code
  • api.webmaster.yandex.net · found in code
  • api.x.ai · found in code
  • bing.com · found in code
  • console.anthropic.com · found in code
  • console.x.ai · found in code
  • developers.google.com · found in code
  • docs.anthropic.com · found in code
  • docs.perplexity.ai · found in code
  • docs.x.ai · found in code
  • generativelanguage.googleapis.com · found in code
  • github.com · found in code
  • googleapis.com · found in code
  • indexnow.org · found in code
  • learn.microsoft.com · found in code
  • llmstxt.org · found in code
  • oauth.yandex.com · found in code
  • perplexity.ai · found in code
  • platform.openai.com · found in code
  • serpapi.com · found in code
  • soberpath.com · found in code
  • ssl.bing.com · found in code
  • yandex.com · found in code
Show 1 more hosts
  • yourdomain.com · found in code

Files it touches

  • Any path the agent passes to its tools

Tools (47)

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

  • aio_check

    Run a Google search via SerpAPI and parse the AI Overview block. Returns ``aio_present``, the AIO answer text, the URLs/domains AIO cites, and the top-10 organic results for context. Use this to track which pages Google's generative answers actually source.

  • aio_citation_check

    For a batch of queries, report AIO fire-rate and citation share for ``target_domain``. This is the GEO companion to ``multi_llm_citation_check`` — same idea, but specifically for Google's on-SERP AI Overviews. Run weekly and snapshot to ``snapshot_serp_aio`` to track AIO visibility over time.

  • audit_page

    Audit a single page (local file path or http(s) URL). Set ``render=True`` to audit the page after JavaScript runs (needs the optional ``geoseo-mcp[render]`` extra + ``playwright install chromium``). Either way the report flags pages that are empty without JavaScript, since most AI crawlers don't execute it. Returns a structured report with: title/meta/headings, word count, link counts, image alt coverage, JSON-LD schema types, Open Graph, Twitter Card, freshness signals, GEO-quotability score, and a list of human-readable findings. Plus a 0-100 overall ``score``. Examples: ``audit_page(…

  • audit_site

    Recursively audit every HTML file under a folder. Returns per-file scores, an aggregate summary (mean score, worst pages, most common findings), and the top opportunities for improvement. Useful as the first call against a content directory to spot the worst offenders quickly.

  • bing_crawl_issues

    Crawl errors / blocked URLs / DNS issues reported by Bingbot.

  • bing_list_sites

    List all Bing-verified sites for the API key owner.

  • bing_page_stats

    Per-page stats from Bing Webmaster.

  • bing_query_stats

    Last-6-months query stats from Bing Webmaster (clicks, impressions, position). ``site_url`` must match what Bing has verified, e.g. ``https://example.com/``.

  • bing_submit_url

    Submit a URL for fast crawling. Daily quota applies (default ~10/day).

  • bing_url_info

    Index status + crawl info for a single URL on Bing.

  • brave_query

    Ask Brave's AI Answers (grounded in Brave Search); return answer + cited URLs. Brave runs its own independent web index, so it is a useful extra signal next to Google/Bing-backed engines. Requires the Brave Answers plan (``GEOSEO_BRAVE_API_KEY``).

  • claude_query

    Ask Claude (with server-side web search) a question; return answer + cited URLs.

  • find_broken_external_links

    Find dead, redirected, or flaky outbound links across a folder of HTML. Every external ``<a href>`` is collected (``mailto:``, ``tel:``, ``javascript:`` and in-page anchors are skipped) and each unique URL is checked once with HEAD, falling back to GET for servers that refuse HEAD. Results are grouped as ``ok`` / ``redirect`` / ``client_error`` / ``server_error`` / ``timeout`` / ``dns_fail`` / ``error``, and every non-ok link lists the pages it appears on plus a suggested action. ``site_host`` (e.g. ``"example.com"``) marks absolute links to your own site as internal so they're skipped. Resu…

  • gemini_query

    Ask Gemini (with Google Search grounding) a question; return answer + cited URLs. Grounding sources here are the same signal Google uses for AI Overviews, so this is the closest open-API proxy for "what AIO might cite for this query".

  • generate_llms_txt

    Generate a draft ``llms.txt`` from a folder of HTML pages. ``llms.txt`` (https://llmstxt.org) is the emerging standard for telling LLM crawlers where your canonical content lives. This tool reads each page's ``<title>`` and meta description, groups by URL prefix, and produces spec-compliant Markdown ready to drop at ``/llms.txt``. ``section_strategy`` controls grouping: - ``first_path_segment`` (default): groups by first URL path segment, e.g. all ``/blog/...`` pages under "Blog". - ``flat``: a single "Pages" section.

Show 32 more tools
  • geoseo_status

    Report which engines are configured and reachable. Always safe to call. Returns a dict keyed by engine name with `configured: bool` and a short message. Use this as the first call in a session to know what's available.

  • grok_query

    Ask Grok (with live web search) a question; return answer + cited URLs. Uses the xAI Responses API with the ``web_search`` tool. ``citations`` are the URLs Grok actually cites inline; ``sources_considered`` lists everything it looked at. Set ``x_search=True`` to also search X posts. Default model: ``GEOSEO_GROK_MODEL`` (``grok-4.3``).

  • gsc_inspect_url

    Get index status for a specific URL via the URL Inspection API. Returns coverage state, last crawl time, mobile usability, indexed verdict, and indexing rich-result data. Slow (~1s/call); rate-limited by Google.

  • gsc_list_sites

    List all Search Console properties the authenticated user can access. Returns a list of site entries with ``siteUrl`` and ``permissionLevel``. Use ``siteUrl`` from this list as input to other ``gsc_*`` tools.

  • gsc_performance

    Query GSC search analytics. Args: site_url: The property as it appears in GSC (e.g. ``sc-domain:example.com`` or ``https://example.com/``). start_date: ISO date (YYYY-MM-DD). Defaults to 28 days ago. end_date: ISO date. Defaults to 2 days ago (GSC has ~2-day latency). dimensions: One or more of ``query``, ``page``, ``country``, ``device``, ``date``, ``searchAppearance``. Defaults to ``["query"]``. row_limit: Max rows (capped at 25,000). search_type: ``web``, ``image``, ``video``, ``news``, or ``discover``. country: ISO 3166-1 alpha-3 country filter …

  • gsc_submit_sitemap

    Submit (or resubmit) a sitemap URL to GSC. ``feedpath`` is the absolute URL of the sitemap, e.g. ``https://example.com/sitemap.xml``.

  • indexnow_submit_url

    Notify Bing, Yandex, Naver, Seznam, and Yep that a single URL was published or updated. Requires ``GEOSEO_INDEXNOW_KEY`` env var (a 32-char hex string you also host at ``https://yourdomain.com/<key>.txt``).

  • indexnow_submit_urls

    Batch-notify search engines about up to 10,000 URLs (must share one host). Best for sitemap-wide rebuilds or large content updates.

  • internal_link_graph

    Audit a folder of HTML pages as a directed internal-link graph. Returns counts of files/edges, the orphans (no inbound links), dead-ends (no outbound links), top hub pages, and a list of dangling internal hrefs that don't resolve to any file. Pass ``site_host`` (e.g. ``"example.com"``) if pages link to themselves with absolute URLs — those will then count as internal edges. Files are also matched by URL slug, so ``/blog/foo`` resolves to ``foo.html`` even when paths don't match exactly.

  • lint_schema_page

    Validate a page's JSON-LD against Google's structured-data requirements. ``source`` is a local HTML file or an http(s) URL. Every ``application/ld+json`` block is parsed (``@graph`` included) and each typed entity is checked against Google's documented required and recommended properties for Article, Product (with nested Offer / AggregateRating / Review), Recipe, LocalBusiness, BreadcrumbList, Event, VideoObject, SoftwareApplication, JobPosting, QAPage, Review and Organization. FAQPage and HowTo are checked against schema.org since Google no longer shows those rich results. Returns per-entit…

  • lint_schema_site

    Run ``lint_schema_page`` over every HTML file in a folder. Returns files with errors, files that have no JSON-LD at all, a count of schema types found, the most common missing required properties, and per-file problems.

  • list_llm_engines

    Return the LLM engines currently configured (have an API key).

  • multi_llm_citation_check

    How often each configured LLM cites (or mentions) ``target_domain``. The headline GEO/AEO tool. Feed it your top 20-50 buyer questions and get a per-engine breakdown for ChatGPT/Claude/Gemini/Perplexity/Grok/Brave: - ``citation_rate`` (+ 95% interval): share of answers linking to your domain or any subdomain of it. - ``mention_rate`` / ``unlinked_mention_rate``: answers that name your brand, with or without a link. Pass ``brand_aliases`` (e.g. ``["Acme", "Acme CRM"]``) if your brand isn't obvious from the domain. - ``top_competing_domains`` and per-question results. LLM answers vary r…

  • multi_llm_query

    Ask the same question to all (or selected) configured LLM engines in parallel. ``engines``: optional subset of ``["perplexity","openai","anthropic","gemini","grok","brave"]``. Default: every engine with credentials configured (see ``geoseo_status``). Engines that error are reported per-engine and don't block the others.

  • openai_query

    Ask ChatGPT (with web search) a question; return answer + cited URLs. Uses the OpenAI Responses API with the ``web_search`` tool. Default model: ``GEOSEO_OPENAI_MODEL`` (``gpt-5-mini``).

  • perplexity_citation_check

    Citation share for ``target_domain`` across a Perplexity question batch.

  • perplexity_query

    Ask Perplexity (Agent API + web search); return answer + cited URLs/domains. Defaults to the ``fast`` effort preset. Pass ``model`` to pin one (e.g. ``openai/gpt-5-mini``); legacy names like ``sonar`` still work.

  • snapshot_gsc

    Run a GSC performance query and persist the rows as a snapshot. Run this on a schedule (cron, n8n, ``launchd`` — anything that can invoke an MCP tool) to build a local time-series of search performance. Default dimensions: ``["query"]``.

  • snapshot_llm_citations

    Run multi-LLM citation check and persist the per-question results. Builds the dataset behind ``trend_llm_citations``. ``engines`` defaults to every configured LLM (see ``geoseo_status``). With ``samples > 1`` a question is stored as cited when most samples cite you.

  • snapshot_serp_aio

    Run AIO citation check via SerpAPI and persist as ``serpapi_aio`` engine rows.

  • suggest_internal_links

    Suggest top-K internal links to add to each page in a folder. By default uses TF-IDF cosine similarity over ``<title>``, headings, meta description and body text (offline, free). Set ``mode`` to ``"openai"`` (text-embedding-3-small), ``"gemini"`` (gemini-embedding-001) or ``"local"`` (sentence-transformers) for embedding similarity; ``model`` overrides the default model. Vectors are cached in SQLite by content hash, so re-runs are cheap. Excludes links the source already has, plus the page itself. Returns suggestions for ``page`` only if provided, otherwise for every page. Each suggestion in…

  • trend_gsc

    Time-series of clicks/impressions/position from stored GSC snapshots. Aggregates by ``captured_at``. Filter by ``query`` and/or ``page`` to drill in. Returns up to ``limit`` most recent snapshots in chronological order.

  • trend_init

    Create the local SQLite snapshot DB if it doesn't exist; return its path.

  • trend_llm_citations

    Per-snapshot citation share for ``target_domain`` over time. ``engine`` filters to one of ``perplexity|openai|anthropic|gemini|serpapi_aio``. Returns rows of ``{captured_at, engine, questions, cited, citation_share}``.

  • trend_stats

    Inventory of what's stored: row counts, sites/domains, oldest/newest snapshots.

  • validate_llms_txt

    Validate an ``llms.txt`` file (local path or URL) against the spec. Returns parsed structure plus an ``issues`` list with line numbers for any violations (missing H1, broken link syntax, non-http(s) URLs, etc).

  • yandex_crawl_issues

    Active Yandex site diagnostics (by severity) plus sample broken internal links.

  • yandex_list_sites

    List sites in the token owner's Yandex Webmaster account.

  • yandex_query_stats

    Top Yandex search queries: shows, clicks, average show/click position. ``order_by``: ``TOTAL_SHOWS`` or ``TOTAL_CLICKS``. ``device``: ``ALL``, ``DESKTOP``, ``MOBILE_AND_TABLET``, ``MOBILE``, ``TABLET``. Dates are ``YYYY-MM-DD``; defaults to the last week.

  • yandex_site_summary

    Site quality index (SQI), pages in search, excluded pages, problem counts. ``site`` can be a URL (``https://example.com/``) or a Yandex host id (``https:example.com:443``).

  • yandex_submit_url

    Queue a URL for Yandex recrawl. Daily quota applies.

  • yandex_url_info

    Indexing + search status for a URL in Yandex "Monitoring important pages".

Compare and alternatives

    Featured in

    Signals

    Stars
    3
    Forks
    0
    Open issues
    0
    Weekly downloads
    107
    Last commit
    Oct 23, 2026 (5 days ago)
    Last release
    Oct 23, 2026 (5 days ago)
    Last package publish
    Oct 23, 2026 (5 days ago)

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

    Details

    Registry name
    io.github.Rachit8484/geoseo-mcp
    Version
    0.4.0
    Auth
    API key
    Packages
    pypi geoseo-mcp
    License
    MIT
    First seen
    Oct 24, 2026
    Last checked
    Oct 24, 2026
    Cite this page

    geoseo-mcp. Agent Mart. https://agentmart.dev/connectors/rachit8484-geoseo-mcp (last updated 2026-10-24)