mcpField
G
geoseo-mcp

geoseo-mcp

本地服务
github.com/Rachit8484商业与营销36 天前更新

关于 geoseo-mcp

geoseo-mcp 是面向网站所有者和 SEO 团队的开源 MCP 服务,用于 SEO 审核和生成式搜索可见度分析。它整合搜索平台与索引数据、页面和链接分析,以及多个 LLM 服务的引用检查,并用本地 SQLite 保存趋势快照。

主要功能

  1. 01审核页面、网站和 Schema
  2. 02检查搜索引擎与索引数据
  3. 03跟踪多个 LLM 服务的引用
  4. 04分析内链并提供链接建议
  5. 05生成和验证 llms.txt
  6. 06保存可见度快照与趋势

适用场景

  1. 01查找网站页面的 SEO 问题
  2. 02比较品牌在 LLM 中的引用率
  3. 03定位孤立页面和失效链接
  4. 04跟踪搜索与 AI 可见度变化

MCP 相关

它向 MCP 客户端提供 SEO、索引、LLM 引用、AI Overviews、链接图谱、llms.txt 和趋势工具,并支持 stdio 与 streamable HTTP 传输。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"rachit8484-geoseo": {
"command": "uvx",
"args": [
"geoseo-mcp"
],
"env": {
"GEOSEO_OPENAI_API_KEY": "<GEOSEO_OPENAI_API_KEY>",
"GEOSEO_ANTHROPIC_API_KEY": "<GEOSEO_ANTHROPIC_API_KEY>",
"GEOSEO_GEMINI_API_KEY": "<GEOSEO_GEMINI_API_KEY>",
"GEOSEO_PERPLEXITY_API_KEY": "<GEOSEO_PERPLEXITY_API_KEY>",
"GEOSEO_XAI_API_KEY": "<GEOSEO_XAI_API_KEY>",
"GEOSEO_BRAVE_API_KEY": "<GEOSEO_BRAVE_API_KEY>",
"GEOSEO_SERPAPI_API_KEY": "<GEOSEO_SERPAPI_API_KEY>",
"GEOSEO_BING_WEBMASTER_API_KEY": "<GEOSEO_BING_WEBMASTER_API_KEY>",
"GEOSEO_YANDEX_OAUTH_TOKEN": "<GEOSEO_YANDEX_OAUTH_TOKEN>",
"GEOSEO_INDEXNOW_KEY": "<GEOSEO_INDEXNOW_KEY>",
"GEOSEO_GOOGLE_CLIENT_SECRET": "<GEOSEO_GOOGLE_CLIENT_SECRET>",
"GEOSEO_TOOLSETS": "<GEOSEO_TOOLSETS>"
}
}
}
}
启动命令uvx geoseo-mcp
需要配置的环境变量
GEOSEO_OPENAI_API_KEY密钥OpenAI API key for ChatGPT citation checks
GEOSEO_ANTHROPIC_API_KEY密钥Anthropic API key for Claude citation checks
GEOSEO_GEMINI_API_KEY密钥Gemini API key for Google Search grounded checks
GEOSEO_PERPLEXITY_API_KEY密钥Perplexity API key
GEOSEO_XAI_API_KEY密钥xAI API key for Grok citation checks
GEOSEO_BRAVE_API_KEY密钥Brave Search API key (Answers plan) for Brave citation checks
GEOSEO_SERPAPI_API_KEY密钥SerpAPI key for Google AI Overviews tracking
GEOSEO_BING_WEBMASTER_API_KEY密钥Bing Webmaster Tools API key
GEOSEO_YANDEX_OAUTH_TOKEN密钥Yandex Webmaster OAuth token
GEOSEO_INDEXNOW_KEY密钥IndexNow key hosted at https://yourdomain.com/<key>.txt
GEOSEO_GOOGLE_CLIENT_SECRET密钥Path to a Google OAuth client_secret.json for Search Console
GEOSEO_TOOLSETSComma-separated toolsets to expose (default: all)

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypigeoseo-mcp0.4.0

工具

47

收录的工具列表 · 更新于 5 天前

此工具无需参数。

详细介绍

geoseo-mcp

一款开源 MCP 服务,支持传统 SEO 和生成式引擎优化(GEO):Google Search Console、Bing、IndexNow、Google AI Overviews,以及对 ChatGPT、Claude、Gemini、Perplexity、Grok 和 Brave 的引用追踪,尽在一个服务中。

PyPI CI License: MIT Python 3.11+ MCP

30 秒即可试用(无需 API 密钥)

