Skip to main content
MCP server CX Codex

aep — Claude Code MCP server: write access to Adobe Experience Platform

An MCP server with 61 tools that lets your agent create schemas, load batches and activate audiences in Adobe Experience Platform, not just read them.

Install into Claude Code · Platform CLI All methods and platforms ↓
claude mcp add --env AEP_CLIENT_ID=<AEP_CLIENT_ID> --env AEP_CLIENT_SECRET=<AEP_CLIENT_SECRET> --env AEP_ORG_ID=<AEP_ORG_ID> --env AEP_SANDBOX_NAME=<AEP_SANDBOX_NAME> --env AEP_MODE=<AEP_MODE> --transport stdio aep -- npx -y @focusgts/aep-mcp-server
Open on GitHub

What aep does

The server calls live Adobe APIs over OAuth Server-to-Server. Your agent gets tools for schemas, datasets, batch ingestion, segments and privacy erasure requests, and a single credential covers Experience Platform, Journey Optimizer and Customer Journey Analytics. The JO and CJA tools only read.

Writes stay off until you turn them on. The default safe posture allows changes only in a sandbox Adobe itself tags as development, and the server checks that tag through the Sandbox Management API before every write. If the type cannot be determined, the write is refused. An unrecognised AEP_MODE falls back to safe as well. A sandbox named prod is rejected before the mode is even resolved. On top of that, AEP_ALLOW_MUTATIONS=true is required, otherwise nothing changes at all.

Irreversible calls ask for a confirmation string tied to the target. Record deletion starts with dryRun: true, and real submission accepts only a phrase such as DELETE RECORDS <datasetId> <identityDigest>, where the digest matches the exact identity set. Segment and dataset deletion plus batch completion follow the same pattern. You need AEP_CLIENT_ID, AEP_CLIENT_SECRET, AEP_ORG_ID and a sandbox name to start.

What it helps with

  • compose a schema from field groups and build a dataset on it
  • upload an NDJSON file and follow the batch until it lands
  • assemble a segment and push it to a destination
  • handle a personal data erasure without touching extra records
  • check how much data lifecycle quota is left

Example prompts for the agent

  • Create a schema with the Demographic Details field group and a dataset on top of it.
  • Delete every record tied to this email address, dry run first.

How to install aep

Platform CLI

claude mcp add --env AEP_CLIENT_ID=<AEP_CLIENT_ID> --env AEP_CLIENT_SECRET=<AEP_CLIENT_SECRET> --env AEP_ORG_ID=<AEP_ORG_ID> --env AEP_SANDBOX_NAME=<AEP_SANDBOX_NAME> --env AEP_MODE=<AEP_MODE> --transport stdio aep -- npx -y @focusgts/aep-mcp-server

Replace <…> with your own values. 1 more environment variable is in the server README

Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more

Questions about aep

How do I install aep in Claude Code?

Run `claude mcp add aep -e AEP_CLIENT_ID=<AEP_CLIENT_ID> -e AEP_CLIENT_SECRET=<AEP_CLIENT_SECRET> -e AEP_ORG_ID=<AEP_ORG_ID> -- npx -y @focusgts/aep-mcp-server. For a setup that also sets AEP_SANDBOX_NAME and AEP_MODE, use claude mcp add --env AEP_CLIENT_ID=<AEP_CLIENT_ID> --env AEP_CLIENT_SECRET=<AEP_CLIENT_SECRET> --env AEP_ORG_ID=<AEP_ORG_ID> --env AEP_SANDBOX_NAME=<AEP_SANDBOX_NAME> --env AEP_MODE=<AEP_MODE> --transport stdio aep -- npx -y @focusgts/aep-mcp-server`.

What does aep do?

It gives the agent Adobe Experience Platform tools: schemas, datasets, ingestion, segments and erasure requests. The server exposes 61 tools in 14 categories.

Why does aep refuse my write?

Under safe, writes go through only when Adobe classifies the sandbox as development. When the type cannot be confirmed, the change is blocked. AEP_ALLOW_MUTATIONS=true has to be set too.

Similar MCP servers

All MCP servers for Data and databases →

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor