Eds Mcp Server

io.github.focusgts由 GitHub 帳號 focusgts 發布v0.15.0更新於 Oct 24, 2026

41 tools for Adobe Edge Delivery Services: read, audit, track, monitor, fix, publish, undo — safely.

概覽

AI 產生的概覽

本機 MCP 伺服器,讓助理讀取、稽核、修復、預覽、發布並回復 Adobe Edge Delivery Services 網站內容。

可以做什麼
讀取內容、網站地圖、中繼資料、重新導向與設定,並搜尋或列出網站頁面。稽核單一頁面或整個網站,涵蓋 SEO、無障礙、內容新鮮度、網站地圖涵蓋率、Core Web Vitals 與 404,並產生 HTML 報告、快照與趨勢。修復中繼資料、重新導向與稽核發現的問題,支援單頁或批次,可先試跑預覽並復原。預覽、發布、取消發布與清除快取,支援單頁或批次,並可查詢工作狀態。讀寫 Document Authoring 來源檔案,包括整棵子樹的匯出、推送與回復。查詢 Core Web Vitals、404、實驗與日誌等分析資料。
適用情境
適合在維護 Adobe Edge Delivery Services 網站時,讓助理稽核網站、修復中繼資料或重新導向,並在可回復的前提下發布變更。唯讀的內容與稽核工具不需要憑證,因此僅用於檢查也值得加入。
執行需求
透過 npx 以 npm 套件形式在本機執行,需要 Node.js 18 或更新版本。必須設定 EDS_OWNER 與 EDS_REPO,EDS_REF 為選用。寫入工具需要管理員權杖,可透過瀏覽器登入(Chrome 或 Firefox)或 EDS_API_KEY 提供。分析工具需要 EDS_DOMAIN_KEY,Document Authoring 工具需要 EDS_DA_TOKEN。需要連線至 Adobe 的 EDS 網路端點。
安裝前請注意
寫入、發布、清除快取與 Document Authoring 工具會變更線上網站內容,並需要管理員憑證;EDS_API_KEY、EDS_DA_TOKEN 與 EDS_DOMAIN_KEY 都是機密。瀏覽器登入會將管理員權杖快取在本機磁碟約一天。批次修復與推送可能一次變更大量頁面,請使用試跑與復原選項並在發布前複核。稽核監控可向 Slack 或 Discord 送出 webhook 告警。此伺服器與 Adobe 無隸屬關係。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Eds Mcp Server,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

[EDS MCP Server]

[npm] [installs] [MCP Registry] [awesome-mcp-servers] [license]

Let an AI agent run — and improve — your Adobe Edge Delivery site.

41 tools. No extra dependencies beyond the MCP SDK. Works with any EDS site. The first MCP server purpose-built for Edge Delivery Services.

Read your content → audit it → fix what's wrong → publish → undo any of it. One page or the whole site, in a single reversible operation. Preview before every write; undo after.

[Ask your agent]


⚡ Do it in three lines

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

Then just ask your agent:

"Audit the whole site and show me what's hurting SEO." "Fix the meta description on every page that's missing one — preview first, then publish." "Actually, undo that whole batch." "Preview and publish the homepage."

That's it — no local AEM, no scripts, no glue code. Every write is previewable and reversible.

The loop that makes it different

mermaid
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

It doesn't just drive your site — it improves it, safely. Point it at an EDS site and an agent can find what's wrong and repair it, one page or the whole site in a single batch that a single eds_da_rollback reverts. No other MCP server — including Adobe's own — does this end-to-end.


🧠 How it works

mermaid
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

The agent calls tools; the server talks to the live EDS infrastructure. Read-only tools (content, sitemap, metadata) need no credentials at all.


🔑 One-click sign-in

No more pasting a fresh admin token every day:

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

