EdGEO

io.github.edgarcia-id由 GitHub 账号 edgarcia-id 发布v0.1.4更新于 Nov 7, 2026

Local MCP for evidence-based SEO, GEO, Google AI Search, and Search Console.

概览

AI 生成的概览

本地 MCP 服务器,用于基于证据的 SEO 与 GEO 审计:页面审计、限定范围站点抓取、AI 回答可见度分析以及 Google Search Console 查询。

可以做什么
  • 审计单个公开页面的技术 SEO 信号,如状态码、重定向、标题、canonical、标题层级、链接、元数据与 JSON-LD
  • 对同一主机下的站点做限定范围的抓取,遵守 robots.txt 与抓取延迟
  • 调用本地 Ollama 模型或在明确同意后调用 Gemini API,并分析回答中的品牌提及与域名引用
  • 在提示词与记录条件一致时比较两次可见度运行结果
  • 列出并查询用户自己的 Google Search Console 资源与效果数据
  • 在本地解析 Search Console 的 CSV/TSV 导出文件,或汇总用户提供的行数据
适用场景
适合希望让助手检查页面 SEO 信号、抽样了解站点可抓取结构、跟踪 AI 回答中品牌提及与域名引用情况,或在不依赖托管服务与账号的情况下获取 Search Console 效果数据的场景。
运行要求
需要 Node.js 20.18.1 或更高版本,以及支持本地 stdio MCP 的客户端。Search Console 工具需要启用 Search Console API 的 Google Cloud 桌面型 OAuth 客户端,并完成一次连接步骤;刷新令牌保存在本地数据目录。Ollama 通过本机回环地址访问;Gemini 提供方需要 GEMINI_API_KEY。
安装前请注意
只有在显式同意标志下,Gemini 提示词才会离开本机,并受提供方条款与数据处理政策约束。Search Console 连接会在本地保存 OAuth 刷新令牌,并以只读权限访问用户资源。页面与抓取请求会发往用户选择的公开站点。安装程序会修改客户端配置文件,服务器启动时会从 npm 自动更新。结果仅为描述性信息,不能证明排名或收入。

安装

在 SourceWeft 中

  1. 打开 控制台中的 EdGEO,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

EdGEO

[EdGEO icon]

[EdGEO MCP server]

A free, local-first MCP toolkit for evidence-based SEO, GEO, and Google AI Search audits.

EdGEO gives compatible AI agents tools to inspect public website pages, crawl a bounded part of a site, analyze AI answers, and read a user's own Google Search Console data. It is a standalone open-source project. No EdGEO account, hosted EdGEO service, telemetry, or subscription is required.

An API answer is not the same as what a person sees in ChatGPT, Gemini, Google AI Overviews, or another consumer product. EdGEO reports the source and conditions for each observation and does not promise rankings.

What EdGEO can do

  • Audit a page: inspect HTTP status and redirects, title and description, canonical and robots directives, headings, language, viewport, links, image alt text, Open Graph/Twitter metadata, hreflang, and parseable JSON-LD.
  • Crawl a bounded site sample: make up to 50 same-host URL fetch attempts, starting from the requested URL and same-host sitemap URLs. EdGEO preserves trailing slashes when requesting URLs, follows robots.txt and crawl delay, separates non-HTML resources, and deduplicates pages that resolve to the same final URL. Remaining queued URLs are not a sitewide coverage estimate.
  • Collect an AI answer: query an Ollama server on loopback or query the Gemini API after explicit consent. Returned observations include provider, model, prompt type, locale, timestamp, and limitations.
  • Analyze and compare AI answers: analyze supplied or collected answers for literal brand mentions and domain citations. Compare answers only when prompt and recorded conditions match.
  • Connect to Google Search Console: authorize the user's account with a read-only OAuth scope, list available properties, and query selected dates, dimensions, and search types.
  • Import exported data: parse Search Console CSV/TSV locally, including common English and Indonesian headers, or summarize structured rows.

Install in an AI agent

Install the local MCP server in selected clients with:

sh
npx --yes --prefer-online edgeo-mcp@latest install --agent claude,codex,cursor,gemini

For a native Gemini CLI extension installation, use:

sh
gemini extensions install https://github.com/edgarcia-id/edgeo

The extension registers the MCP prompt as /edgeo. Its optional Gemini API key setting is only needed for EdGEO's Gemini provider; the key is kept in Gemini CLI's sensitive extension settings.

For the Claude Code marketplace plugin, add the EdGEO marketplace and install its plugin:

sh
claude plugin marketplace add edgarcia-id/edgeoclaude plugin install edgeo@edgeo-marketplace

