IA

indrasishbanerjee/aem-mcp-server

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

14 stars 9 forks 质量 72 趋势 28AGPL-3.0

AEM MCP Server

概览

Standalone Node.js Model Context Protocol server for . It does not install anything on AEM. Use the capability matrix as the list of supported operations. Release gates are in docs/adr/0001-standalone-http-mcp.md. This project is AGPL-3.0 for open source use. Commercial licensing is described in COMMERCIAL_LICENSE.md. AEMaaCS is a different product: see aemaacs-mcp-server. AEM 6.5 LTS is out of scope. - MCP for IDE clients (primary). - Optional MCP (POST /mcp) with API key or HTTP Basic. - One typed tool catalog driving both transports. - Documented AEM 6.5 HTTP only: Granite CSRF, /bin/wcmcommand, /bin/replicate.json, QueryBuilder, Assets createasset.html, Workflow REST. - Production-ready until CI gates and live Author contract tests pass. - An AEM package, OSGi service, or RepoInit installer. - Atomic bulk rollback, JCR-SQL2, MSM rollout, tree activation, or .infinity.json dumps. - An OpenAI/Anthropic/Telegram bot. - Node.js 20 or 22 - AEM 6.

README

以下为原文 README 节选,完整内容请查看原文。

AEM 6.5 MCP Server

Standalone Node.js Model Context Protocol server for Adobe Experience Manager 6.5 Author. It does not install anything on AEM.

Status: pre-production. Use the capability matrix as the list of supported operations. Release gates are in docs/adr/0001-standalone-http-mcp.md.

This project is AGPL-3.0 for open source use. Commercial licensing is described in COMMERCIAL_LICENSE.md.

AEMaaCS is a different product: see aemaacs-mcp-server. AEM 6.5 LTS is out of scope.

What this is

  • MCP stdio for IDE clients (primary).
  • Optional MCP Streamable HTTP (POST /mcp) with API key or HTTP Basic. OAuth is out of scope.
  • One typed tool catalog driving both transports.
  • Documented AEM 6.5 HTTP only: Granite CSRF, /bin/wcmcommand, /bin/replicate.json, QueryBuilder, Assets createasset.html, Workflow REST.

What this is not

  • Production-ready until CI gates and live Author contract tests pass.
  • An AEM package, OSGi service, or RepoInit installer.
  • Atomic bulk rollback, JCR-SQL2, MSM rollout, tree activation, or .infinity.json dumps.
  • An OpenAI/Anthropic/Telegram bot.

Requirements

  • Node.js 20 or 22
  • AEM 6.5 Author SP17+ reachable over HTTP(S)
  • A technical user that already exists in AEM User Admin (ACL checklist)

Quick start (stdio)

cp .env.example .env
# set AEM_HOST, AEM_SERVICE_USER, AEM_SERVICE_PASSWORD
npm ci
npm run build
npm run mcp

Cursor / Claude desktop config:

{
  "mcpServers": {
    "aem-65": {
      "command": "node",
      "args": ["/absolute/path/to/dist/mcp/stdio.js"],
      "env": {
        "AEM_HOST": "http://localhost:4502",
        "AEM_SERVICE_USER": "mcp-technical",
        "AEM_SERVICE_PASSWORD": ""
      }
    }
  }
}

Optional HTTP gateway

export MCP_API_KEY=replace-me
export HTTP_ENABLED=true
npm start
  • Liveness (no auth): GET /health/live
  • Readiness (auth): GET /health/ready
  • MCP: POST /mcp (SDK Streamable HTTP)
  • Convenience REST: GET /api/methods, POST /api/methods/:name (same auth; not a substitute for MCP)

Put TLS in front. Bind HOST=127.0.0.1. Set ALLOWED_HOSTS and CORS_ORIGINS.

curl -sS -H "X-API-Key: $MCP_API_KEY" http://127.0.0.1:3001/api/methods

Configuration

在 GitHub 查看完整 README

安装

This server does not publish a one-line install command.

Open the repository installation guide 新手?先看 mcpskill.org 教程 →

配置

{ "mcpServers": { "aem-65": { "command": "node", "args": ["/absolute/path/to/dist/mcp/stdio.js"], "env": { "AEM_HOST": "http://localhost:4502", "AEM_SERVICE_USER": "mcp-technical", "AEM_SERVICE_PASSWORD": "<secret>" } } } }