Skip to main content
Glama

AEM MCP Server

A Model Context Protocol (MCP) server for Adobe Experience Manager (AEM) local instance management. This server provides tools to interact with AEM instances, manage packages, check status, and perform common development tasks.

Features

The AEM MCP server provides the following tools:

1. aem_status

Check the status of an AEM instance including version, bundle count, and overall health.

Parameters:

  • host (optional): AEM host (default: localhost)

  • port (optional): AEM port (default: 4502)

  • username (optional): AEM username (default: admin)

  • password (optional): AEM password (default: admin)

2. aem_install_package

Install a package (.zip file) in AEM.

Parameters:

  • packagePath (required): Path to the package file (.zip)

  • host (optional): AEM host (default: localhost)

  • port (optional): AEM port (default: 4502)

  • username (optional): AEM username (default: admin)

  • password (optional): AEM password (default: admin)

  • force (optional): Force installation (default: false)

3. aem_list_packages

List all installed packages in AEM.

Parameters:

  • host (optional): AEM host (default: localhost)

  • port (optional): AEM port (default: 4502)

  • username (optional): AEM username (default: admin)

  • password (optional): AEM password (default: admin)

4. aem_create_page

Create a new page in AEM.

Parameters:

  • parentPath (required): Parent path where to create the page

  • pageName (required): Name of the new page

  • pageTitle (required): Title of the new page

  • template (required): Template path for the page

  • host (optional): AEM host (default: localhost)

  • port (optional): AEM port (default: 4502)

  • username (optional): AEM username (default: admin)

  • password (optional): AEM password (default: admin)

5. aem_replicate_content

Replicate content to publish instance (activate/deactivate).

Parameters:

  • path (required): Content path to replicate

  • action (optional): Replication action - 'activate' or 'deactivate' (default: activate)

  • host (optional): AEM host (default: localhost)

  • port (optional): AEM port (default: 4502)

  • username (optional): AEM username (default: admin)

  • password (optional): AEM password (default: admin)

6. aem_query_content

Query content using JCR-SQL2 or XPath.

Parameters:

  • query (required): Query string (JCR-SQL2 or XPath)

  • type (optional): Query type - 'JCR-SQL2' or 'xpath' (default: JCR-SQL2)

  • limit (optional): Maximum number of results (default: 20)

  • host (optional): AEM host (default: localhost)

  • port (optional): AEM port (default: 4502)

  • username (optional): AEM username (default: admin)

  • password (optional): AEM password (default: admin)

7. aem_bundle_status

Check OSGi bundle status.

Parameters:

  • bundleId (optional): Specific bundle ID or symbolic name

  • host (optional): AEM host (default: localhost)

  • port (optional): AEM port (default: 4502)

  • username (optional): AEM username (default: admin)

  • password (optional): AEM password (default: admin)

8. aem_clear_cache

Clear various AEM caches.

Parameters:

  • cacheType (optional): Type of cache to clear - 'dispatcher', 'clientlibs', or 'all' (default: all)

  • host (optional): AEM host (default: localhost)

  • port (optional): AEM port (default: 4502)

  • username (optional): AEM username (default: admin)

  • password (optional): AEM password (default: admin)

Related MCP server: Expo MCP Server

Installation

  1. Clone or download this repository

  2. Install dependencies:

    npm install
  3. Build the project:

    npm run build

Usage

Running the Server

npm start

Development Mode

npm run dev

Configuration

The server uses default AEM credentials (admin/admin) and connects to localhost:4502 by default. You can override these settings by providing different parameters when calling the tools.

Example Usage

Once the MCP server is configured and running, you can use the tools through your MCP client:

  • Check AEM status: aem_status

  • Install a package: aem_install_package with packagePath: "/path/to/package.zip"

  • Create a page: aem_create_page with required parameters

  • Query content: aem_query_content with query: "SELECT * FROM [cq:Page]"

Requirements

  • Node.js 18+

  • TypeScript

  • Running AEM instance (local or remote)

  • Appropriate AEM credentials

License

MIT License

Available Tools

8 tools
aem_bundle_statusC

Check OSGi bundle status

Inputs: bundleId, host, port, username, +1 more.

aem_clear_cacheC

Clear various AEM caches

Inputs: cacheType, host, port, username, +1 more.

aem_create_pageC

Create a new page in AEM

Inputs: parentPath (required), pageName (required), pageTitle (required), template (required), +4 more.

aem_install_packageC

Install a package in AEM

Inputs: packagePath (required), host, port, username, +2 more.

aem_list_packagesB

List installed packages in AEM

Inputs: host, port, username, password.

aem_query_contentC

Query content using JCR-SQL2 or XPath

Inputs: query (required), type, limit, host, +3 more.

aem_replicate_contentC

Replicate content to publish instance

Inputs: path (required), action, host, port, +2 more.

aem_statusC

Check the status of AEM instance

Inputs: host, port, username, password.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.4/5.0

    Scored across 8 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose targeting specific AEM operations: bundle status, cache clearing, page creation, package installation, package listing, content querying, content replication, and instance status. There is no overlap in functionality, making tool selection straightforward for an agent.

    Naming Consistency5/5

    All tools follow a consistent 'aem_verb_noun' pattern with snake_case throughout, such as aem_clear_cache and aem_create_page. This predictable naming scheme enhances readability and reduces cognitive load for agents.

    Tool Count5/5

    With 8 tools, the server is well-scoped for AEM administration tasks, covering key operations like instance management, content handling, and package control. Each tool earns its place without being overwhelming or insufficient for the domain.

    Completeness4/5

    The toolset provides strong coverage for core AEM workflows, including instance status, content creation/querying/replication, and package management. Minor gaps exist, such as the lack of tools for updating or deleting pages/packages, but agents can likely work around these with existing tools.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      B
      quality
      F
      maintenance
      A Model Context Protocol server that provides tools for code modification and generation via Large Language Models, allowing users to create, modify, rewrite, and delete files using structured XML instructions.
      12
      2
      MIT
    • A
      license
      B
      quality
      D
      maintenance
      A Model Context Protocol server that provides development and debugging tools for Expo-based React Native applications, enabling developers to manage Expo servers, capture logs, and manipulate project files.
      5
      1
      MIT
    • A
      license
      A
      quality
      C
      maintenance
      A Model Context Protocol server that provides tooling support for Ember.js development, allowing developers to execute CLI commands, run codemods, access documentation, and discover community resources.
      7
      569 npm
      28
      MIT