# DigestSEO mcp-geo — AI Visibility MCP Server [Health: Active]

**Category:** 🎯 Marketing  
**Repository:** https://github.com/AKzar1el/mcp-geo  
**GitHub Stars:** 40  
**npm Downloads (last month):** 2645  
**Views:** 6  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/digestseo-mcp-geo-ai-visibility-mcp-server

## Description
DigestSEO mcp-geo: track brand citations across five AI search engines.

## Tools
Capabilities this server exposes over MCP:

- **check_visibility** — Read stored visibility scores. run_mode='live' or 'batch' selects stored scans; omit for latest across modes. Live does not guarantee citations. Example: brand_id='acme', engines=['chatgpt'].
- **get_visibility_history** — Return daily or weekly visibility history with per-engine scores and per-bucket model-only versus search-requested evidence. Example: brand_id='acme', days=30, granularity='weekly'.
- **compare_competitors** — Compare brand/competitor mentions, co-mentions and share of voice. Coverage separates unmeasured from observed zero; new competitors lack historical scoring. Example: brand_id='acme', competitor_domains=['rival.com'], days=7.
- **get_citations** — Return paginated brand mentions and link-only evidence with genuine URL provenance and top source domains. Continue with next_cursor within 24 hours; restart without a cursor after it expires. Example: brand_id='acme', days=14.
- **get_content_gaps** — Prioritize observed competitor-winning prompts. Provider-free by default; ai_analysis=true opts in to token-billed Claude (may retry once). Example: brand_id='acme'.
- **refresh_brand** — Scan selected engines and return after completion. Provider API requests may incur charges. Retries rerun every active prompt, including prior successes. Example: brand_id='acme', engines=['chatgpt','gemini'].
- **track_brand** — Track a brand with 3 provider-free starter prompts. Set prompt_generation='anthropic' for paid Claude generation (may retry). Example: brand_id='acme', name='Acme', domain='acme.com'.
- **update_brand** — Change tracked-brand metadata without replacing prompts or history. Example: brand_id='acme', competitors=['rival.com'], refresh_frequency='manual' pauses cron scans but keeps manual refresh.
- **list_brands** — List tracked brands with metadata and active-prompt counts. Example: call before other tools when you need a brand_id.
- **list_prompts** — List a brand's active buyer-intent prompts without changing them. Example: brand_id='acme' before an audit or refresh.
- **set_prompts** — Replace a brand's active prompts with an exact supplied set; history is preserved. Example: brand_id='acme', prompts=['What is the best X for Y?'].
- **generate_prompts** — Replace active prompts with Claude-Haiku-generated buyer-intent prompts; requires ANTHROPIC_API_KEY and preserves history. Example: brand_id='acme', count=20.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "digestseo-mcp-geo-ai-visibility-mcp-server": {
    "command": "npx",
    "args": ["-y","@digestseo/mcp-geo"],
    "env": {
      "OPENAI_API_KEY": "",
      "ANTHROPIC_API_KEY": "",
      "GEMINI_API_KEY": "",
      "PERPLEXITY_API_KEY": "",
      "XAI_API_KEY": "",
      "SERPAPI_API_KEY": ""
    }
  }
}
```

**Requires environment variables:** `OPENAI_API_KEY`, `ANTHROPIC_API_KEY`, `GEMINI_API_KEY`, `PERPLEXITY_API_KEY`, `XAI_API_KEY`, `SERPAPI_API_KEY` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What DigestSEO mcp-geo — AI Visibility MCP Server does

DigestSEO mcp-geo — AI Visibility MCP Server exposes brand visibility analysis through MCP tools. It tracks results across configured AI search engines and returns both aggregate metrics and underlying evidence. The server can report a latest visibility snapshot, show changes over time, compare a brand with competitor domains, and list the prompts where each site wins or loses.

Its citation view provides the prompt, search engine, response excerpt, citation type, and brand URL when one appears in the response. A separate content-gap tool turns losing prompts into prioritized recommendations generated with Claude Haiku. The refresh operation starts a new scan for every engine with an available API key.

## How it works

The package runs as a local stdio MCP process. An MCP client launches it with `npx -y @digestseo/mcp-geo`, then exposes its tools to an assistant. Brands, scan history, and cached responses remain on the local machine. Scan prompts are sent to the AI providers selected through environment variables, and engines without credentials are skipped.

Visibility history can be grouped by day or week and includes overall and per-engine results. Competitor comparisons report share of voice along with prompts won by the tracked brand and by competing domains. Fresh scans may incur charges from the configured AI providers.

## Setup and configuration

Node.js 22.13 or later is required. At least one provider key should be available for engine-backed scans; credentials can be supplied in the MCP client's environment configuration:

- `OPENAI_API_KEY`
- `ANTHROPIC_API_KEY`
- `GEMINI_API_KEY`
- `PERPLEXITY_API_KEY`
- `XAI_API_KEY`
- `SERPAPI_API_KEY`

Provider keys are not needed merely to discover the MCP tools. A minimal local configuration uses the package command as the server command and passes selected keys through the client's environment settings. Claude Desktop can launch the package directly, while Claude Code and Codex CLI provide corresponding MCP add commands. The project also documents remote Worker deployment for clients that require an HTTPS MCP endpoint.

## Tools and capabilities

- `visibility.check` returns the latest overall snapshot, per-engine scores, and prompts that produced wins or losses.
- `visibility.history` provides daily or weekly time-series data for overall and engine-specific visibility.
- `visibility.compare` measures share of voice against competitor domains and identifies winning prompts for both sides.
- `visibility.citations` exposes citation records with response excerpts, citation types, and brand URLs when present.
- `visibility.content_gaps` produces prioritized recommendations for losing prompts using Claude Haiku.
- `visibility.refresh` launches a new scan across engines whose credentials are configured.

## Limitations and notes

Only engines with configured API keys participate in refresh operations. The local package is a stdio server; clients that cannot launch local MCP processes need a self-hosted remote deployment. The public remote endpoint is not a no-key service for fresh scans. Provider usage can create external charges, and scan prompts are transmitted to the providers selected in the environment.

_Full upstream README: https://allmcps.com/mcp/digestseo-mcp-geo-ai-visibility-mcp-server/readme_