# Audit any page: title, meta, headings, schema, freshness, GEO quotability, 0-100 score
uvx geoseo-mcp audit https://example.com

# Check a site's llms.txt against the spec
uvx geoseo-mcp llms-txt https://llmstxt.org

# Same audit after running JavaScript (for SPAs); needs the [render] extra
uvx --from 'geoseo-mcp[render]' geoseo-mcp audit https://your-spa.com --render

示例输出:

$ uvx geoseo-mcp audit https://example.com
https://example.com
  score: 15/100
  title: 'Example Domain'
  words: 27

  8 issue(s):
   ✗ meta_description: Meta description should be 70-160 chars  [length=0]
   ✗ h1: Exactly one H1 expected  [found=0]
   ✗ word_count: Pages under 300 words rarely rank or get cited  [words=27]
   ✗ schema: No JSON-LD schema found; LLMs and Google use this heavily
   ✗ canonical: Missing canonical URL
   ✗ open_graph: Missing core Open Graph tags (og:title, og:description)
   ✗ freshness: No published-date signal found; LLMs deprioritize stale content
   ✗ quotability: Few short, fact-dense sentences; LLMs prefer quotable lines  [quotable_sentences=0]

  3 check(s) passed. Use --json for the full report.

其他无需密钥的命令:audit-site ./content、generate-llms-txt ./content https://yourdomain.com、status。运行 uvx geoseo-mcp --help 查看所有命令。

在 MCP Inspector 中试用全部 47 个工具:

npx @modelcontextprotocol/inspector uvx geoseo-mcp

不带任何参数运行 geoseo-mcp,即可通过 stdio 启动 MCP 服务,这是 MCP 客户端所需的方式。

添加到 MCP 客户端

Cursor

Install MCP Server

也可以手动将其添加到 ~/.cursor/mcp.json(参见 examples/cursor-mcp.json)。

Claude Code
claude mcp add geoseo -- uvx geoseo-mcp

# with keys
claude mcp add geoseo \
  -e GEOSEO_OPENAI_API_KEY=sk-... \
  -e GEOSEO_PERPLEXITY_API_KEY=pplx-... \
  -- uvx geoseo-mcp
Claude Desktop

添加到 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS)或 %APPDATA%\Claude\claude_desktop_config.json(Windows):

{
  "mcpServers": {
    "geoseo": {
      "command": "uvx",
      "args": ["geoseo-mcp"],
      "env": {
        "GEOSEO_OPENAI_API_KEY": "sk-...",
        "GEOSEO_ANTHROPIC_API_KEY": "sk-ant-...",
        "GEOSEO_GEMINI_API_KEY": "AIza...",
        "GEOSEO_XAI_API_KEY": "xai-...",
        "GEOSEO_BRAVE_API_KEY": "...",
        "GEOSEO_PERPLEXITY_API_KEY": "pplx-...",
        "GEOSEO_SERPAPI_API_KEY": "...",
        "GEOSEO_GOOGLE_CLIENT_SECRET": "/absolute/path/to/client_secret.json",
        "GEOSEO_BING_WEBMASTER_API_KEY": "...",
        "GEOSEO_YANDEX_OAUTH_TOKEN": "y0_...",
        "GEOSEO_INDEXNOW_KEY": "..."
      }
    }
  }
}

每个键都是可选的;删除你没有的键即可。其他客户端(Continue、Cline、Windsurf、VS Code)也使用相同的 command / args / env 配置块。参见 examples/。

然后直接提问:

“对于 ‘best CRM for startups’,ChatGPT、Claude、Gemini、Perplexity 和 Grok 中哪些会引用 acme.com?每个平台运行 3 次采样。” “审查我的 ./content 文件夹,并列出表现最差的 5 个页面。” “构建内部链接图,并找出孤立页面。”

功能范围

范围工具
Google SearchGSC 性能、URL 检查、站点地图
Bing Webmaster站点统计、查询/页面统计、URL 信息、URL 提交、抓取问题
Yandex Webmaster站点质量指数、热门查询、重要页面状态、重新抓取队列、诊断 + 失效的内部链接
Bing / Yandex / Naver / SeznamIndexNow 提交
Google AI Overviews通过 SerpAPI 使用 aio_check + aio_citation_check
大模型引用ChatGPT(网页搜索)、Claude(网页搜索)、Gemini(Google Search grounding)、Perplexity(Agent API)、Grok(xAI 网页搜索)、Brave(Answers API),以及可向所有这些平台分发请求的 multi_llm_* 工具
页面内标题 / meta / 标题层级 / schema / 内部链接审查,0-100 分,可选 JS 渲染
内部链接图孤立页面、死胡同、枢纽、悬空链接、带锚文本提示的相关页面建议(默认使用 TF-IDF,也可使用 OpenAI / Gemini / 本地嵌入)
llms.txt从 HTML 文件夹生成,并根据规范进行验证
趋势追踪在本地保存 GSC、大模型引用和 AIO 的 SQLite 快照,并提供趋势工具

