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
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.
About
Reviews
Write a reviewNo 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_checkaudit_pageaudit_sitebing_list_sitesbing_page_statsbing_query_statsbing_url_infobrave_queryclaude_queryfind_broken_external_linksgemini_querygeoseo_status
Show 18 more tools
grok_querygsc_inspect_urlgsc_list_sitesgsc_performanceinternal_link_graphlint_schema_pagelist_llm_enginesmulti_llm_citation_checkmulti_llm_queryopenai_queryperplexity_citation_checkperplexity_querysuggest_internal_linkstrend_statsvalidate_llms_txtyandex_list_sitesyandex_query_statsyandex_url_info
Write 6 · Create, change, send or run things.
bing_submit_urlgsc_submit_sitemapindexnow_submit_urlindexnow_submit_urlstrend_inityandex_submit_url
Not yet classified 11 · We could not tell from the name and description.
aio_checkbing_crawl_issuesgenerate_llms_txtlint_schema_sitesnapshot_gscsnapshot_llm_citationssnapshot_serp_aiotrend_gsctrend_llm_citationsyandex_crawl_issuesyandex_site_summary
Secrets and settings it asks for
Secrets: values you paste in that let it act as you.
GEOSEO_ANTHROPIC_API_KEYGEOSEO_BING_WEBMASTER_API_KEYGEOSEO_BRAVE_API_KEYGEOSEO_GEMINI_API_KEYGEOSEO_GOOGLE_CLIENT_SECRETGEOSEO_INDEXNOW_KEYGEOSEO_OPENAI_API_KEYGEOSEO_PERPLEXITY_API_KEYGEOSEO_SERPAPI_API_KEYGEOSEO_XAI_API_KEYGEOSEO_YANDEX_OAUTH_TOKEN
Other settings (environment variables or headers).
GEOSEO_TOOLSETS
Network hosts it talks to 31
ai.google.dev· found in codeaistudio.google.com· found in codeapi-dashboard.search.brave.com· found in codeapi.anthropic.com· found in codeapi.indexnow.org· found in codeapi.openai.com· found in codeapi.perplexity.ai· found in codeapi.search.brave.com· found in codeapi.webmaster.yandex.net· found in codeapi.x.ai· found in codebing.com· found in codeconsole.anthropic.com· found in codeconsole.x.ai· found in codedevelopers.google.com· found in codedocs.anthropic.com· found in codedocs.perplexity.ai· found in codedocs.x.ai· found in codegenerativelanguage.googleapis.com· found in codegithub.com· found in codegoogleapis.com· found in codeindexnow.org· found in codelearn.microsoft.com· found in codellmstxt.org· found in codeoauth.yandex.com· found in codeperplexity.ai· found in codeplatform.openai.com· found in codeserpapi.com· found in codesoberpath.com· found in codessl.bing.com· found in codeyandex.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_checkRun 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_checkFor 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_pageAudit 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_siteRecursively 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_issuesCrawl errors / blocked URLs / DNS issues reported by Bingbot.
bing_list_sitesList all Bing-verified sites for the API key owner.
bing_page_statsPer-page stats from Bing Webmaster.
bing_query_statsLast-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_urlSubmit a URL for fast crawling. Daily quota applies (default ~10/day).
bing_url_infoIndex status + crawl info for a single URL on Bing.
brave_queryAsk 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_queryAsk Claude (with server-side web search) a question; return answer + cited URLs.
find_broken_external_linksFind 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_queryAsk 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_txtGenerate 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_statusReport 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_queryAsk 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_urlGet 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_sitesList 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_performanceQuery 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_sitemapSubmit (or resubmit) a sitemap URL to GSC. ``feedpath`` is the absolute URL of the sitemap, e.g. ``https://example.com/sitemap.xml``.
indexnow_submit_urlNotify 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_urlsBatch-notify search engines about up to 10,000 URLs (must share one host). Best for sitemap-wide rebuilds or large content updates.
internal_link_graphAudit 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_pageValidate 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_siteRun ``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_enginesReturn the LLM engines currently configured (have an API key).
multi_llm_citation_checkHow 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_queryAsk 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_queryAsk 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_checkCitation share for ``target_domain`` across a Perplexity question batch.
perplexity_queryAsk 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_gscRun 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_citationsRun 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_aioRun AIO citation check via SerpAPI and persist as ``serpapi_aio`` engine rows.
suggest_internal_linksSuggest 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_gscTime-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_initCreate the local SQLite snapshot DB if it doesn't exist; return its path.
trend_llm_citationsPer-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_statsInventory of what's stored: row counts, sites/domains, oldest/newest snapshots.
validate_llms_txtValidate 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_issuesActive Yandex site diagnostics (by severity) plus sample broken internal links.
yandex_list_sitesList sites in the token owner's Yandex Webmaster account.
yandex_query_statsTop 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_summarySite 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_urlQueue a URL for Yandex recrawl. Daily quota applies.
yandex_url_infoIndexing + 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
- Repository
- github.com/Rachit8484/geoseo-mcp
- 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)