Skip to main content
Glama
Upendrasengar

Adobe Target MCP

Adobe Target MCP

npm version npm downloads Node License

A Model Context Protocol server for Adobe Target. Lets AI assistants manage A/B and Experience Targeting activities through the Adobe Target Admin API, with automatic Adobe IMS OAuth token handling (fetch, cache, refresh).

Quickstart

Via Claude Code:

claude mcp add adobe-target \
  -e ADOBE_CLIENT_ID=your-client-id \
  -e ADOBE_API_KEY=your-client-id \
  -e ADOBE_CLIENT_SECRET=your-client-secret \
  -e ADOBE_TENANT=your-tenant \
  -- npx -y @upendra_sengar/adobe-target-mcp

Related MCP server: AEM MCP Server

Requirements

  • Node.js >= 18

  • An Adobe Developer Console project with:

    • The Adobe Target API enabled

    • OAuth Server-to-Server credentials (client ID + client secret)

  • Your Adobe Target tenant name (the subdomain in mc.adobe.io/<tenant>/target/...)

Configuration

All configuration is passed as environment variables — no keys are ever stored in this package.

Variable

Required

Description

ADOBE_CLIENT_ID

Client ID from your Adobe Developer Console project

ADOBE_API_KEY

API key sent as X-Api-Key (same value as the client ID)

ADOBE_CLIENT_SECRET

Client secret from your Adobe Developer Console project

ADOBE_TENANT

Adobe Target tenant subdomain

PORT

Port for SSE / Streamable HTTP modes (default 3001)

MCP_TOOL_LOGGING

true to enable verbose per-tool logging

MCP_LOG_FILE

File path for logs in stdio mode

For local development you can copy .env.example to .env instead.

Installation

These clients all use the same mcpServers format:

{
  "mcpServers": {
    "adobe-target": {
      "command": "npx",
      "args": ["-y", "@upendra_sengar/adobe-target-mcp"],
      "env": {
        "ADOBE_CLIENT_ID": "your-client-id",
        "ADOBE_API_KEY": "your-client-id",
        "ADOBE_CLIENT_SECRET": "your-client-secret",
        "ADOBE_TENANT": "your-tenant"
      }
    }
  }
}

Add to your workspace .vscode/mcp.json:

{
  "servers": {
    "adobe-target": {
      "command": "npx",
      "args": ["-y", "@upendra_sengar/adobe-target-mcp"],
      "env": {
        "ADOBE_CLIENT_ID": "your-client-id",
        "ADOBE_API_KEY": "your-client-id",
        "ADOBE_CLIENT_SECRET": "your-client-secret",
        "ADOBE_TENANT": "your-tenant"
      }
    }
  }
}

Transports

Mode

Command

Use case

stdio (default)

npx -y @upendra_sengar/adobe-target-mcp

Local MCP clients (Claude Desktop, Cursor, …)

Streamable HTTP

npx -y @upendra_sengar/adobe-target-mcp --streamable-http

Remote / shared deployments (POST /mcp)

SSE

npx -y @upendra_sengar/adobe-target-mcp --sse

Legacy SSE clients (GET /sse, POST /messages)

HTTP modes listen on PORT (default 3001).

Tools

Tool

Description

list_activities

List activities with filters (state, name, type, priority) and pagination

get_ab_activity_by_id

Get full details of an A/B activity

create_ab_activity

Create a new A/B activity

update_activity

Update an existing activity

update_activity_name

Rename an activity

update_activity_selector

Update the DOM selector of an activity's experience location

Authentication flow

The server exchanges your client credentials for an Adobe IMS access token (ims-na1.adobelogin.com), caches it, and refreshes it automatically 5 minutes before expiry. Tokens are held in memory only — nothing is written to disk.

Docker

docker build -t adobe-target-mcp .
docker run -i --rm \
  -e ADOBE_CLIENT_ID=your-client-id \
  -e ADOBE_API_KEY=your-client-id \
  -e ADOBE_CLIENT_SECRET=your-client-secret \
  -e ADOBE_TENANT=your-tenant \
  adobe-target-mcp

License

MIT

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

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

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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/Upendrasengar/adobe-target-mcp'

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