Skip to main content
Glama
houtini-ai

GEO Analysis for AI SEO

by houtini-ai

GEO 分析器

npm version License: MIT

针对 AI 搜索可见性的内容分析。衡量对于被 ChatGPT、Claude、Perplexity 和 Google AI Overviews 引用真正重要的因素。

快速导航

功能介绍 | 安装 | 使用示例 | 输出结果 | 工具 | 故障排除 | 研究基础

功能介绍

GEO 分析器会检查内容中 AI 系统在选择引用来源时所使用的信号:

  • 声明密度 - 每 100 个单词中的可提取事实数量

  • 信息密度 - 字数与预测的 AI 覆盖率对比

  • 答案前置 - 关键信息出现的快慢

  • 语义三元组 - 结构化(主语、谓语、宾语)关系

  • 实体识别 - AI 可以引用的命名实体

  • 句子结构 - 适合 AI 解析的最佳长度

该分析在本地运行,使用 Claude Sonnet 4.5 进行语义提取。无外部服务,数据不会离开您的机器。

Related MCP server: agentaeo-mcp-server

安装

Claude Desktop

添加到您的 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 Desktop。

Claude Code (CLI)

Claude Code 使用不同的注册机制——它不读取 claude_desktop_config.json。请改用 claude mcp add

claude mcp add -e ANTHROPIC_API_KEY=sk-ant-... -s user geo-analyzer -- npx -y @houtini/geo-analyzer@latest

验证方式:

claude mcp get geo-analyzer

您应该会看到 Status: Connected

要求

使用示例

分析已发布的 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-1,500 字

  • 1K 字以下的页面:约 61% 的 AI 覆盖率

  • 3K 字以上的页面:约 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" 彻底重启 Claude Desktop。

"Content too short" 至少需要 500 个字符才能进行有意义的分析。

付费墙内容返回错误 分析器只能访问公开可用的页面。

性能

  • 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)

对 7,060 个查询和 2,275 个页面的实证分析

应用的关键发现:

  • 每个查询约 2,000 字的总基础预算

  • 排名第 1 的来源获得 531 字(预算的 28%)

  • 排名第 5 的来源获得 266 字(预算的 13%)

  • 平均提取块:15.5 个单词

  • <1K 字的页面:61% 的覆盖率

  • 3K+ 字的页面:13% 的覆盖率

dejan.ai/blog/how-big-are-googles-grounding-chunks dejan.ai/blog/googles-ranking-signals


MIT 许可证 - Houtini.ai

Available Tools

2 tools
analyze_textB

Analyze pasted text content for AI search optimization. Performs comprehensive content quality analysis including AI slop detection, writing quality, E-E-A-T signals, data points, originality, and actionability.

ParametersJSON Schema
NameRequiredDescriptionDefault
contentYesThe text content to analyze (markdown, plain text, or HTML)
queryNoOptional context string describing the content topic (e.g., "sim racing equipment", "SEO guide"). Used for relevance scoring only. Defaults to "general content analysis".
output_formatNoOutput verbosity: "detailed" (default) includes all suggestions and recommendations; "summary" provides condensed resultsdetailed

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden for behavioral disclosure. While it mentions the analysis dimensions and output format options, it lacks critical behavioral details: no information about rate limits, authentication requirements, processing time, error conditions, or what constitutes 'comprehensive' analysis. The description doesn't contradict annotations (none exist), but fails to provide sufficient behavioral context for a tool with no annotation coverage.

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

Conciseness4/5

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

The description is appropriately concise with two sentences that efficiently convey the tool's purpose and scope. The first sentence states the core function, and the second elaborates on analysis dimensions. No redundant or unnecessary information is included. However, it could be slightly more front-loaded by mentioning the key parameters or output options earlier.

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 3 parameters with 100% schema coverage but no annotations and no output schema, the description is moderately complete. It covers the tool's purpose and analysis dimensions adequately but lacks important contextual information about behavioral characteristics (rate limits, auth needs, processing behavior) and doesn't describe the output format or structure. For a text analysis tool with no output schema, more detail about return values would be helpful.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all three parameters thoroughly. The description adds minimal parameter semantics beyond the schema - it mentions 'pasted text content' which aligns with the 'content' parameter, and 'AI search optimization' context which relates to the 'query' parameter's purpose. However, it doesn't provide additional meaning or usage examples beyond what's already in the schema descriptions.

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

Purpose4/5

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

The description clearly states the tool's purpose: 'Analyze pasted text content for AI search optimization' with specific analysis dimensions listed (AI slop detection, writing quality, E-E-A-T signals, etc.). It distinguishes from the sibling tool 'analyze_url' by specifying 'pasted text content' rather than URL analysis. However, it doesn't explicitly contrast with the sibling tool's functionality.

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?

