Skip to main content
Glama
Spacemandomains

TOP GUN GEO-Lens

TOP GUN GEO-Lens — MCP Brand Visibility Auditor

Publish to MCP Registry

For AI Agents: This is an MCP server. Connect it, call its tools, and instantly know whether any brand is visible to LLMs and AI search engines — with actionable recommendations to improve it.


What This Does

TOP GUN GEO-Lens measures how visible a brand is across the sources that power AI answers: Brave AI Search, Exa neural search, and LLM-indexed content. It returns a scored report with citations, index status, and concrete GEO (Generative Engine Optimization) recommendations.

Use it when an agent needs to answer questions like:

  • "Is [brand] showing up in AI-powered search results?"

  • "Why isn't [brand] being recommended by AI assistants?"

  • "What should [brand] do to rank higher in LLM outputs?"


Related MCP server: Sanbi ADK Agent MCP Server

Tools

geo_quick_check — $0.05 USDC

Fast snapshot of brand visibility in AI-indexed sources.

Output

Detail

Visibility score

0–100

Score label

Strong / Moderate / Weak / Not Found

Top 3 citations

URL, title, snippet, source

2 quick tips

Actionable GEO improvements

{
  "tool": "geo_quick_check",
  "query": "Stripe",
  "paymentToken": "<stripe-session-id>"
}

audit_brand — $1.50 USDC

Full brand visibility audit using dual search (Brave + Exa, 10 results each).

Output

Detail

Visibility score

0–100

Score label

Strong / Moderate / Weak / Not Found

Top 5 citations

URL, title, snippet, source, position

LLM index status

Brave indexed, Exa indexed, estimated reach

6 GEO recommendations

Prioritized, actionable improvements

{
  "tool": "audit_brand",
  "query": "Anthropic",
  "paymentToken": "<stripe-session-id>"
}

get_payment_info — Free

Returns payment URLs and USDC wallet address for both tiers. Call this first if you don't have a payment token.

{
  "tool": "get_payment_info"
}

Agent Workflow

1. Call get_payment_info          → get payment URLs
2. Direct user to payment link    → user pays $0.05 or $1.50 USDC
3. User provides Stripe session ID
4. Call geo_quick_check or audit_brand with paymentToken
5. Parse structured results       → score, citations, recommendations

If paymentToken is omitted, the tool returns a payment link instead of results — no error thrown.


Connecting to Claude / MCP Clients

Add to your claude_desktop_config.json (or equivalent MCP config):

{
  "mcpServers": {
    "top-gun-geo-lens": {
      "command": "node",
      "args": ["/path/to/top_gun_mcp_server/dist/index.js"],
      "env": {
        "STRIPE_SECRET_KEY": "sk_live_...",
        "STRIPE_PAYMENT_URL": "https://buy.stripe.com/...",
        "STRIPE_QUICK_CHECK_PAYMENT_URL": "https://buy.stripe.com/...",
        "BRAVE_SEARCH_API_KEY": "BSA...",
        "EXA_API_KEY": "...",
        "USDC_WALLET_ADDRESS": "0x..."
      }
    }
  }
}

Setup

git clone https://github.com/spacemandomains/top_gun_mcp_server
cd top_gun_mcp_server
npm install
cp .env.example .env        # fill in your keys
npm run build
npm start

Required env vars:

Variable

Required

Description

STRIPE_SECRET_KEY

Yes

Stripe secret key for payment verification

STRIPE_PAYMENT_URL

Yes

Payment link for full audit ($1.50 USDC)

STRIPE_QUICK_CHECK_PAYMENT_URL

Yes

Payment link for quick check ($0.05 USDC)

BRAVE_SEARCH_API_KEY

No*

Brave Search API key

EXA_API_KEY

No*

Exa neural search API key

USDC_WALLET_ADDRESS

No

USDC wallet address shown to payers

*At least one search API key is required for results.


Pricing Summary

Tool

Cost

Best For

geo_quick_check

$0.05 USDC

Quick sanity check, high-volume workflows

audit_brand

$1.50 USDC

Deep audit, client reports, GEO strategy


Tech Stack

  • Runtime: Node.js ≥ 18, TypeScript

  • Protocol: Model Context Protocol (@modelcontextprotocol/sdk)

  • Search: Brave Search API + Exa neural search

  • Payments: Stripe + USDC on-chain

  • Deploy: Vercel-ready


For AI Agents — Key Facts

  • Transport: stdio

  • No streaming — all responses are single text blocks

  • Scores range 0–100; >= 70 = Strong, 40–69 = Moderate, 1–39 = Weak, 0 = Not Found

  • Payment tokens are Stripe Checkout Session IDs (format: cs_live_...)

  • Calling any paid tool without a token returns a structured payment prompt, not an error

  • audit_brand is strictly more detailed than geo_quick_check; use quick_check for speed/cost, audit for depth

Available Tools

3 tools
audit_brandAInspect