The plugin provides MCP tools and the namespaced /edgeo:edgeo command. The standalone installer below also installs an unqualified /edgeo skill.

The installer merges user-level settings, backs up JSON config files before editing them, and preserves unrelated server entries. It upgrades earlier EdGEO-generated Cursor and Gemini MCP entries in place. Claude Code and Codex use their native CLI commands; Claude Code and Codex also receive an EdGEO skill. Restart or reload the selected clients after installation.

Automatic updates

The installer configures the MCP server to run npx --yes --prefer-online edgeo-mcp@latest serve. Each time an agent starts the server, npm checks for the latest published EdGEO version and downloads it when needed. A server already running keeps its current code until the agent reloads or restarts it. The update check sends the package name and version request to npm; it does not send the audited website, prompts, API keys, or local results.

Claude Code installs the /edgeo:edgeo plugin from a third-party marketplace, whose automatic updates are off by default. To receive plugin and prompt updates automatically, open /plugin, select Marketplaces → edgeo-marketplace, and enable Auto-update. Claude Code checks marketplace updates at startup and notifies you when a plugin changes; run /reload-plugins or start a new session to load it. A session already using EdGEO keeps the version it loaded.

Tagged GitHub releases publish the matching package version to npm and update EdGEO's Official MCP Registry listing through GitHub Actions. Before the first automated publish, configure edgeo-mcp on npm with a trusted publisher for GitHub Actions, repository edgarcia-id/edgeo, workflow release.yml, and permission to publish. See npm's trusted publishing setup. Keep the tag in the form v<package.json version>.

sh
npx --yes --prefer-online edgeo-mcp@latest doctornpx --yes --prefer-online edgeo-mcp@latest uninstall --agent claude,codex,cursor,gemini

The MCP server registers a prompt named edgeo. Hosts that expose MCP prompts as slash commands may show /edgeo; other hosts use their skill picker, prompt UI, or normal tool invocation. MCP does not define one slash-command syntax for every agent.

For direct/manual setup and supported host behavior, read Install and distribute EdGEO and agent install notes.

Search Console setup

Google Search Console API usage is free of charge and subject to Google's quotas. Each user connects their own Google account; EdGEO requests only the Search Console read-only scope. To connect, create a Google OAuth client of type Desktop app, enable the Search Console API in that Google Cloud project, and run:

sh
npx --yes --prefer-online edgeo-mcp@latest search-console connect --client-id YOUR_DESKTOP_OAUTH_CLIENT_ID

The browser opens Google's consent screen and returns to a loopback callback on the same computer. The refresh token is stored in the user's local EdGEO data directory; set EDGEO_DATA_DIR to choose another directory. edgeo-mcp search-console status checks local setup and edgeo-mcp search-console disconnect revokes the saved grant and removes it.

See Google Search Console connection details for OAuth setup and data handling.

Portable Agent Skills

EdGEO includes three optional, portable Agent Skills for focused workflows: technical SEO audits, AI visibility research, and Search Console analysis. They follow the open SKILL.md folder format and use EdGEO's MCP tools; install the EdGEO MCP server separately in the agent first. See Agent Skills for their scope and installation notes. The skills are available in the source repository and npm package; each can also be submitted as its own free MCP Rush listing.

Model connections

  • Ollama: local API requests go to 127.0.0.1:11434; no model API bill is added by EdGEO. Local hardware is required. A cloud-backed Ollama model may still transmit prompts externally.
  • Gemini API: configure GEMINI_API_KEY in the MCP process environment. The tool requires consentToExternalRequest: true before sending a prompt. Some model tiers have free quotas; rates, availability, and data terms vary. Do not send confidential data unless the provider's terms and settings are acceptable.

Neither connector automatically performs consumer-app testing or web search. Returned answers have no assumed citations. See model connection details.

Requirements and local development

  • Node.js 20.18.1 or later
  • An agent that supports local stdio MCP for agent use
sh
npm cinpm testnpm run typechecknpm start

npm start runs the local stdio MCP server. The server writes diagnostic messages to stderr and reserves stdout for MCP messages. npm test builds the TypeScript and exercises CSV parsing, visibility analysis, API request shaping, OAuth token refresh, installer config merging, SSRF rejection, and MCP initialization/tool discovery.

