Skip to content

Geoa — Get found in ChatGPT

by geoa.app · remote · no sign-in to list tools · v1.2.0 · published by app.geoa

Check whether ChatGPT, Gemini and Perplexity recommend a business, and get fixes for its website.

Changes · 12

13 tools: 12 change things and 1 only read.

Scanned Oct 22, 2026

1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http geoa https://geoa.app/mcp

Findings

Matches of fixed checks, with the text they matched.

1 warn
  • The server marks "geoa_radar_find_prospects" as not read-only (readOnlyHint: false), and its words say it reads.

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "geoa_radar_find_prospects" says "find": a word for reading.

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

13 tools

Changes things 12Claude Code: ask
  • geoa_ai_visibilityYour brand's AI visibility from geoa's stored scans: is your company mentioned when people ask ChatGPT, Claude, Gemini or Perplexity?No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Your brand's AI visibility from geoa's stored scans: is your company mentioned when people ask ChatGPT, Claude, Gemini or Perplexity? Returns mention rate per engine, the top visibility gaps, and which competitors are cited instead. Reads stored scan results only (no live engine calls). Requires a connector key.

    Annotations the server declares

    • title: AI Visibility Report
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • geoa_draft_from_gapCreate a source-verified article draft from an AI-visibility gap (e.g.No findings

    Why it is in this group

    • The description's first verb is "create": a word for a change.
    Description, as the server wrote it
    Create a source-verified article draft from an AI-visibility gap (e.g. a question from geoa_ai_visibility). The draft is generated with the customer's Brand Brain, source-verified by the Gate and scored by the Coach — and lands as a DRAFT in Content Studio; nothing is published automatically. Requires a connector key; counts against the plan's article quota.

    Annotations the server declares

    • title: Draft Article from Visibility Gap
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • geoa_fix_backlogYour current geoa fix queue: the 5 highest-priority GEO fixes served right now (title, effort, impact, delivery channel) plus how many wait in the backlog and how many are verified…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Your current geoa fix queue: the 5 highest-priority GEO fixes served right now (title, effort, impact, delivery channel) plus how many wait in the backlog and how many are verified done. Every fix is closed by MEASUREMENT, never by claim. Read-only — act on fixes in the geoa dashboard. Requires a connector key.

    Annotations the server declares

    • title: Fix Queue
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • geoa_geo_scoreGEO score for a domain: how ready the site is to be read, understood and cited by AI search engines, measured across 15 technical dimensions.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    GEO score for a domain: how ready the site is to be read, understood and cited by AI search engines, measured across 15 technical dimensions. Returns the total score, a grade, and the 3 weakest dimensions (full 15-dimension report requires a geoa account). Results are cached for 6 hours per domain.

    Annotations the server declares

    • title: GEO Score for Domain
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • geoa_pending_fixesThe approved geoa fixes that are NOT yet written into this site's code — use this when you build or update the customer's website with Claude Code.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    The approved geoa fixes that are NOT yet written into this site's code — use this when you build or update the customer's website with Claude Code. Each item carries the path (url_pattern), the new value to write, and what geoa measured there before, so you can find the right spot in the repo. A human already approved every item in geoa; they are changes to make, not suggestions to weigh. Read-only. Requires a connector key.

    Annotations the server declares

    • title: Approved Fixes Not Yet in the Code
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • geoa_radar_enrichEnrich a company domain with verified registry data via Nordic Data (CVR/Brønnøysund/Bolagsverket etc.): registered name, company number, industry code, legal form, status.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Enrich a company domain with verified registry data via Nordic Data (CVR/Brønnøysund/Bolagsverket etc.): registered name, company number, industry code, legal form, status. Counts against the plan's monthly lookup quota. Requires a connector key. Company-level data only — never persons.

    Annotations the server declares

    • title: Registry Enrich (Radar)
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • geoa_radar_find_prospectsFind B2B prospect companies for a workspace via geoa Radar: discovery by industry+city (or your own seed domains), registry-qualified with Nordic Data (official business registries…1 finding

    Why it is in this group

    • The name "geoa_radar_find_prospects" says "find": a word for reading.
    • The server marks it as not read-only (readOnlyHint: false).

    Findings

    • Warn

      The server marks "geoa_radar_find_prospects" as not read-only (readOnlyHint: false), and its words say it reads.

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "geoa_radar_find_prospects" says "find": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Find B2B prospect companies for a workspace via geoa Radar: discovery by industry+city (or your own seed domains), registry-qualified with Nordic Data (official business registries). Returns a ranked candidate list and a search_id for scoring. Counts against the plan's monthly prospect-search quota. Requires a connector key. Research only — geoa never contacts anyone on your behalf.

    Annotations the server declares

    • title: Find B2B Prospects (Radar)
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • geoa_radar_score_prospectsGEO-score the prospects in a Radar search (search_id from geoa_radar_find_prospects): healthy company + weak AI visibility = highest sales priority.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    GEO-score the prospects in a Radar search (search_id from geoa_radar_find_prospects): healthy company + weak AI visibility = highest sales priority. Scoring runs in the background — call again with the same search_id to fetch results. Requires a connector key.

    Annotations the server declares

    • title: Score Prospects (Radar)
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • geoa_ready_articlesContent Studio articles that are approved and ready to go into the site: title, body (markdown and HTML), meta description, FAQ, JSON-LD and the EU AI Act disclosure.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Content Studio articles that are approved and ready to go into the site: title, body (markdown and HTML), meta description, FAQ, JSON-LD and the EU AI Act disclosure. Use this when you build or update the customer's website with Claude Code. Read-only. Requires a connector key.

    Annotations the server declares

    • title: Articles Ready to Publish
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • geoa_report_article_publishedReport that a ready article is now published at a live URL.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Report that a ready article is now published at a live URL. geoa starts measuring the article's effect on that URL and cross-links the other articles in its cluster to it. Without this, the article stays unpublished in geoa and keeps coming back as ready. Writes to the customer's geoa account. Requires a connector key.

    Annotations the server declares

    • title: Report Article Published
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • geoa_report_fixes_liveReport that you have written the given approved fixes into the site and DEPLOYED them.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Report that you have written the given approved fixes into the site and DEPLOYED them. geoa then fetches the public page as an ordinary visitor and confirms the change is really there — a fix is closed by measurement, never by claim, so call this only after the change is actually live. Writes to the customer's geoa account. Requires a connector key.

    Annotations the server declares

    • title: Report Fixes Written and Deployed
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • geoa_verify_claimVerify a numeric claim against its cited source (geoa's Gate).No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Verify a numeric claim against its cited source (geoa's Gate). Fetches the source page and checks mechanically whether the number appears there and whether the source is circular; with a geoa account it also checks SEMANTICALLY whether the source actually supports the claim. Returns a verdict: supported | unsupported | self_referential | unverifiable, plus the matched evidence.

    Annotations the server declares

    • title: Verify Claim Against Source
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
Only reads 1Claude Code: allow
  • geoa_account_statusYour geoa plan and usage (articles used/remaining this month).No findings

    Why it is in this group

    • The name "geoa_account_status" says "status": a word for reading.
    Description, as the server wrote it
    Your geoa plan and usage (articles used/remaining this month). Requires a connector key.

    Annotations the server declares

    • title: Account Status
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.2.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http geoa https://geoa.app/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__geoa__geoa_account_status"
    ],
    "ask": [
      "mcp__geoa__geoa_verify_claim",
      "mcp__geoa__geoa_geo_score",
      "mcp__geoa__geoa_ai_visibility",
      "mcp__geoa__geoa_draft_from_gap",
      "mcp__geoa__geoa_fix_backlog",
      "mcp__geoa__geoa_pending_fixes",
      "mcp__geoa__geoa_report_fixes_live",
      "mcp__geoa__geoa_ready_articles",
      "mcp__geoa__geoa_report_article_published",
      "mcp__geoa__geoa_radar_find_prospects",
      "mcp__geoa__geoa_radar_score_prospects",
      "mcp__geoa__geoa_radar_enrich"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as geoa. Review it before you use it.