Skip to main content
Glama

AEP MCP Server

Dos servidores MCP que ofrecen a Claude (y a cualquier cliente compatible con MCP) acceso en lenguaje natural a Adobe Experience Platform, Adobe Journey Optimizer y Real-Time CDP.

Servidor

Archivo

Herramientas

Descripción

AEP (personalizado)

server.py

137+

Cobertura completa de la API AEP/AJO desarrollada con FastMCP

RT-CDP (proxy oficial de Adobe)

rtcdp_proxy.py

18

Proxy del servidor oficial rtcdp-mcp.adobe.io de Adobe


Inicio rápido

1. Ejecuta el script de configuración

./setup.sh

Esto crea un .venv, instala todas las dependencias, instala el hook de pre-commit e imprime el JSON exacto de configuración de MCP para pegarlo, incluyendo la ruta absoluta correcta de Python del venv para tu máquina.

Windows: ejecuta los pasos manualmente: python3 -m venv .venv, .venv\Scripts\activate, pip install -r requirements.txt.

2. Configura las credenciales

Completa tus credenciales desde Adobe Developer Console → Proyecto → OAuth Servidor a Servidor:

# orgs.json was created by setup.sh — edit it now

O usa variables de entorno (fallback para una sola organización):

cp .env.example .env
# edit .env

3. Regístrate con Claude Code

Pega el JSON que imprime setup.sh en .claude/mcp_servers.json, por ejemplo:

{
  "aep": {
    "command": "/path/to/aep-mcp-server/.venv/bin/python",
    "args": ["/path/to/aep-mcp-server/server.py"]
  }
}

Usa siempre la ruta de Python del venv — los clientes MCP lanzan el servidor fuera de cualquier shell activo, por lo que python3 sin más no encontrará los paquetes instalados.

4. Ejecuta

python3 server.py                        # AEP server, default org profile
AEP_PROFILE=MyClient python3 server.py  # start with a specific profile

Related MCP server: Fourth Brain Demo

Configuración multi-organización

orgs.json admite múltiples perfiles con nombre — útil cuando trabajas en varias organizaciones de Adobe o sandboxes:

{
  "default": "ClientA",
  "profiles": {
    "ClientA": {
      "client_id": "...",
      "client_secret": "...",
      "api_key": "...",
      "org_id": "XXXX@AdobeOrg",
      "sandbox": "prod",
      "sandboxes": {
        "dev": "my-sandbox-dev",
        "prod": "my-sandbox-prod"
      }
    },
    "ClientB": {
      "client_id": "...",
      "client_secret": "...",
      "api_key": "...",
      "org_id": "YYYY@AdobeOrg",
      "sandbox": "prod"
    }
  }
}

Cambia de organización en tiempo de ejecución con la herramienta switch_org_profile o estableciendo AEP_PROFILE al inicio. Las cachés de tokens se mantienen por perfil.


Servidor 1 — AEP MCP (server.py)

Desarrollado con FastMCP. Todas las herramientas aceptan un parámetro opcional sandbox; si se omite, se usa el sandbox por defecto del perfil activo.

Conjuntos de datos y lotes

list_datasets · get_dataset · create_dataset · get_batch · list_batches · get_sandbox · list_sandboxes · reset_sandbox

Registro de esquemas XDM

list_schemas · get_schema · create_schema · enable_schema_for_profile · list_field_groups · get_field_group · create_field_group · list_classes · list_data_types · list_descriptors · create_descriptor

Perfil del cliente en tiempo real e identidad

get_profile_by_identity · get_identity_cluster · list_identity_namespaces · get_identity_namespace · list_merge_policies · list_profile_export_jobs · get_profile_export_job

Segmentación / Audiencias

list_segments · get_segment · create_segment · delete_segment · list_segment_jobs · get_segment_job · create_segment_job · list_streaming_jobs

Servicio de consultas

list_queries · get_query · run_query · cancel_query · list_query_runs · list_query_templates · get_query_template · create_query_template · list_scheduled_queries

AJO — Recorridos y campañas

list_journeys · get_journey · list_journey_versions · list_campaigns · get_campaign

AJO — Decisiones de ofertas

list_offers · get_offer · list_placements · list_collections · list_offer_activities · get_offer_activity · list_ranking_formulas · create_eligibility_rule

Servicio de flujo (Orígenes y destinos)

list_connections · get_connection · list_connection_specs · get_connection_spec · list_dataflows · get_dataflow · list_flow_runs · get_flow_run · list_source_connections · get_source_connection · list_target_connections · get_target_connection

Información de observabilidad y alertas

get_metrics · list_alert_subscriptions · get_alert_subscription · get_alerts_by_feature · list_alert_notifications · subscribe_alert

Higiene de datos

list_dataset_expirations · get_dataset_expiration · create_dataset_expiration · cancel_dataset_expiration · list_record_delete_orders · get_record_delete_order · create_record_delete_order · get_hygiene_quota

Preparación de datos (Mapeo)

list_mapping_sets · get_mapping_set · create_mapping_set · preview_mapping_set · list_mappings · get_mapping · validate_mapping_expression · list_data_prep_functions

Atributos calculados

list_computed_attributes · get_computed_attribute · create_computed_attribute · update_computed_attribute

Control de acceso (ABAC)

list_roles · get_role · list_role_subjects · list_role_policies · list_policies · get_policy · get_effective_policies · list_available_permissions · list_users · get_user_roles

Customer Journey Analytics (CJA)

Las herramientas de CJA usan un ID de vista de datos en lugar de un sandbox.

