Skip to main content

Bofusions GEO MCP Server — AI Search Engine Optimization (GEO) analysis tools for MCP clients

Project description

Bofusions GEO MCP

AI Search Engine Optimization (GEO) Analysis Tools for MCP Clients

PyPI Python License: MIT GitHub

Optimize your website for AI-powered search engines — ChatGPT, Claude, Perplexity, Gemini, Google AI Overviews.

GEO (Generative Engine Optimization) focuses on being the source AI models quote — not just ranking on Google.

Built by Bofusions


Why GEO?

Traditional SEO GEO (This Tool)
Optimize for Google crawlers Optimize for AI model training data
Rank #1 on search results Be the cited source in AI answers
Keywords & backlinks Citability, brand authority, structured data
Google-focused ChatGPT, Claude, Perplexity, Gemini, AIO

The market is shifting:

  • AI-referred traffic grew +527% year-over-year
  • GEO services market projected $7.3B by 2031
  • AI traffic conversion rate 4.4x higher than organic

Installation

# Run directly (recommended)
uvx bofusions-geo-mcp

# Or install with pip
pip install bofusions-geo-mcp

CLI Usage

# Full GEO audit
bofusions-geo audit https://example.com

# AI citation scoring
bofusions-geo citability https://example.com/blog

# Brand mention scan
bofusions-geo brand-scan "Acme Corp" --domain acme.com

# llms.txt validate or generate
bofusions-geo llmstxt https://example.com --mode generate

# Technical SEO analysis
bofusions-geo technical https://example.com

# Schema markup analysis
bofusions-geo schema https://example.com

# Comprehensive report
bofusions-geo report https://example.com --brand "Acme Corp"

# AEO simulation — measure brand visibility in AI responses
bofusions-geo aeo-simulate https://example.com --brand-name "Acme Corp" --industry "SaaS" --location "Turkey"

MCP Client Configuration

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "Bofusions GEO": {
      "command": "uvx",
      "args": ["bofusions-geo-mcp"]
    }
  }
}

Cursor / VS Code / 5ire / Other MCP Clients

{
  "mcpServers": {
    "bofusions-geo": {
      "command": "uvx",
      "args": ["bofusions-geo-mcp"]
    }
  }
}

pip install (alternative)

{
  "mcpServers": {
    "Bofusions GEO": {
      "command": "python",
      "args": ["-m", "bofusions_geo_mcp.server"]
    }
  }
}

Tools (8)

Tool Input Description
geo_audit URL Full GEO audit with scoring (0-100) and prioritized action items
geo_citability URL Score every content passage for AI citation readiness
geo_brand_scan Brand name Scan brand presence across YouTube, Reddit, Wikipedia, LinkedIn, GitHub + 7 platforms
geo_llmstxt URL + mode Validate existing llms.txt or generate a new one
geo_technical URL Technical analysis — SSR detection, robots.txt AI directives, meta tags, security headers
geo_schema URL Detect and validate JSON-LD structured data for AI discoverability
geo_report URL + brand Comprehensive markdown report combining all analyses
geo_aeo_simulate URL + brand + industry + location NEW — Measure brand visibility in AI responses (ChatGPT, Perplexity)

AEO Simulator (New in v1.2.0)

Answer Engine Optimization — measure how visible your brand is in AI-generated responses.

2-Tier Approach

Tier Method API Key Required
Tier 1 Website content analysis No
Tier 2 Direct ChatGPT + Perplexity API Yes (optional)

AEO Score Formula

AEO Score = (Brand Recognition × 0.20) + (Market Score × 0.20) + (Presence Quality × 0.40) + (Sentiment × 0.10) + (Share of Voice × 0.10)

4 Query Types

Type Example
Brand "Botfusions nedir"
Discovery "best GEO companies Turkey"
Comparison "Botfusions vs Semrush"
Synthetic "GEO tool recommendation Turkey"

MCP Usage

Simulate AI queries for brand "Acme Corp" on https://acme.com — industry SaaS, location Turkey, competitors "CompetitorA,CompetitorB"

Environment Variables (Tier 2)

export OPENAI_API_KEY=sk-...        # Optional — enables real ChatGPT queries
export PERPLEXITY_API_KEY=pplx-...   # Optional — enables real Perplexity queries

Without API keys, the tool estimates scores from website content analysis (Tier 1).


Usage Examples

Once connected to your MCP client, just ask naturally:

Full GEO Audit

Run a GEO audit on https://example.com

AI Citability Scoring

Score https://example.com/blog/post for AI citation readiness

Brand Presence Scan

Scan brand "Acme Corp" across AI-cited platforms

llms.txt Generation

Generate an llms.txt file for https://example.com

AEO Simulation

Run an AEO simulation for "Botfusions" on https://botfusions.com — industry GEO, location Turkey, competitors "Semrush,Ahrefs"

Full Report

Generate a comprehensive GEO report for https://example.com with brand "Acme Corp"

GEO Score Breakdown

Every geo_audit and geo_report produces a GEO Score (0-100):

