mcpField
E
eds-mcp-server

eds-mcp-server

本地服务
github.com/Focus-GTS云与基础设施410 周前更新

关于 eds-mcp-server

eds-mcp-server 提供管理 Adobe Edge Delivery Services 网站的工具,涵盖内容读取、健康审计、编辑和发布。它面向 Agent 和网站运营者,支持预览写入并通过回滚撤销更改。

主要功能

  1. 01读取和搜索网站内容
  2. 02审计 SEO、无障碍性与内容时效
  3. 03预览、发布和取消发布页面
  4. 04批量编辑 Document Authoring 源文件
  5. 05通过回滚撤销更改
  6. 06跟踪审计并发送 Webhook 警报

适用场景

  1. 01查找全站 SEO 和无障碍问题
  2. 02预览并发布页面更新
  3. 03批量修复网站元数据
  4. 04监控审计变化并在健康度下降时告警

MCP 相关

提供 41 个工具,用于操作 EDS 内容、发布、分析、审计和 Document Authoring。只读操作无需凭据;写入、分析和源文件编辑工具需要相应凭据。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"focusgts-eds": {
"command": "npx",
"args": [
"-y",
"@focusgts/eds-mcp-server"
],
"env": {
"EDS_OWNER": "<EDS_OWNER>",
"EDS_REPO": "<EDS_REPO>",
"EDS_REF": "<EDS_REF>",
"EDS_API_KEY": "<EDS_API_KEY>",
"EDS_DOMAIN_KEY": "<EDS_DOMAIN_KEY>",
"EDS_DA_TOKEN": "<EDS_DA_TOKEN>",
"EDS_DA_ORG": "<EDS_DA_ORG>",
"EDS_DA_REPO": "<EDS_DA_REPO>"
}
}
}
}
启动命令npx -y @focusgts/eds-mcp-server
需要配置的环境变量
EDS_OWNERGitHub org/user that owns the EDS site repo
EDS_REPOGitHub repository name for the EDS site
EDS_REFGit branch (default: main)
EDS_API_KEY密钥Admin API key for preview/publish/cache operations
EDS_DOMAIN_KEY密钥OpTel domain key for Core Web Vitals, 404s, and experiment queries
EDS_DA_TOKEN密钥Document Authoring IMS access token — enables the eds_da_* source and bulk tools
EDS_DA_ORGDocument Authoring org (defaults to EDS_OWNER)
EDS_DA_REPODocument Authoring repo/site (defaults to EDS_REPO)

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

安装包
npm@focusgts/eds-mcp-server0.15.0

工具

41

收录的工具列表 · 更新于 2 周前

参数类型必填说明
pathstring是相对于站点根目录的页面路径(例如,/about 或 /blog/my-post)

详细介绍

EDS MCP 服务

npm installs MCP Registry awesome-mcp-servers license

让 AI Agent 运行并 改进 你的 Adobe Edge Delivery 网站。

41 个工具。除了 MCP SDK 外无额外依赖。适用于任何 EDS 网站。 首个专为 Edge Delivery Services 打造的 MCP 服务。

读取内容 → 审核内容 → 修复问题 → 发布 → 撤销任意操作。 无论是一个页面还是整个网站,都能通过一次可撤销的操作完成。每次写入前都可预览;之后也可撤销。

向你的 Agent 提问


⚡ 三行即可完成

claude mcp add eds -e EDS_OWNER=your-org -e EDS_REPO=your-site -- npx @focusgts/eds-mcp-server

然后直接向你的 Agent 提问:

“审核整个网站,告诉我哪些问题正在影响 SEO。” “修复所有缺少描述的页面的元描述——先预览,再发布。” “等等,撤销刚才的整批操作。” “预览并发布首页。”

就这么简单——无需本地 AEM、脚本或胶水代码。每次写入都可预览、可撤销。