cja_list_connections · cja_get_connection · cja_list_data_views · cja_get_data_view · cja_list_dimensions · cja_list_metrics · cja_list_projects · cja_get_project · cja_create_project · cja_update_project · cja_delete_project · cja_list_filters · cja_get_filter · cja_create_filter · cja_update_filter · cja_delete_filter · cja_list_calculated_metrics · cja_get_calculated_metric · cja_create_calculated_metric · cja_update_calculated_metric · cja_delete_calculated_metric · cja_list_annotations · cja_create_annotation · cja_delete_annotation · cja_run_report

Gestión de organizaciones y multi-organización

list_org_profiles · get_current_org · switch_org_profile · switch_sandbox


Servidor 2 — Proxy RT-CDP (rtcdp_proxy.py)

Un proxy ligero stdio→HTTPS que reenvía las llamadas de herramientas al servidor MCP oficial de Real-Time CDP de Adobe en rtcdp-mcp.adobe.io. Los encabezados de autenticación se obtienen del perfil activo de orgs.json, por lo que switch_org_profile funciona en ambos servidores.

Configura la URL upstream mediante .env (opcional — por defecto usa el endpoint de Adobe):

RTCDP_MCP_URL=https://rtcdp-mcp.adobe.io/mcp

Nota: El servidor MCP de RT-CDP de Adobe es una función restringida. Contacta a tu representante de Adobe para obtener acceso.

Herramientas (proxy desde Adobe)

search_audiences · preview_audience_membership · inspect_audience_evaluation_jobs · inspect_audience_export_jobs · search_destination_connectors · search_destination_accounts · search_destination_flows · search_destination_input_connections · search_destination_output_connections · search_source_connectors · search_source_accounts · search_source_flows · search_source_input_connections · search_source_output_connections · search_identity_namespaces · search_merge_policies · search_organizations · inspect_flow_runs


Estructura del proyecto

server.py                  # AEP FastMCP entrypoint
rtcdp_proxy.py             # RT-CDP stdio→HTTPS proxy
auth.py                    # Auth + HTTP helpers; multi-org profile state
orgs.json                  # Your credentials — GITIGNORED, never commit
orgs.example.json          # Template for orgs.json
.env / .env.example        # Fallback single-org config
requirements.txt
hooks/pre-commit           # Blocks credential commits
scripts/install_hooks.py   # Installs the pre-commit hook
tools/
  datasets.py              # Catalog Service: datasets, batches, sandboxes
  schemas.py               # Schema Registry: XDM schemas, classes, field groups
  profiles.py              # Real-Time Customer Profile, identity, merge policies
  segments.py              # Segmentation: definitions, jobs, streaming
  query.py                 # Query Service: ad-hoc SQL, templates, scheduled
  ajo.py                   # AJO: journeys, campaigns, offers, eligibility rules
  cja.py                   # Customer Journey Analytics
  flows.py                 # Flow Service: connections, dataflows, flow runs
  observability.py         # Observability Insights: metrics, alerts
  data_hygiene.py          # Data Hygiene: dataset TTL, record deletes
  data_prep.py             # Data Prep: mapping sets, expression validation
  computed_attributes.py   # Computed Attributes
  access_control.py        # ABAC: roles, permissions, effective policies
  orgs.py                  # Multi-org: list/switch profiles and sandboxes
  usage_logger.py          # @track decorator — logs tool calls to CSV

Cómo añadir un nuevo módulo de herramientas

  1. Crea tools/new_domain.py con una función register(mcp)

  2. Añade a server.py: impórtalo y llama a new_domain.register(mcp)

  3. Sigue el patrón de herramientas en CLAUDE.md

Flujo de autenticación

auth.py primero verifica los perfiles de orgs.json y luego recurre a las variables de entorno de .env.

  • OAuth S2S (recomendado): establece client_id + client_secret — el token se renueva automáticamente antes de caducar

  • Token estático (desarrollo/pruebas): establece access_token — sin renovación automática

Requisitos

mcp[cli]>=1.3.0
httpx>=0.27.0
python-dotenv>=1.0.0
F
license - not found
Not graded
quality - not tested
B
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.

Related MCP Servers

  • F
    license
    C
    quality
    Not graded
    maintenance
    An MCP server that gives Claude access to Ogury's campaign reporting API, enabling retrieval of campaign performance metrics and reports through natural language queries.
    2
  • F
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that connects Claude.ai to a Notion-based marketing knowledge base, enabling search and retrieval across specialized domains like enterprise platforms and competitive positioning. It provides tools for RAG-style Q\&A and content browsing to assist with drafting RFPs and value propositions.
    1
  • A
    license
    A
    quality
    D
    maintenance
    MCP server for Adobe Customer Journey Analytics, enabling AI-powered analytics queries including reports, breakdowns, trends, and dimension searches through Claude and other MCP clients.
    16
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    MCP server that enables AI agents (Claude Code) to manage Criteo campaigns, ad sets, creatives, audiences, and reports via natural language.

View all related MCP servers

Related MCP Connectors

  • MCP server giving Claude AI access to 22+ NYC public-record databases for real estate due diligence

  • Hosted Amazon Seller and Vendor MCP server for Claude, ChatGPT, Cursor, Codex, Gemini, Copilot.

  • Hosted Amazon Seller Central and Amazon Ads MCP server for Claude, ChatGPT, Cursor, and agents.

View all MCP Connectors

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/amghanekar-deloitte/AEP-MCP_SERVER'

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