README
🚀 GEO Analyzer
GEO Analyzer可对内容进行分析,以提升其在AI搜索中的可见性。它能衡量对被ChatGPT、Claude、Perplexity和Google AI Overviews引用真正重要的因素。
🚀 快速开始
GEO Analyzer会检查内容是否包含AI系统在选择引用来源时所依据的信号。
✨ 主要特性
- 声明密度:每100个单词中可提取的事实数量。
- 信息密度:单词数量与预测的AI覆盖范围之比。
- 答案前置:关键信息出现的速度。
- 语义三元组:结构化的(主语、谓语、宾语)关系。
- 实体识别:AI可以引用的命名实体。
- 句子结构:适合AI解析的最佳长度。
分析过程在本地使用Claude Sonnet 4.5进行语义提取,无需外部服务,数据不会离开你的设备。
📦 安装指南
Claude桌面版
将以下内容添加到claude_desktop_config.json文件中:
{
"mcpServers": {
"geo-analyzer": {
"command": "npx",
"args": ["-y", "@houtini/geo-analyzer@latest"],
"env": {
"ANTHROPIC_API_KEY": "sk-ant-..."
}
}
}
}
配置文件位置:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
保存后重启Claude桌面版。
要求
- Node.js 20+
- Anthropic API密钥(console.anthropic.com)
💻 使用示例
分析已发布的URL
Analyse https://example.com/article for "topic keywords"
主题上下文有助于评估相关性,但不是必需的:
Analyse https://example.com/article
直接分析文本
粘贴要分析的内容(最少500个字符):
Analyse this content for "sim racing wheels":
[Your content here]
摘要模式
获取精简输出,不包含详细建议:
Analyse https://example.com/article with output_format=summary
📚 详细文档
输出
分数(0 - 10)
| 分数 | 衡量指标 | |-------|----------| | 总体 | 所有因素的加权平均值 | | 可提取性 | AI提取事实的难易程度 | | 可读性 | 适合AI解析的结构质量 | | 可引用性 | 可引用和可归因的程度 |
关键指标
- 信息密度:
- 带有覆盖范围预测的单词数量。
- 最佳范围:800 - 1500个单词。
- 少于1000个单词的页面:约61%的AI覆盖范围。
- 超过3000个单词的页面:约13%的AI覆盖范围。
- 答案前置:
- 前100/300个单词中的声明和实体。
- 第一个声明的位置。
- 表示答案即时性的分数。
- 声明密度:
- 目标:每100个单词中有4个以上的声明。
- 可提取的事实、统计数据、测量值。
- 句子长度:
- 目标:平均15 - 20个单词。
- 与Google约15.5个单词的提取块相匹配。
建议
按优先级排序的建议,包括:
- 内容中的具体位置。
- 前后示例。
- 基于研究的理由。
工具
analyze_url
获取并分析已发布的网页。
| 参数 | 是否必需 | 描述 |
|-----------|----------|-------------|
| url | 是 | 要分析的URL |
| query | 否 | 用于相关性评分的主题上下文 |
| output_format | 否 | detailed(默认)或 summary |
analyze_text
直接分析粘贴的内容。
| 参数 | 是否必需 | 描述 |
|-----------|----------|-------------|
| content | 是 | 要分析的文本(最少500个字符) |
| query | 否 | 用于相关性评分的主题上下文 |
| output_format | 否 | detailed(默认)或 summary |
故障排除
- "ANTHROPIC_API_KEY is required":将API密钥添加到配置文件的
env部分。 - "Cannot find module" after config change:完全重启Claude桌面版。
- "Content too short":进行有意义的分析最少需要500个字符。
- Paywalled content returns errors:分析器只能访问公开可用的页面。
性能
- URL分析:约8 - 10秒。
- 文本分析:约5 - 7秒。
- 成本:每次分析约0.14美元(Sonnet 4.5)。
从v1.x迁移
v2.0版本移除了外部依赖项。更新你的配置: 旧版(v1.x):
{
"env": {
"GEO_WORKER_URL": "https://...",
"JINA_API_KEY": "jina_..."
}
}
新版(v2.x):
{
"env": {
"ANTHROPIC_API_KEY": "sk-ant-..."
}
}
开发
git clone https://github.com/houtini-ai/geo-analyzer.git
cd geo-analyzer
npm install
npm run build
研究基础
分析方法基于同行评审的研究和实证研究:
MIT GEO论文(2024)
Aggarwal等人的 "GEO: Generative Engine Optimization" - ACM SIGKDD 应用的关键发现:
- 每100个单词的声明密度目标为4个以上。
- 最佳句子长度为15 - 20个单词。
- 专注于可提取性可使AI引用率提高40%。 arxiv.org/abs/2311.09735
Dejan AI基础研究(2025)
对7060个查询和2275个页面的实证分析 应用的关键发现:
- 每个查询的总基础预算约为2000个单词。
- 排名第1的来源获得531个单词(占预算的28%)。
- 排名第5的来源获得266个单词(占预算的13%)。
- 平均提取块:15.5个单词。
- 少于1000个单词的页面:61%的覆盖范围。
- 超过3000个单词的页面:13%的覆盖范围。
dejan.ai/blog/how-big-are-googles-grounding-chunks
dejan.ai/blog/googles-ranking-signals
📄 许可证
本项目采用MIT许可证 - Houtini.ai
Scan to join WeChat group