Method limits

  • Page audits inspect server-returned HTML and headers. They do not render JavaScript, measure Core Web Vitals, verify indexing, or observe search rankings.
  • Crawling is bounded to the exact hostname, obeys applicable robots.txt rules, and stops when robots.txt cannot be read.
  • Search Console only reports fields and appearance labels returned by Google. EdGEO does not infer AI Overviews, AI Mode, or SGE from ordinary web search rows.
  • Brand matching is literal and may need human entity review. A mention is not a positive description or recommendation; a citation does not prove support for a nearby claim.
  • Comparisons are descriptive, not causal. Differences may reflect sampling, model updates, retrieval, account state, or unrecorded conditions.
  • Search Console exports and API responses can omit anonymized queries or be truncated. A click, citation, or impression is not revenue or proof of a GEO effect.

Privacy and security

Page and crawl requests go directly to the public site selected by the user. EdGEO blocks local/private IP targets and pins validated DNS addresses. Supplied data and API results are processed locally and returned to the connected agent; the agent host may keep conversation or tool data under its own policies. Gemini prompts leave the computer only after an explicit tool consent flag. See privacy and data handling and security policy.

License

Apache-2.0. Commercial use and redistribution are permitted subject to the license and included attribution notices. See LICENSE and NOTICE.

Project status

EdGEO is distributed on npm and listed in the Official MCP Registry. Release history: 0.1.4 adds an optional Search Console property filter; 0.1.3 added automatic update checks and expanded the default crawl limit; 0.1.2 refined crawl URL handling, redirects, sitemap observations, and heading cues. Version 0.1.1 added native Gemini CLI extension support; the Gemini gallery discovers qualifying tagged repositories through its daily crawler.

来源:README.md,提交 b61e474

工具

9

edgeo_audit_page

Audit a public webpage

Fetch and audit one public HTTP/HTTPS HTML page for observable technical SEO and page-structure signals. Does not render JavaScript, measure Core Web Vitals, or verify search indexing.

输入参数url必填

edgeo_crawl_site

Crawl and audit a public site

Run a bounded same-host HTML crawl seeded from the start URL and same-host sitemap URLs. Defaults to 50 attempted URLs and accepts up to 200. Preserves trailing slashes when requesting URLs, reads robots.txt first, applies its rules and crawl-delay, separates non-HTML sitemap resources, and never renders JavaScript or follows links to other hosts. Reports known queued URL counts, not sitewide coverage.

输入参数url必填delayMsmaxPages

edgeo_analyze_visibility

Analyze supplied AI answers

Analyze caller-supplied answers with transparent brand alias and citation checks. Keeps prompt types and failures separate; does not call models or automatically label recommendations.

输入参数aliasesbrandName必填brandDomainobservations必填

edgeo_compare_visibility_runs

Compare two sets of supplied AI answers

Compare complete answers only when the normalized prompt and recorded source, provider, model, surface, locale, search mode, and prompt type match. Returns paired mention and citation changes with sample counts; does not infer causation or call AI providers.

输入参数after必填before必填aliasesbrandName必填brandDomain

edgeo_summarize_search_console

Summarize supplied Search Console rows

Summarize user-supplied Search Console rows by provided feature label, including clicks, impressions, CTR, and impression-weighted average position. Does not connect to Google or infer an AI feature from unlabeled data.

输入参数rows必填

edgeo_import_search_console_csv

Import a Search Console CSV locally

Parse a user-provided CSV or TSV export in memory, recognize common English and Indonesian Search Console headers, and return a transparent summary. The file contents are not uploaded or persisted by this tool.

输入参数csvText必填columnMapdelimiter

edgeo_query_model

Collect one AI model answer

Send one prompt to a configured local Ollama model or, with explicit consent and GEMINI_API_KEY configured, Google Gemini API. Returns an observation ready for EdGEO visibility analysis. Provider API output is not equivalent to a consumer AI app or Google AI Search result; no citations are assumed.

输入参数model必填locale必填prompt必填provider必填promptType必填maxOutputTokensconsentToExternalRequest

edgeo_search_console_sites

List connected Search Console properties

List Google Search Console properties for the user's locally authorized Google account. Requires prior setup with `edgeo-mcp search-console connect`; uses a read-only OAuth scope and returns only properties the Google account can access. Optionally filter property URLs by a case-insensitive substring.

输入参数siteUrlContains

edgeo_search_console_query

Query Google Search Console

Query the user's authorized Google Search Console property for web, image, video, news, Discover, or Google News performance rows. Requires `edgeo-mcp search-console connect`. Reads Search Console directly with OAuth read-only access; AI feature labels are never inferred from generic search rows.

输入参数endDate必填siteUrl必填rowLimitstartDate必填dimensionssearchTypeaggregationType

版本历史

3
  1. v0.1.4最新Oct 31, 2026
  2. v0.1.2Oct 26, 2026
  3. v0.1.1Oct 26, 2026

评分

已满足适用检查项的 90%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分
  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分