Home · Tools · get_geo_score

get_geo_scoreOne number for AI visibility.

Sometimes the agent doesn't need a full audit, just the headline. get_geo_score returns a single-number visibility score (0-100) for a domain across Perplexity, Gemini, Grok and ChatGPT, plus a 30-day trend line. Two credits. About one second. Useful as a status pull inside daily reports, weekly digests, and dashboards.

Slug
get_geo_score
Cost
2 credits
Latency
~1s
Rate limit
120/min

When to call this tool

Use it as a status pull, not an analytical pass. The score is computed from cached probe data refreshed every 24 hours, so the call is fast and cheap. The trend array gives the last 30 daily scores; agents writing daily updates or weekly digests can render a simple line. For the underlying citations and gaps, call run_geo_audit or list_geo_gaps instead.

The score is calibrated against a category baseline — a score of 70 in "developer-tools email API" is not the same as a 70 in "DTC supplements", and the underlying weighting reflects the typical citation density of each category. The category is inferred from the domain unless you override it.

Input schema

{ "domain": "string  // required", "category": "string  // optional override" }

Output schema

{
  "domain": "…",
  "score": 0-100,
  "by_engine": { "perplexity": 62, "gemini": 71, "grok": 48, "chatgpt": 66 },
  "trend_30d": [61, 63, "…", 66],
  "asof": "…",
  "credits_used": 2
}

Example invocations

1. Claude Desktop

What's my GEO score for resend.com today?

2. ChatGPT custom GPT

For "GEO score" or "AI visibility score" prompts, call
get_geo_score and lead with the headline number.

3. Cursor MCP

Pull get_geo_score for these 8 domains and render a chart.

4. n8n

{ "jsonrpc": "2.0", "method": "tools/call",
  "params": { "name": "get_geo_score", "arguments": { "domain": "vercel.com" } } }

5. Raw curl

curl -X POST https://www.mentionfox.com/mcp \
  -H "Authorization: Bearer $FOXAPIS_KEY" \
  -d '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"get_geo_score","arguments":{"domain":"linear.app"}}}'

Sample output

{
  "domain": "linear.app",
  "score": 68,
  "by_engine": { "perplexity": 71, "gemini": 74, "grok": 52, "chatgpt": 75 },
  "trend_30d": [61, 62, 64, "…", 68],
  "credits_used": 2
}

Credit cost & rate limits

Flat 2 credits. 120 calls per minute per key. Cached for 24h.

Error codes & recovery

404 NO_DATADomain has not been probed yet. Call run_geo_audit to seed it.
422 BAD_DOMAINDomain string didn't parse.