About Aem MCP Server
Aem MCP Server is an MCP server published by indrasishbanerjee in the Developer Tools category: aEM MCP Server.
The repository has 14 stars and 9 forks, with the last commit a month ago. Recent commit activity is the strongest signal that reported issues will get attention.
Install
git clone https://github.com/indrasishbanerjee/aem-mcp-serverThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about Aem MCP Server
Powered by Claude · Grounded in docs
Security checks
Static checks derived from the repository 6 days ago. Heuristics on the source, not an audit.
- ✓README presentThe repository ships documentation.
- ✓License declaredUsable under a stated license.
- ✓Tests presentA test suite exists in the repository.
- ✓Dependencies pinnedA lockfile pins dependency versions.
- ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
1 check has not been run yet.
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, Assetscreateasset.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.jsondumps. - 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": "<secret>"
}
}
}
}
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
See .env.example. Required: AEM_HOST, AEM_SERVICE_USER, AEM_SERVICE_PASSWORD. Production/staging refuse admin/admin and refuse HTTP without API key or Basic.
Default page resource type is core/wcm/components/page/v3/page. Override with AEM_DEFAULT_PAGE_RESOURCE_TYPE and AEM_DEFAULT_CONTAINER for your project.
Architecture
MCP client → stdio or Streamable HTTP → typed tool catalog
→ validation / path policy / audit → AEM 6.5 HTTP adapter → Author
Details: capability matrix, tool reference, operations, threat model, 1.x migration.
Development
npm ci
npm run lint
npm test
npm run build
Live Author tests (optional): AEM_INTEGRATION=1 npm test.
License
AGPL-3.0-or-later. Contact via LinkedIn for commercial licensing.
README fetched from the repository 6 days ago. The original is authoritative.