# Geo Analyzer — REST API endpoint `geo-analyzer`

Return a Generative Engine Optimization (GEO) report for a public web page: an overall 0-100 score, per-category scores (technical, content, geo, ai-access), a citability score, AI-bot access from robots.txt, llms.txt presence and a list of pass/warn/fail checks with recommendations.

- Category: seo
- MCP server: https://mcp.findutils.com/ (Streamable HTTP, no API keys, 120 req/min per IP)
- REST endpoint: POST https://api.findutils.com/api/tools/geo-analyzer/execute (no API keys, 60 req/min per IP)
- Network tool: fetches a fixed, hard-coded public upstream (never a private host).
- Reference page: https://findutils.com/api/geo-analyzer/
- Same tool on the other surface: https://findutils.com/mcp/geo-analyzer/

## Call the endpoint (verified example)

```bash
curl -X POST https://api.findutils.com/api/tools/geo-analyzer/execute \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://findutils.com/"
  }'

# Parameter schema
curl https://api.findutils.com/api/tools/geo-analyzer
```

## Input schema

| Argument | Type | Required | Description |
|---|---|---|---|
| `url` | string | yes | Public http(s) URL of the page to analyze, e.g. "https://example.com/". |

Example arguments (verified):

```json
{
  "url": "https://findutils.com/"
}
```

OpenAPI 3.1 spec: https://findutils.com/api/openapi.json · Interactive docs: https://findutils.com/api/docs/

## Also an MCP tool

```bash
claude mcp add findutils --transport http https://mcp.findutils.com/
```

Then ask the client to call `findutils:geo_analyzer`. Full MCP reference: https://findutils.com/mcp/geo-analyzer/

---
Full catalog: GET https://api.findutils.com/api/tools · https://findutils.com/api/ · https://findutils.com/llms.txt