采用 MIT 许可并以本地运行为先:你的凭据和数据始终保留在你的设备上。

引用检查的工作方式

multi_llm_citation_check(questions, target_domain) 会向每个已配置的引擎针对每个问题提问多次(samples,默认值为 3),因为大模型的回答每次运行都会有所不同。每个引擎都会返回:

  • citation_rate 及其 95% Wilson 区间,以及每个问题的 cited_rate 和 stable 标志
  • mention_rate 和 unlinked_mention_rate:提及你的品牌但未链接到你的网站的回答
  • top_competing_domains:取代你的网站获得引用的域名
  • 支持子域名匹配(docs.acme.com 会计入 acme.com)

品牌别名根据域名推导(acme.com → acme),你也可以通过 brand_aliases 传入自己的别名。请求会并行运行,并发数上限由 GEOSEO_MAX_CONCURRENCY 控制(默认值为 8)。

大致费用

以下为截至 2026 年 10 月的近似标价;进行大批量运行前,请查看各提供商的定价页面。

引擎调用方式每次查询的近似费用
ChatGPT(定价)Responses API,gpt-5-mini + web_search搜索费约 $0.01,另加令牌费用,总计约 $0.01-0.02
Claude(定价)Messages API + web_search 工具每 1k 次搜索 $10,另加令牌费用
Gemini(定价)gemini-3.5-flash-lite + Google Search grounding每月 5,000 次免费 grounding 请求,之后每 1k 次 $14,另加令牌费用
Perplexity(定价)Agent API,fast 预设每 1k 次搜索约 $2.50,另加令牌费用
Grok(定价)Responses API,grok-4.3 + web_search按令牌和每次搜索调用分别计费
Brave(定价)Answers API,流式响应并附带引用每 1k 次搜索约 $4 + 每 M 个令牌 $5
Google AI Overviews(定价)SerpAPI每月 250 次免费搜索,之后按套餐定价

针对 10 个问题、每个问题采样 3 次并使用四个引擎的检查会发出 120 次调用,费用通常远低于 $2。快速抽查时可使用 samples=1。

获取凭据

  • OpenAI:API key。使用 Responses API 和 web_search 工具。可通过 GEOSEO_OPENAI_MODEL 覆盖模型。
  • Anthropic:API key。使用 Claude 和服务端网页搜索工具。
  • Gemini:来自 AI Studio 的 API key。使用 Google 搜索 grounding(与 AI Overviews 使用相同的索引)。
  • Perplexity:API key。使用 Agent API 和 fast 预设;设置 GEOSEO_PERPLEXITY_EFFORT 或 GEOSEO_PERPLEXITY_MODEL 可更改配置。
  • xAI Grok:来自 xAI 控制台的 API key,设置为 GEOSEO_XAI_API_KEY。使用 Responses API 和 web_search 工具;可通过 GEOSEO_GROK_MODEL 覆盖模型(默认值为 grok-4.3)。
  • Brave Answers:Answers 计划的 API key,设置为 GEOSEO_BRAVE_API_KEY。答案来自 Brave 自有索引。
  • SerpAPI:API key。免费计划:每月 250 次搜索。用于跟踪 AI Overviews。
  • Google Search Console:参见 docs/setup-gsc.md。需进行一次性 OAuth 流程。
  • Bing Webmaster:从 Bing Webmaster Tools → Settings → API access 获取 API key。
  • Yandex Webmaster:OAuth 令牌。使用 webmaster:hostinfo 和 webmaster:verify 两项权限注册应用(仅有 hostinfo 只能列出网站),然后通过 https://oauth.yandex.com/authorize?response_type=token&client_id=<id> 获取令牌,并设置 GEOSEO_YANDEX_OAUTH_TOKEN。文档。
  • IndexNow:任意随机的 32 位十六进制字符串,托管在 https://yourdomain.com/<key>.txt。规范。

需要密钥但尚未设置的工具会返回明确错误;其他功能仍可正常使用。

配置