Use Chrome or Firefox — Safari blocks the local callback (same as Adobe's AEM CLI). EDS_API_KEY works as the CI / fallback path.


🛠️ The 41 tools

Edge Delivery Services — publish, content, analytics

Publishing

  • 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

Content

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

Analytics & config

  • eds_get_cwv
  • eds_get_404s
  • eds_get_experiments
  • eds_get_config
  • eds_get_logs
  • eds_get_api_keys

Document Authoring (DA) — the authored source, not the rendered output

Nine tools reach a site's Document Authoring source directly (admin.da.live), the source of truth behind an EDS site. Requires EDS_DA_TOKEN.

Read

  • eds_da_list_sources
  • eds_da_get_source
  • eds_da_get_versions

Write

  • eds_da_put_source
  • eds_da_delete_source
  • eds_da_copy_source
  • eds_da_move_source

Bulk ("clone") + safe writes

  • eds_da_export
  • eds_da_push
  • eds_da_rollback

eds_da_export / eds_da_push bring the efficiency of aem content clone to agents: export a whole DA subtree in one call, operate on it, and push the batch back in one call — no local checkout, no aem-cli. Same model, network-native.

Safe by default. eds_da_push takes dryRun: true to preview exactly what a bulk edit would do (create / update / unchanged, with line-diff counts) without writing a thing, and withUndo: true to make the write reversible — it returns an undo object you hand to eds_da_rollback to restore prior content and remove any docs the push created. Preview before writing, undo after: the difference between an impressive demo and something you'd point at a production site.

EDS_DA_TOKEN is an Adobe IMS access token for Document Authoring — grab it from an authenticated da.live session (the IMS access_token). Document paths assume .html when no extension is given (index → index.html).

Content audit — find what's wrong, before you fix it

  • eds_audit_page
  • eds_audit_site
  • eds_audit_report
  • eds_audit_snapshot
  • eds_audit_trend
  • eds_audit_monitor

It tells you what's wrong. eds_audit_site sweeps the whole site (or a subtree) and returns a prioritized list of issues across SEO (missing titles/descriptions, no H1, blocked from indexing), accessibility (images without alt text, missing landmarks, unlabeled form inputs), freshness (pages not updated in over a year), sitemap coverage, and — with a domain — performance (Core Web Vitals) and 404s from Adobe's own real-user data. eds_audit_page does the same for one page. Read-only and safe to run anytime.

eds_audit_report turns that audit into a beautiful, client-ready HTML report — a Focus GTS Navigator letterhead, an executive summary, per-dimension health scores, a prioritized issue list with each suggested fix, and a Save-as-PDF button (uses your browser's own print — no dependency). Self-contained (no external assets), ready to open, host, or send to a stakeholder. Pass an optional brand (agency name, logo, accent, "prepared for" client) to white-label the letterhead.

Track it over time. eds_audit_snapshot records each audit's scores to a history sheet in your site's own content (private by default) and tells you the change since last time — "89, ▲7 since last week." eds_audit_trend turns that history into a shareable HTML sparkline of your score over time plus per-dimension movement. One snapshot is a mirror; the trend is the story.

Watch it on autopilot. eds_audit_monitor audits, diffs against the last snapshot, and reports a status — ok / degraded / broken — and, when you give it a webhook, pings Slack/Discord the moment health breaks (a new critical, or a dimension fallen to poor). The server does the check + alert; you supply the schedule — a copy-paste scheduled GitHub Action or your agent runtime. Webhook is https-only and the payload carries no secrets.

Safe fixes — repair what the audit finds

  • eds_fix_metadata
  • eds_bulk_fix_metadata
  • eds_fix_redirect
  • eds_fix_audit

It fixes what it finds — reversibly. eds_fix_metadata repairs a page's title, meta description and Open Graph image by editing its Document Authoring source, routed through the same dry-run + undo path as the write tools. The agent supplies the content (e.g. writes a fitting description); the tool writes it correctly and idempotently (merges into the page's Metadata block, never duplicates it). Pass publish: true to preview + publish so the change goes live.

eds_bulk_fix_metadata does it across a whole site in one reversible operation — pass a list of { path, metadata }, and it writes every changed page in a single batch that returns one undo reverting all of it. The full loop: eds_audit_site → fix the batch → publish → re-audit to zero — with a single undo if anything looks off.

eds_fix_redirect closes the 404 loop: eds_audit_site surfaces the broken links from real-user data, and this adds the 301 redirect rules (to the site's redirects sheet) that fix them — one rule or many, idempotent, dry-run + undo. So the audit now has a fix for every major finding.

eds_fix_audit is the "fix it" button in agent form: after an audit, apply its fixable findings — metadata and redirects together — in one reversible batch. Findings the report marks ✦ Fixable carry a machine-readable fix; you supply the values (the tool never invents copy), and every change is pushed at once so a single eds_da_rollback undoes all of it. dryRun previews the whole plan; publish: true makes it live.


🔌 Add it to your tool

Claude Code — one command
bash
claude mcp add eds -e EDS_OWNER=your-org -e EDS_REPO=your-site -- npx @focusgts/eds-mcp-server
Cursor — .cursor/mcp.json
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
json
{  "servers": {    "eds": {      "command": "npx",      "args": ["@focusgts/eds-mcp-server"],      "env": { "EDS_OWNER": "your-org", "EDS_REPO": "your-site" }    }  }}

⚙️ Configuration

VariableRequiredDescription
EDS_OWNERYesGitHub org/user that owns the EDS site repo
EDS_REPOYesGitHub repository name
EDS_REFNoGit branch (default: main)
EDS_API_KEYNoAdmin token (see Authentication). Browser login is the alternative.
EDS_DOMAIN_KEYNoOpTel domain key for analytics queries (CWV, 404s, experiments)
EDS_DA_TOKENNoDocument Authoring IMS access token — enables the eds_da_* source & bulk tools
EDS_DA_ORGNoDA org (defaults to EDS_OWNER)
EDS_DA_REPONoDA repo/site (defaults to EDS_REPO)

Read-only tools (content, sitemap, metadata) need no keys. Write tools (preview, publish, cache) need an admin token. Analytics tools need EDS_DOMAIN_KEY. DA source tools need EDS_DA_TOKEN.


🔐 Authentication

Admin operations require an EDS Admin token. Two ways to provide one.

Browser sign-in (recommended for interactive use)

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

Opens your browser to Adobe's admin.hlx.page login (the same flow as the AEM CLI). The admin site token caches at ~/.aem/auth-token.json (mode 0600, ~24h) and is reused automatically. Use Chrome or Firefox — Safari blocks the local callback.

EDS_API_KEY (CI / automation, and the fallback) — always takes precedence when set.

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

To get a token (per Adobe's API key docs): sign in at https://admin.hlx.page/login, then copy the auth_token cookie value from DevTools — or copy the x-auth-token header from an authenticated AEM Sidekick request. For a durable credential, configure a site API key.


🏗️ Architecture

Built following Adobe's MCP conventions (derived from adobe-rnd/da-mcp):

  • TypeScript + @modelcontextprotocol/sdk + zod, stateless per request
  • Tool naming: eds_{verb}_{noun} · stdio transport
  • Native fetch() (Node 18+) — no HTTP dependencies
bash
git clone https://github.com/Focus-GTS/eds-mcp-server.gitcd eds-mcp-server && npm install && npm run build && npm test

🧩 Part of the FocusGTS EDS suite

eds-content-ops-skillsAI skills for EDS content ops — first third-party contributor merged into Adobe's official skills repo
eds-opsCLI + GitHub Action for automated site grading and PR gating
EDS ScoreFree browser-based site health analyzer

Built by FocusGTS — Adobe Silver Solution Partner · Apache-2.0
Not affiliated with or endorsed by Adobe Inc.

來源:README.md,提交 245c545

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.15.0最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分