Full brand visibility audit across LLM-indexed sources (Brave + Exa, 10 results). Returns a visibility score (0–100), score label, top 5 citation URLs, LLM index status, and 6 actionable GEO recommendations. Costs $1.50 USDC. For a quick snapshot at $0.05 use geo_quick_check.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesBrand name, company, or product to audit (e.g. 'Anthropic', 'Linear', 'Vercel')
paymentTokenNoStripe checkout session ID from a completed $1.50 USDC payment. If omitted, the tool returns a payment link instead of audit results.

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It discloses the cost ($1.50 USDC), the return values, and the behavior when paymentToken is omitted (returns payment link). This is comprehensive for a read-only audit tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with no wasted words. First sentence covers purpose and output, second adds cost and alternative. Information density is high and well-organized.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description lists all return components (visibility score, label, citations, index status, GEO recommendations). It also covers payment flow and alternative tool. Completeness is high.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (baseline 3). The description adds value beyond schema by explaining the query parameter with examples and clarifying the paymentToken role. This justifies a higher score.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool performs a 'Full brand visibility audit across LLM-indexed sources (Brave + Exa, 10 results).' It differentiates from sibling tool 'geo_quick_check' by specifying the scope and depth.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly suggests using 'geo_quick_check' for a quick snapshot at lower cost, providing clear context for when to choose this tool. Could further state when not to use it (e.g., for non-LLM sources) but is adequate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

geo_quick_checkAInspect

Quick brand visibility snapshot across LLM-indexed sources. Returns a score (0–100), top 3 citation URLs, and 2 quick improvement tips. Single-source search (5 results). Costs $0.05 USDC. For full citations, LLM index status, and 6 GEO recommendations use audit_brand ($1.50).

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesBrand name, company, or product to check (e.g. 'Stripe', 'Notion', 'Acme')
paymentTokenNoStripe checkout session ID from a completed $0.05 USDC payment. If omitted, the tool returns a payment link.

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses key behaviors: it is a single-source search (5 results), costs $0.05 USDC, and returns a payment link if no token is provided. However, it does not mention what happens on error (e.g., invalid brand or token) or any rate limits, but the transparency is adequate for a simple read-oriented tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise—two sentences that front-load the core purpose and output, then directly contrast with the sibling tool. Every sentence adds essential information without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple and lacks an output schema, but the description lists the expected return elements (score, URLs, tips). It is complete enough for an agent to understand what the tool does and what it yields. Minor gaps like error handling or result format details are acceptable given the tool's simplicity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% (both parameters have descriptions). The description adds value beyond schema by explaining the paymentToken fallback behavior ('If omitted, the tool returns a payment link') and implicitly connecting the query to a brand name, but the schema already handles the basic semantics well.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: a quick brand visibility snapshot across LLM-indexed sources, returning a score, top 3 citations, and 2 tips. It also distinguishes from the sibling 'audit_brand' by emphasizing it's a single-source search with limited results and a lower cost, making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly tells the agent when to use this tool ('quick snapshot') and when to use the sibling 'audit_brand' for full citations and recommendations. It also notes the payment requirement and provides the fallback behavior (returns payment link if token omitted), offering clear guidance on invocation context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_payment_infoAInspect

Get payment URLs and USDC wallet address for both audit tiers.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full burden. It implies a read-only retrieval operation with no side effects, but does not mention authorization, rate limits, or any behavioral nuances. For a simple getter with zero parameters, the disclosure is adequate but minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with 11 words, front-loading the core action and resource. Every word earns its place; no redundancy or fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and no annotations, the description could be more explicit about the structure of the returned data (e.g., format of URLs, whether both tiers are returned in a single response). However, for a zero-parameter tool of low complexity, the current description provides a functional minimum.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the description does not need to add parameter info. The schema coverage is vacuously 100%. Baseline for 0 params is 4, and the description correctly focuses on the tool's output, adding no confusion.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Get' and clearly identifies the resources: 'payment URLs and USDC wallet address'. It also specifies scope ('for both audit tiers'), which distinguishes it from sibling tools that deal with brand audits and geographic checks. The purpose is unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives. The description implies it is for retrieving payment info, but does not state when not to use it or provide comparative context. The simplicity of the tool (no parameters) makes this gap minor.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updatesv1.0.0
    • First observedaudit_brand
    • First observedgeo_quick_check
    • First observedget_payment_info

TDQS

A3.6/5.0

Scored across 3 tools

Disambiguation4/5

Get_payment_info is clearly separate from the two audit tools. Geo_quick_check and audit_brand serve the same core purpose but are well-differentiated by cost and depth, reducing ambiguity.

Naming Consistency2/5

Naming is inconsistent: 'get_payment_info' uses verb_noun, 'geo_quick_check' uses a compound noun, and 'audit_brand' uses verb_noun. No clear pattern across tools.

Tool Count3/5

With only 3 tools, the server feels minimal for a brand visibility service. While each tool has a clear purpose, the surface is thin for typical CRUD or lifecycle coverage.

Completeness2/5

The core audit functionality is covered, but there are obvious gaps: no tool to retrieve audit history, manage payments, or update user profile. The service likely requires repeated interactions, yet no persistence tools exist.

Maintenance

ActivityInactive
ResponsivenessUnresponsive

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Enables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.
    16
    15
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to run brand-visibility audits by querying multiple AI engines, generating competitive leaderboards, and identifying growth opportunities. Integrates with any MCP-capable client to measure and act on brand discoverability in AI recommendations.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to scan brand visibility across ChatGPT, Claude, Gemini & Perplexity, analyze website GEO readiness, compare competitors, and get actionable recommendations.
    MIT