npm @houtini/geo-analyzerstdioMITupdated 24d ago
[!WARNING] Deprecated and no longer maintained. GEO Analyzer's AI-search content analysis has been consolidated into SEO Audit Console (npm i @houtini/seo-audit-console) — which scores AI-Overview citation, passage relevance, agent readiness and content extractability alongside a full technical SEO audit, all in one MCP. Please migrate there.
Su propietario archivó este repositorio. Sigue funcionando, pero ya no recibe actualizaciones.
¿Qué puedes hacer con geo analyzer?
[!WARNING] Deprecated and no longer maintained. GEO Analyzer's AI-search content analysis has been consolidated into SEO Audit Console (
npm i @houtini/seo-audit-console) — which scores AI-Overview citation, passage relevance, agent readiness and content extractability alongside a full technical SEO audit, all in one MCP. Please migrate there.
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
Instalación
Añade geo analyzer a tu cliente. Elige el que uses.
claude mcp add geo-analyzer -- npx -y @houtini/geo-analyzercodex mcp add geo-analyzer -- npx -y @houtini/geo-analyzeramp mcp add geo-analyzer -- npx -y @houtini/geo-analyzer{
"mcpServers": {
"geo-analyzer": {
"command": "npx",
"args": [
"-y",
"@houtini/geo-analyzer"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"geo-analyzer": {
"command": "npx",
"args": [
"-y",
"@houtini/geo-analyzer"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"geo-analyzer","command":"npx","args":["-y","@houtini/geo-analyzer"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"geo-analyzer": {
"command": "npx",
"args": [
"-y",
"@houtini/geo-analyzer"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"geo-analyzer": {
"command": "npx",
"args": [
"-y",
"@houtini/geo-analyzer"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"geo-analyzer": {
"command": "npx",
"args": [
"-y",
"@houtini/geo-analyzer"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"geo-analyzer": {
"type": "local",
"command": "npx",
"args": [
"-y",
"@houtini/geo-analyzer"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"geo-analyzer": {
"command": {
"path": "npx",
"args": [
"-y",
"@houtini/geo-analyzer"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y @houtini/geo-analyzerRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
Puntuación
39 / 100
Incompleta
- Documentación25/25
- Mantenimiento14/25
- Confianza16/20
- Capacidad0/15
- Instalación12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 17 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Historial de versiones
| Versiones | Publicada |
|---|---|
| 3.0.5Última | 8 ago 2026 |
| 2.1.2 | 29 ene 2026 |