The description implies usage context through 'pasted text content' and 'AI search optimization,' suggesting when this tool is appropriate. It mentions the sibling tool 'analyze_url' exists but provides no explicit guidance on when to use this tool versus that alternative. No exclusion criteria or prerequisites are stated.

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

analyze_urlC

Analyze a published URL for AI search optimization. Performs comprehensive content quality analysis including AI slop detection, writing quality, E-E-A-T signals, and actionability.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe URL to analyze
queryNoOptional context string describing the content topic (e.g., "sim racing wheels", "content optimization"). Used for relevance scoring only. Defaults to "general content analysis".
output_formatNoOutput verbosity: "detailed" (default) includes all suggestions and recommendations; "summary" provides condensed resultsdetailed

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'comprehensive content quality analysis' but doesn't describe what the analysis returns, potential limitations (e.g., rate limits, authentication needs, or what 'AI slop detection' entails), or side effects. For a tool with no annotations and no output schema, this leaves significant gaps in understanding how the tool behaves.

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 highly concise and front-loaded: a single sentence that efficiently states the tool's purpose and key analysis components without unnecessary words. Every phrase ('AI search optimization', 'comprehensive content quality analysis', specific detection types) adds value, making it zero waste.

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

Completeness2/5

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

Given the tool's complexity (analyzing URLs for multiple quality signals) and lack of annotations and output schema, the description is incomplete. It doesn't explain what the analysis returns, potential errors, or behavioral traits like rate limits or permissions. The agent is left guessing about the output format and operational constraints, which is inadequate for a tool with no structured output information.

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

Parameters3/5

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

The schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds no additional parameter semantics beyond what's in the schema (e.g., it doesn't explain how 'query' affects 'relevance scoring' in more detail or what 'output_format' choices imply beyond the schema's enum). Baseline 3 is appropriate when the schema does the heavy lifting.

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

Purpose4/5

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

The description clearly states the tool's purpose: 'Analyze a published URL for AI search optimization' with specific components like 'content quality analysis', 'AI slop detection', 'writing quality', 'E-E-A-T signals', and 'actionability'. It distinguishes from the sibling 'analyze_text' by specifying URL analysis rather than text analysis. However, it doesn't explicitly contrast with the sibling tool in the description text itself.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. While it implies usage for URL analysis (versus text analysis for the sibling), there's no explicit mention of the sibling tool, prerequisites, or scenarios where this tool is preferred over others. The agent must infer usage context from the purpose alone.

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. 2 tool updatesv3.0.3
    • First observedanalyze_text
    • First observedanalyze_url

TDQS

B3.1/5.0

Scored across 2 tools

Disambiguation4/5

The two tools have clearly distinct purposes: analyze_text for pasted text content and analyze_url for published URLs. While their analysis components overlap significantly (both include AI slop detection, writing quality, E-E-A-T signals, and actionability), the input type distinction prevents confusion. The only minor ambiguity is that analyze_text mentions additional features like data points and originality not listed for analyze_url.

Naming Consistency5/5

Both tools follow a perfect verb_noun pattern with consistent snake_case naming: analyze_text and analyze_url. The naming is completely predictable and readable, with no deviations in style or convention across the tool set.

Tool Count2/5

With only 2 tools for a server named 'GEO Analysis for AI SEO' that suggests geographical and SEO analysis capabilities, the tool count feels too thin. The server's name implies broader functionality (potentially geographical data analysis, keyword research, competitor analysis, etc.), but the tools only cover content analysis of text and URLs, leaving significant gaps in the apparent domain scope.

Completeness2/5

The tool set is severely incomplete for the server's stated purpose of 'GEO Analysis for AI SEO'. While the two tools provide content quality analysis, there are obvious gaps: no geographical analysis tools (e.g., location-based SEO, regional keyword analysis), no SEO-specific tools (e.g., keyword research, backlink analysis, ranking tracking), and no AI SEO optimization beyond content assessment. This will likely cause agent failures when trying to perform comprehensive GEO or SEO tasks.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Advanced content gap analysis using Query Decomposition and Keyword Fan-Out (Google's patented methodology). Tells you exactly what user queries your content covers - and what it misses. Built on academic research because I needed to understand how AI search engines actually evaluate content.
    1
    221 npm
    12
    Apache 2.0
  • A
    license
    A
    quality
    D
    maintenance
    Audit your brand's visibility across ChatGPT, Perplexity, Claude, and Google AI - get citation rates, AEO health scores, content gap analysis, and a 9-page content suite to rank in AI-generated answers.
    5
    98 npm
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Unifies traditional SEO and Generative Engine Optimization (GEO) for Google, Bing, Yandex, and major LLMs, providing tools for search performance analysis, citation tracking, on-page audits, and internal link graph analysis.
    36
    3
    MIT
  • -
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to perform comprehensive SEO and GEO measurements, including site audits, keyword research, ranking tracking, and brand visibility analysis across search engines and generative AI platforms.
    -