与众不同的工作流程
flowchart LR
  A["📖 Read<br/>authored content (DA)"] --> B["🔍 Audit<br/>SEO · a11y · perf · freshness"]
  B --> C["🛠️ Fix<br/>one page or the whole site"]
  C --> D["🚀 Publish<br/>preview + live"]
  D --> E["↩️ Undo<br/>one call reverts it all"]
  E -. "re-audit to zero" .-> B

它不只是 操控 你的网站,还能安全地改进它。将它连接到 EDS 网站后,Agent 就能找出问题并修复,可以处理单个页面,也可以一次批量处理整个网站;只需运行一次 eds_da_rollback 即可撤销整批操作。没有其他 MCP 服务(包括 Adobe 自己的服务)能端到端地做到这一点。


🧠 工作原理

flowchart LR
  A["AI agent<br/>(Claude Code · Cursor · Copilot)"] -- MCP / stdio --> B["eds-mcp-server<br/>41 tools"]
  B --> C["Admin API<br/>admin.hlx.page"]
  B --> D["Content API<br/>*.aem.live"]
  B --> E["RUM / OpTel<br/>Core Web Vitals"]
  B --> G["Document Authoring<br/>admin.da.live"]
  C --> F["Your EDS site"]
  D --> F
  E --> F
  G --> F

Agent 调用工具;服务与实时 EDS 基础设施通信。只读工具(内容、站点地图、元数据)完全无需凭据。


🔑 一键登录

不用再每天粘贴新的管理员令牌:

sequenceDiagram
  participant You
  participant CLI as eds-mcp-server login
  participant Adobe as admin.hlx.page
  You->>CLI: npx @focusgts/eds-mcp-server login
  CLI->>Adobe: open browser (client_id=aem-cli)
  You->>Adobe: sign in & approve
  Adobe-->>CLI: siteToken → localhost callback
  CLI-->>You: cached ~/.aem/auth-token.json (reused automatically)

请使用 Chrome 或 Firefox——Safari 会阻止本地回调(与 Adobe 的 AEM CLI 一样)。EDS_API_KEY 可用于 CI,也可作为备用方案。


🛠️ 41 个工具

Edge Delivery Services — 发布、内容、分析

发布

  • eds_preview_page
  • eds_publish_page
  • eds_unpublish_page
  • eds_preview_and_publish
  • eds_get_status
  • eds_purge_cache
  • eds_bulk_preview
  • eds_bulk_publish
  • eds_get_job_status

内容

  • eds_get_page
  • eds_list_pages
  • eds_search_pages
  • eds_get_metadata
  • eds_get_sitemap
  • eds_get_redirects

分析与配置

  • eds_get_cwv
  • eds_get_404s
  • eds_get_experiments
  • eds_get_config
  • eds_get_logs
  • eds_get_api_keys
### 文档创作(DA)——创作的*源文件*,而非渲染后的输出

九个工具可直接访问网站的文档创作源文件(admin.da.live),这是 EDS 网站的真实数据源。需要 EDS_DA_TOKEN。

读取

  • eds_da_list_sources
  • eds_da_get_source
  • eds_da_get_versions

写入

  • eds_da_put_source
  • eds_da_delete_source
  • eds_da_copy_source
  • eds_da_move_source

批量(“克隆”)+ 安全写入

  • eds_da_export
  • eds_da_push
  • eds_da_rollback

eds_da_export / eds_da_push 为 Agent 带来 aem content clone 的高效体验:一次调用即可导出整个 DA 子树,对其进行操作,再通过一次调用推送整个批次——无需本地检出,也无需 aem-cli。同一模式,原生支持网络操作。

默认安全。 eds_da_push 接受 dryRun: true,可预览批量编辑将执行的所有操作(创建 / 更新 / 未更改,并显示行差异数量),但不会写入任何内容;接受 withUndo: true,可使写入可撤销——它会返回一个 undo 对象,交给 eds_da_rollback 即可恢复先前内容并移除推送操作所创建的任何文档。写入前预览,写入后撤销:这就是一场精彩演示与真正敢用于生产网站的工具之间的区别。