Component Weight What It Measures
AI Citability 25% Passage-level scoring — how likely AI will quote your content
Brand Authority 20% Presence on YouTube, Reddit, Wikipedia, LinkedIn (3x stronger than backlinks)
Content Quality 20% E-E-A-T signals, readability, statistical density
Technical 15% SSR rendering, robots.txt AI crawler access, meta tags
Structured Data 10% JSON-LD schema completeness (Organization, WebSite, etc.)
Platform Optimization 10% llms.txt existence, AI crawler friendliness

Grading: A (80+) / B (65+) / C (50+) / D (35+) / F (<35)


Citability Scoring Engine

Each content passage is scored on 5 dimensions:

Dimension Weight Optimal
Answer Block Quality 30% Definition patterns, early answers, quotable claims
Self-Containment 25% 134-167 words, low pronoun density, named entities
Structural Readability 20% 10-20 word sentences, list patterns, paragraph breaks
Statistical Density 15% Percentages, dollar amounts, named sources
Uniqueness Signals 10% Original research, case studies, specific tools

Key finding: Optimal AI-cited passages are 134-167 words, self-contained, and fact-rich.


AI Crawler Coverage

The technical analysis checks access for 14 AI crawlers:

GPTBot, OAI-SearchBot, ChatGPT-User, ClaudeBot, anthropic-ai, PerplexityBot, CCBot, Bytespider, cohere-ai, Google-Extended, GoogleOther, Applebot-Extended, FacebookBot, Amazonbot


Brand Scan Platforms

Platform Correlation Why It Matters
YouTube 0.737 (strongest) Video transcripts are major AI training source
Reddit High Authentic discussions heavily cited by AI
Wikipedia High Structured entity data, knowledge graph
LinkedIn Moderate Thought leadership, company authority
GitHub Moderate Developer brand, open-source authority
+ 7 more Varies Quora, Stack Overflow, G2, Trustpilot, Crunchbase, Product Hunt

Output Format

All tools return Markdown — optimized for LLM consumption and human readability:

# GEO Audit Report

> **Bofusions GEO MCP** | `https://example.com`

## Overall GEO Score: 72.5/100 (Grade B)

| Component | Weight | Score |
|-----------|--------|-------|
| Ai Citability | 25% | 68.2 |
| Brand Authority | 20% | 45.0 |
| Content Quality | 20% | 71.3 |
| Technical | 15% | 85.0 |
| Schema | 10% | 75.0 |
| Platform | 10% | 90.0 |

## Priority Action Items
1. Restructure content into 134-167 word self-contained passages
2. Add Organization + WebSite JSON-LD schema
...

Development

git clone https://github.com/botfusions/geo-seo-aeo.git
cd geo-seo-aeo

python -m venv .venv
# Windows:
.venv\Scripts\activate
# macOS/Linux:
source .venv/bin/activate

pip install -e .
python -m bofusions_geo_mcp.server

Run Tests

python -c "
import asyncio
from bofusions_geo_mcp.tools.technical import run_technical
print(asyncio.run(run_technical('https://example.com')))
"

Tech Stack

  • Framework: FastMCP — Model Context Protocol server
  • HTTP Client: httpx — async HTTP with SSL fallback
  • HTML Parsing: BeautifulSoup4 + lxml
  • Python: 3.11+ (3.12, 3.13 supported)

Requirements

  • Python >= 3.11
  • mcp[cli] >= 1.6.0
  • httpx >= 0.27.0
  • beautifulsoup4 >= 4.12.0
  • lxml >= 5.0.0
  • validators >= 0.22.0

License

MIT License — Copyright (c) 2026 Bofusions


Bofusions — Building the future of AI-powered search optimization.

Report Bug · Request Feature · PyPI

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bofusions_geo_mcp-1.2.1.tar.gz (29.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bofusions_geo_mcp-1.2.1-py3-none-any.whl (40.0 kB view details)

Uploaded Python 3

File details

Details for the file bofusions_geo_mcp-1.2.1.tar.gz.

File metadata

  • Download URL: bofusions_geo_mcp-1.2.1.tar.gz
  • Upload date:
  • Size: 29.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for bofusions_geo_mcp-1.2.1.tar.gz
Algorithm Hash digest
SHA256 fcfaa565870002e885e4be97d55aa0a011ddd17469cd20dbd6b1fbe67c4bddac
MD5 d3cfbd4eac4fe5c0e92ec83713e72a0a
BLAKE2b-256 7f563ffbd6880cd1e3384dfc9bad2659ebad1ed53df1ae22f926ba05ee03c6a9

See more details on using hashes here.

File details

Details for the file bofusions_geo_mcp-1.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for bofusions_geo_mcp-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3681b292eaa61eb2245bf82fc2a0c0a5231e0e0cab5e8bf2237a601195b7e67f
MD5 31e509f499d4e4b5168ff8ab349189c3
BLAKE2b-256 aa06e51e4129c88a34f8fc86e3cac1a8571ad0817474ba7a8d456e5400ff472b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page