
Geo Analyzer
- 21 repo stars
- Updated April 16, 2026
- houtini-ai/geo-analyzer
Geo Analyzer is a MCP server that delivers AI search optimization analysis with actionable findings and gap analysis.
About
Geo Analyzer is Houtini’s MCP server for generative engine optimization: it reviews your positioning and site narrative for how well AI search systems can cite, summarize, and recommend you. developers shipping landing pages, docs, or changelog sites install @houtini/geo-analyzer, supply ANTHROPIC_API_KEY for Claude-backed analysis, and run audits from Claude Code or Cursor instead of guessing which paragraphs lack clear entities or answer-ready structure. The tool emphasizes actionable findings and gap analysis so you can patch FAQ blocks, definitions, and evidence before distribution pushes. It sits squarely in launch GEO work alongside classic SEO, but it is an analysis MCP server rather than a content writer or rank tracker. Expect to iterate after each substantive copy change as models and retrieval behavior shift.
- AI search optimization analysis with actionable findings
- Includes gap analysis against GEO best practices
- Uses Anthropic Claude via required ANTHROPIC_API_KEY
- npm @houtini/geo-analyzer version 2.1.2 with stdio MCP
- Focused on answer-engine visibility, not generic rank tracking alone
Geo Analyzer by the numbers
- Data as of Jul 24, 2026 (Skillselion catalog sync)
claude mcp add --env ANTHROPIC_API_KEY=YOUR_ANTHROPIC_API_KEY geo-analyzer -- npx -y @houtini/geo-analyzerAdd your badge
Show developers this MCP server is listed on Skillselion. Paste this into your README.
| repo stars | ★ 21 |
|---|---|
| Package | @houtini/geo-analyzer |
| Transport | STDIO |
| Auth | Required |
| Last updated | April 16, 2026 |
| Repository | houtini-ai/geo-analyzer ↗ |
What it does
Audit how well your site and copy are optimized for AI search engines with actionable GEO gap findings.
Who is it for?
Best when you're launching content-heavy sites and care about AI search and answer-engine citations.
Skip if: Skip if you're still in pure prototype mode with no public URLs or and only need raw financial or multi-URL fanout research.
What you get
You receive GEO-oriented gap findings you can fix in copy, schema, and citations before scaling distribution.
- Actionable GEO findings list
- Gap analysis versus AI-search best practices
- Prioritized copy or structure fixes for answer engines
By the numbers
- Server version 2.1.2
- npm package @houtini/geo-analyzer
- Required secret env ANTHROPIC_API_KEY
README.md
GEO Analyzer
Content analysis for AI search visibility. Measures what actually matters for getting cited by ChatGPT, Claude, Perplexity, and Google AI Overviews.
Quick Navigation
What it does | Installation | Usage examples | Output | Tools | Troubleshooting | Research foundation
What It Does
GEO Analyzer examines content for the signals AI systems use when selecting sources to cite:
- Claim Density - Extractable facts per 100 words
- Information Density - Word count vs predicted AI coverage
- Answer Frontloading - How quickly key information appears
- Semantic Triples - Structured (subject, predicate, object) relationships
- Entity Recognition - Named entities AI can reference
- Sentence Structure - Optimal length for AI parsing
The analysis runs locally using Claude Sonnet 4.5 for semantic extraction. No external services, no data leaving your machine.
Installation
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"geo-analyzer": {
"command": "npx",
"args": ["-y", "@houtini/geo-analyzer@latest"],
"env": {
"ANTHROPIC_API_KEY": "sk-ant-..."
}
}
}
}
Config locations:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
Restart Claude Desktop after saving.
Claude Code (CLI)
Claude Code uses a different registration mechanism -- it doesn't read claude_desktop_config.json. Use claude mcp add instead:
claude mcp add -e ANTHROPIC_API_KEY=sk-ant-... -s user geo-analyzer -- npx -y @houtini/geo-analyzer@latest
Verify with:
claude mcp get geo-analyzer
You should see Status: Connected.
Requirements
- Node.js 20+
- Anthropic API key (console.anthropic.com)
Usage Examples
Analyse a Published URL
Analyse https://example.com/article for "topic keywords"
The topic context helps score relevance but isn't required:
Analyse https://example.com/article
Analyse Text Directly
Paste content for analysis (minimum 500 characters):
Analyse this content for "sim racing wheels":
[Your content here]
Summary Mode
Get condensed output without detailed recommendations:
Analyse https://example.com/article with output_format=summary
Output
Scores (0-10)
| Score | Measures |
|---|---|
| Overall | Weighted average of all factors |
| Extractability | How easily AI can extract facts |
| Readability | Structure quality for AI parsing |
| Citability | How quotable and attributable |
Key Metrics
Information Density:
- Word count with coverage prediction
- Optimal range: 800-1,500 words
- Pages under 1K words: ~61% AI coverage
- Pages over 3K words: ~13% AI coverage
Answer Frontloading:
- Claims and entities in first 100/300 words
- First claim position
- Score indicating answer immediacy
Claim Density:
- Target: 4+ claims per 100 words
- Extractable facts, statistics, measurements
Sentence Length:
- Target: 15-20 words average
- Matches Google's ~15.5 word chunk extraction
Recommendations
Prioritised suggestions with:
- Specific locations in content
- Before/after examples
- Rationale based on research
Tools
analyze_url
Fetches and analyses published web pages.
| Parameter | Required | Description |
|---|---|---|
url |
Yes | URL to analyse |
query |
No | Topic context for relevance scoring |
output_format |
No | detailed (default) or summary |
analyze_text
Analyses pasted content directly.
| Parameter | Required | Description |
|---|---|---|
content |
Yes | Text to analyse (min 500 chars) |
query |
No | Topic context for relevance scoring |
output_format |
No | detailed (default) or summary |
Troubleshooting
"ANTHROPIC_API_KEY is required"
Add your API key to the env section in config.
"Cannot find module" after config change Restart Claude Desktop completely.
"Content too short" Minimum 500 characters required for meaningful analysis.
Paywalled content returns errors The analyser can only access publicly available pages.
Performance
- URL analysis: ~8-10 seconds
- Text analysis: ~5-7 seconds
- Cost: ~$0.14 per analysis (Sonnet 4.5)
Migration from v1.x
v2.0 removed external dependencies. Update your config:
Old (v1.x):
{
"env": {
"GEO_WORKER_URL": "https://...",
"JINA_API_KEY": "jina_..."
}
}
New (v2.x):
{
"env": {
"ANTHROPIC_API_KEY": "sk-ant-..."
}
}
Development
git clone https://github.com/houtini-ai/geo-analyzer.git
cd geo-analyzer
npm install
npm run build
Research Foundation
The analysis methodology draws from peer-reviewed research and empirical studies:
MIT GEO Paper (2024)
Aggarwal et al., "GEO: Generative Engine Optimization" - ACM SIGKDD
Key findings applied:
- Claim density target of 4+ per 100 words
- Optimal sentence length of 15-20 words
- 40% improvement in AI citation rates with extractability focus
Dejan AI Grounding Research (2025)
Empirical analysis of 7,060 queries and 2,275 pages
Key findings applied:
- ~2,000 word total grounding budget per query
- Rank #1 source gets 531 words (28% of budget)
- Rank #5 source gets 266 words (13% of budget)
- Average extraction chunk: 15.5 words
- Pages <1K words: 61% coverage
- Pages 3K+ words: 13% coverage
dejan.ai/blog/how-big-are-googles-grounding-chunks
dejan.ai/blog/googles-ranking-signals
MIT License - Houtini.ai
Recommended MCP Servers
How it compares
GEO audit MCP server, not a keyword rank tracker or generic brainstorming skill.
FAQ
Who is Geo Analyzer for?
Developers preparing public launches who want Claude-powered GEO audits inside an MCP workflow.
When should I use Geo Analyzer?
Use it after you have draft or live pages and before or during launch distribution when AI search visibility matters.
How do I add Geo Analyzer to my agent?
Set ANTHROPIC_API_KEY, install @houtini/geo-analyzer from npm, add the stdio MCP server to your client config, and run its analysis tools against your URLs or copy.