EDS_DA_TOKEN 是用于 Document Authoring 的 Adobe IMS 访问令牌——从已通过身份验证的 da.live 会话中获取(IMS access_token)。如果未指定扩展名,文档路径默认使用 .html(index → index.html)。

内容审计——先找出问题,再进行修复
  • eds_audit_page
  • eds_audit_site
  • eds_audit_report
  • eds_audit_snapshot
  • eds_audit_trend
  • eds_audit_monitor

它会告诉你问题所在。 eds_audit_site 会扫描整个网站(或某个子树),并返回一份按优先级排序的问题列表,涵盖 SEO(缺少标题 / 描述、没有 H1、无法被索引)、无障碍性(图片没有替代文本、缺少地标、表单输入没有标签)、内容时效性(页面超过一年未更新)、站点地图覆盖情况,以及在提供 domain 时的性能(Core Web Vitals)和 Adobe 自有真实用户数据中的 404。eds_audit_page 对单个页面执行相同检查。只读操作,可随时安全运行。

eds_audit_report 会将审计结果转换为一份精美、可直接交付客户的 HTML 报告——包含 Focus GTS Navigator 信头、执行摘要、各维度健康评分、按优先级排列的问题列表及每项的建议修复方法,还有一个另存为 PDF按钮(使用浏览器自带的打印功能,无需依赖项)。报告独立完整(无外部资源),可直接打开、托管或发送给利益相关方。可选传入 brand(代理机构名称、徽标、主题色、“为……准备”客户信息),为信头设置白标样式。

追踪变化。 eds_audit_snapshot 会将每次审计的评分记录到网站自身内容中的历史表(默认私有),并告知你与上次相比的变化——“89,较上周 ▲7。” eds_audit_trend 会将这些历史记录转换为可分享的 HTML 迷你趋势图,展示评分随时间的变化及各维度的变动。单次快照是一面镜子;趋势才是故事。

自动监控。 eds_audit_monitor 会执行审计、与上次快照进行差异比较,并报告状态——正常 / 降级 / 故障;如果提供 webhook,还会在健康状态出现问题时立即通知 Slack/Discord(出现新的严重问题,或某个维度降至较差)。服务负责检查和告警;你负责提供运行计划——可复制粘贴的**定时 GitHub Action**,或你的 Agent 运行时。Webhook 仅支持 HTTPS,载荷不包含任何机密。

安全修复 — 修复审计发现的问题
  • eds_fix_metadata
  • eds_bulk_fix_metadata
  • eds_fix_redirect
  • eds_fix_audit

它会修复发现的问题,而且可撤销。 eds_fix_metadata 通过编辑页面的 Document Authoring 源文件,修复页面标题、meta 描述和 Open Graph 图片;该操作采用与写入工具相同的 dry-run + undo 流程。Agent 提供内容(例如撰写合适的描述);工具会以正确且幂等的方式写入内容(合并到页面的 Metadata 区块中,不会重复添加)。传入 publish: true 即可预览并发布更改,使其正式生效。

eds_bulk_fix_metadata 可通过一次可撤销操作修复整个网站的元数据 — 传入 { path, metadata } 列表,即可将所有有更改的页面作为一个批次写入,并返回一个可撤销操作,以撤销全部更改。完整流程:eds_audit_site → 批量修复 → 发布 → 重新审计至零问题 — 如果发现任何不妥,只需一次撤销即可。

eds_fix_redirect 可解决 404 问题:eds_audit_site 会根据真实用户数据找出失效链接,而此工具会添加301 重定向规则(写入网站的 redirects 表)来修复这些链接 — 支持一条或多条规则,且操作幂等,支持 dry-run + undo。因此,现在审计发现的每个主要问题都有对应的修复方式。

eds_fix_audit 是 Agent 版的“一键修复”按钮:审计完成后,可一次性应用所有可修复的问题,包括元数据和重定向,并在一个可撤销批次中完成。报告标记为 ✦ Fixable 的问题会附带机器可读的修复信息;你只需提供值(工具绝不会自行编造文案),所有更改会一次性提交,因此只需一次 eds_da_rollback 即可全部撤销。dryRun 可预览整个计划;publish: true 可使更改正式生效。


