Skip to main content
Glama

EDS MCP Server

npm installs MCP Registry awesome-mcp-servers license

Let an AI agent run your Adobe Edge Delivery site.

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

Ask your agent


โšก Do it in three lines

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

Then just ask your agent:

"Preview and publish the homepage." "What are the Core Web Vitals across the site?" "Find every page about pricing and list the ones missing a description."

That's it โ€” no local AEM, no scripts, no glue code.


Related MCP server: AEM MCP Server

๐Ÿง  How it works

flowchart LR
  A["AI agent<br/>(Claude Code ยท Cursor ยท Copilot)"] -- MCP / stdio --> B["eds-mcp-server<br/>20 tools"]
  B --> C["Admin API<br/>admin.hlx.page"]
  B --> D["Content API<br/>*.aem.live"]
  B --> E["RUM / OpTel<br/>Core Web Vitals"]
  C --> F["Your EDS site"]
  D --> F
  E --> 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:

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 20 tools

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

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


๐Ÿ”Œ Add it to your tool

claude mcp add eds -e EDS_OWNER=your-org -e EDS_REPO=your-site -- npx @focusgts/eds-mcp-server
{
  "mcpServers": {
    "eds": {
      "command": "npx",
      "args": ["@focusgts/eds-mcp-server"],
      "env": { "EDS_OWNER": "your-org", "EDS_REPO": "your-site" }
    }
  }
}
{
  "servers": {
    "eds": {
      "command": "npx",
      "args": ["@focusgts/eds-mcp-server"],
      "env": { "EDS_OWNER": "your-org", "EDS_REPO": "your-site" }
    }
  }
}

โš™๏ธ Configuration

Variable

Required

Description

EDS_OWNER

Yes

GitHub org/user that owns the EDS site repo

EDS_REPO

Yes

GitHub repository name

EDS_REF

No

Git branch (default: main)

EDS_API_KEY

No

Admin token (see Authentication). Browser login is the alternative.

EDS_DOMAIN_KEY

No

OpTel domain key for analytics queries (CWV, 404s, experiments)

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


๐Ÿ” Authentication

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

Browser sign-in (recommended for interactive use)

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.

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

git clone https://github.com/Focus-GTS/eds-mcp-server.git
cd eds-mcp-server && npm install && npm run build && npm test

๐Ÿงฉ Part of the FocusGTS EDS suite

eds-content-ops-skills

AI skills for EDS content ops โ€” first third-party contributor merged into Adobe's official skills repo

eds-ops

CLI + GitHub Action for automated site grading and PR gating

EDS Score

Free browser-based site health analyzer


Built by FocusGTS โ€” Adobe Silver Solution Partner ยท Apache-2.0 Not affiliated with or endorsed by Adobe Inc.

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

โ€“Maintainers
โ€“Response time
โ€“Release cycle
โ€“Releases (12mo)
Commit activity

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Focus-GTS/eds-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server