环境变量默认值作用
GEOSEO_TOOLSETSall要公开的工具集,以逗号分隔:gsc,bing,yandex,indexing,llm,aio,audit,graph,trend。工具越少,提供给 Agent 的上下文就越少。
GEOSEO_CITATION_SAMPLES3multi_llm_citation_check 每个问题的默认样本数(最多 10 个)。
GEOSEO_MAX_CONCURRENCY8大模型请求的最大并行数。
GEOSEO_OPENAI_MODELgpt-5-mini用于 ChatGPT 检查的模型。
GEOSEO_ANTHROPIC_MODELclaude-sonnet-5-5用于 Claude 检查的模型。
GEOSEO_GEMINI_MODELgemini-3.5-flash-lite用于 Gemini 检查的模型。
GEOSEO_GROK_MODELgrok-4.3用于 Grok 检查的模型。
GEOSEO_PERPLEXITY_EFFORT / GEOSEO_PERPLEXITY_MODELfast / unsetPerplexity Agent API 预设,或固定使用的模型。
GEOSEO_TRANSPORTstdiostdio 或 http(流式 HTTP)。
GEOSEO_HOST / GEOSEO_PORT127.0.0.1 / 8000HTTP 绑定地址。
GEOSEO_DB用户数据目录用于趋势快照的 SQLite 文件。

示例:仅启用无需密钥的审计工具,精简 Agent 上下文:

"env": { "GEOSEO_TOOLSETS": "audit,graph" }
流式 HTTP
uvx geoseo-mcp serve --transport http --port 8000
# MCP endpoint: http://127.0.0.1:8000/mcp

默认绑定到 localhost。此服务没有内置身份验证,因此在向外公开之前,请先将其置于可信代理之后。

JavaScript 渲染

默认情况下,audit_page 会读取原始 HTML。如果页面看起来像 JavaScript 外壳(空的 SPA 根节点或几乎没有文本),它会添加一条 js_rendering 发现结果。安装额外组件并传入 render=True(或在 CLI 中使用 --render),即可审计渲染后的 DOM:

pip install 'geoseo-mcp[render]' && playwright install chromium

工具(47)

  • 状态:geoseo_status、list_llm_engines
  • Google Search Console:gsc_list_sites、gsc_performance、gsc_inspect_url、gsc_submit_sitemap
  • Bing Webmaster:bing_list_sites、bing_query_stats、bing_page_stats、bing_url_info、bing_submit_url、bing_crawl_issues
  • Yandex Webmaster:yandex_list_sites、yandex_site_summary、yandex_query_stats、yandex_url_info、yandex_submit_url、yandex_crawl_issues
  • 索引:indexnow_submit_url、indexnow_submit_urls
  • 大模型引用:perplexity_query、perplexity_citation_check、openai_query、claude_query、gemini_query、grok_query、brave_query、multi_llm_query、multi_llm_citation_check
  • Google AI Overviews:aio_check、aio_citation_check
  • 页面内:audit_page、audit_site、find_broken_external_links、lint_schema_page、lint_schema_site
  • 链接图谱:internal_link_graph、suggest_internal_links
  • llms.txt:generate_llms_txt、validate_llms_txt
  • 趋势:trend_init、trend_stats、snapshot_gsc、snapshot_llm_citations、snapshot_serp_aio、trend_gsc、trend_llm_citations

suggest_internal_links 默认使用 TF-IDF(离线、免费)。传入 mode="openai"、"gemini" 或 "local"(sentence-transformers)可使用嵌入相似度;向量按内容哈希缓存在 SQLite 中。

对于 Yandex 工具,将常规 URL 作为 site 传入;系统会按照主镜像匹配到 Yandex 主机 ID(https:example.com:443)。yandex_url_info 仅涵盖“监控重要页面”中的页面(Yandex 没有任意 URL 检查端点)。

快照仅追加,并存储在 $GEOSEO_DB。每周安排 snapshot_* 工具运行,以构建 AI 搜索可见度的私有时间序列。

路线图

在 issues 中跟踪。0.4 版已发布:失效链接探查工具、架构标记检查器、Grok 和 Brave 引用引擎、基于嵌入的链接建议、Yandex Webmaster。

贡献

欢迎提交 PR。每个引擎都是 src/geoseo_mcp/engines/ 中的一个模块,提供 query() 并返回标准 {engine, question, model, answer, citations, cited_domains, usage} 结构;工具位于 src/geoseo_mcp/tools/。参见 docs/architecture.md。

git clone https://github.com/Rachit8484/geoseo-mcp.git && cd geoseo-mcp
uv sync --extra dev
uv run ruff check src tests && uv run pytest

许可证

MIT。参见 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。