🔌 添加到你的工具

Claude Code — 一条命令
claude mcp add eds -e EDS_OWNER=your-org -e EDS_REPO=your-site -- npx @focusgts/eds-mcp-server
Cursor — .cursor/mcp.json
{
  "mcpServers": {
    "eds": {
      "command": "npx",
      "args": ["@focusgts/eds-mcp-server"],
      "env": { "EDS_OWNER": "your-org", "EDS_REPO": "your-site" }
    }
  }
}
VS Code (GitHub Copilot) — .vscode/mcp.json
{
  "servers": {
    "eds": {
      "command": "npx",
      "args": ["@focusgts/eds-mcp-server"],
      "env": { "EDS_OWNER": "your-org", "EDS_REPO": "your-site" }
    }
  }
}

⚙️ 配置

变量必需描述
EDS_OWNER是拥有 EDS 网站仓库的 GitHub 组织/用户
EDS_REPO是GitHub 仓库名称
EDS_REF否Git 分支(默认:main)
EDS_API_KEY否管理员令牌(参见身份验证)。也可使用浏览器登录。
EDS_DOMAIN_KEY否用于分析查询(CWV、404、实验)的 OpTel 域密钥
EDS_DA_TOKEN否Document Authoring IMS 访问令牌 — 启用 eds_da_* 源工具和批量工具
EDS_DA_ORG否DA 组织(默认为 EDS_OWNER)
EDS_DA_REPO否DA 仓库/网站(默认为 EDS_REPO)

只读工具(内容、站点地图、元数据)无需密钥。写入工具(预览、发布、缓存)需要管理员令牌。分析工具需要 EDS_DOMAIN_KEY。DA 源工具需要 EDS_DA_TOKEN。


🔐 身份验证

管理员操作需要 EDS 管理员令牌。可通过两种方式提供。

浏览器登录(交互式使用的推荐方式)

EDS_OWNER=your-org EDS_REPO=your-site npx @focusgts/eds-mcp-server login

此操作会在浏览器中打开 Adobe 的 admin.hlx.page 登录页面(与 AEM CLI 使用相同的流程)。管理员网站令牌会缓存在 ~/.aem/auth-token.json 中(权限模式为 0600,有效期约 24 小时),并自动重复使用。请使用 Chrome 或 Firefox — Safari 会阻止本地回调。

EDS_API_KEY(CI / 自动化,以及备用方式) — 设置后始终优先使用。

EDS_OWNER=your-org EDS_REPO=your-site EDS_API_KEY=<your-admin-token> npx @focusgts/eds-mcp-server

获取令牌(参见 Adobe 的 API 密钥文档):在 https://admin.hlx.page/login 登录,然后从 DevTools 复制 auth_token Cookie 的值;也可以从经过身份验证的 AEM Sidekick 请求中复制 x-auth-token 标头。若要使用长期有效的凭据,请配置网站 API 密钥。


🏗️ 架构

遵循 Adobe 的 MCP 约定构建(源自 adobe-rnd/da-mcp):

  • TypeScript + @modelcontextprotocol/sdk + zod,每个请求均无状态
  • 工具命名:eds_{verb}_{noun} · stdio 传输
  • 使用原生 fetch()(Node 18+),不依赖 HTTP
git clone https://github.com/Focus-GTS/eds-mcp-server.git
cd eds-mcp-server && npm install && npm run build && npm test

🧩 属于 FocusGTS EDS 套件

eds-content-ops-skills用于 EDS 内容运营的 AI 技能 — 首个合并到 Adobe 官方技能仓库 的第三方贡献
eds-ops用于自动化网站评分和 PR 门禁的 CLI + GitHub Action
EDS Score免费的浏览器版网站健康度分析工具

由 FocusGTS 构建 — Adobe 银牌解决方案合作伙伴 · Apache-2.0
与 Adobe Inc. 无关联,也未获其认可。

评论

支持 Markdown

第一次接触 MCP?

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

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