adobe-cja-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@adobe-cja-mcpshow top pages by sessions today"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Adobe Customer Journey Analytics MCP Server
Model Context Protocol (MCP) server for Adobe Customer Journey Analytics (CJA), enabling AI-powered analytics queries through Claude and other MCP clients.
⚡ Quick Start (Simplest Setup)
No repository cloning required! Users can run this MCP server with just 2 steps:
1. Install uv (Python package manager)
# macOS/Linux
brew install uv
# Or with curl
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"2. Configure Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"Adobe CJA": {
"command": "uvx",
"args": ["adobe-cja-mcp"],
"env": {
"ADOBE_CLIENT_ID": "your_client_id_here",
"ADOBE_CLIENT_SECRET": "your_client_secret_here",
"ADOBE_ORG_ID": "your_org_id@AdobeOrg",
"ADOBE_DATA_VIEW_ID": "dv_your_dataview_id"
}
}
}
}That's it!
Restart Claude Desktop and uvx will automatically download and run the MCP server from PyPI - just like npx for Node.js!
Related MCP server: Amazon Ads Manager MCP Server
Overview
This MCP server provides tools for querying Adobe CJA data, including:
Running analytics reports with dimensions and metrics
Multi-dimensional breakdown analysis
Time-series trend analysis at various granularities
Searching and filtering dimension values
Listing available dimensions and metrics
Data view configuration access
Features
Core Reporting Tools (MVP):
Run ranked reports with dimensions and metrics
Get top N items for any dimension
List available dimensions and metrics
Access data view configuration
Advanced Reporting:
Breakdown Reports: Multi-dimensional analysis (e.g., pages by device type)
Trended Reports: Time-series analysis with hourly/daily/weekly/monthly granularity
Dimension Search: Find specific dimension values (pages, products, campaigns)
Segment Support: Filter reports with segment IDs
Adobe CJA API Permissions
Required Permissions Scope
For this MCP server to function, your Adobe API credentials (OAuth 2.0 Server-to-Server) must have the following permissions granted in Adobe Admin Console.
Authentication Scopes
Your API credentials require these OAuth scopes:
openid
AdobeID
read_organizations
additional_info.projectedProductContext
cja.reporting # CRITICAL - Required for all reporting operations
cja.workspace # Required for workspace objects (projects, filters, etc.)Critical Permissions (Required for Core Functionality)
Without these permissions, the MCP server cannot perform analytics queries:
1. CJA Reporting API - Ranked Reports
API Endpoint:
POST https://cja.adobe.io/reportsPermission: CJA Reporting API Access
Required For:
Running analytical reports with dimensions and metrics
Querying website performance data (sessions, page views, conversions)
Generating attribution analysis
Creating breakdown reports
MCP Tools Blocked Without Permission:
cja_run_report- Main reporting toolcja_get_top_items- Top performers analysiscja_get_trended_report- Time-series analysiscja_get_breakdown_report- Multi-dimensional breakdownscja_get_sessions_data- Session analyticscja_get_conversions_data- Conversion trackingcja_get_attribution_analysis- Attribution modelingcja_get_funnel_analysis- Funnel analysis
2. CJA Reporting API - Top Items
API Endpoint:
GET https://cja.adobe.io/reports/topItemsPermission: CJA Reporting API Access
Required For:
Ranking dimension items by metrics
Finding top pages, products, campaigns
MCP Tools Blocked Without Permission:
cja_get_top_items(alternative implementation)
Working Permissions (Read-Only Access)
These permissions are typically granted by default for read-only CJA API access and should already be available:
GET
/data/dataviews/{id}/dimensions- List available dimensionsGET
/data/dataviews/{id}/metrics- List available metricsGET
/data/dataviews/{id}- Get data view configuration detailsGET
/calculatedmetrics- List calculated metricsGET
/filters- List filters/segmentsGET
/dateranges- List date rangesGET
/annotations- List annotationsGET
/projects- List Analysis Workspace projectsGET
/data/connections- List data connections
Optional Permissions (Enhanced Features)
These permissions enable additional features but are not required for basic operation:
Individual Dimension/Metric Details
Endpoints:
GET /data/dataviews/{id}/dimensions/{dimId}GET /data/dataviews/{id}/metrics/{metricId}
Benefit: Get detailed metadata for specific dimensions/metrics
Workaround: Use list endpoints instead
Filter Validation
Endpoint:
POST /filters/validateBenefit: Validate filter definitions before use
Workaround: Test filters directly in reports
List All Data Views
Endpoint:
GET /dataviewsBenefit: Discover all available data views
Workaround: Use configured data view ID from environment variables
Setting Up Permissions in Adobe Admin Console
Step 1: Navigate to API Credentials
Log in to Adobe Admin Console
Navigate to Products → Customer Journey Analytics
Click on API Credentials
Select your OAuth Server-to-Server credential (Client ID)
Step 2: Add Product Profile
Click Add Product Profile
Select a profile that includes CJA Reporting API Access
Ensure the profile has the following permissions:
Reporting API: Full access to POST /reports and GET /reports/topItems
Workspace API: Access to filters, calculated metrics, projects
Data Views: Read access to configured data views
Step 3: Verify OAuth Scopes
In the API credential configuration, verify these scopes are enabled:
openidAdobeIDread_organizationsadditional_info.projectedProductContextcja.reporting← CRITICALcja.workspace← CRITICAL
Step 4: Generate New Credentials (if needed)
If updating an existing credential doesn't enable reporting access:
Create a new OAuth Server-to-Server credential
Add CJA API as a service
Select a Product Profile with full Reporting API access
Copy the new Client ID and Client Secret to your
.envfile
Example Queries and Expected Results
Session Analysis
Query:
Show me session count in a bar chart for the last 30 daysWhat Happens:
Claude identifies you want session metrics over time
Calls
cja_get_trended_reportorcja_run_reportwith:Metric:
sessionsorvisitsDate range: Last 30 days
Granularity:
day
Formats results as a text-based bar chart or table
Returns daily session counts with visualization
Expected Output:
Session Count - Last 30 Days
Oct 1 ████████████████ 1,245
Oct 2 ██████████████ 1,108
Oct 3 ███████████████ 1,189
...
Oct 30 ████████████████████ 1,523
Total Sessions: 38,420
Average: 1,281 sessions/day
Peak: Oct 30 (1,523 sessions)Top Pages Analysis
Query:
What are the top 10 pages by page views this month?What Happens:
Calls
cja_get_top_itemswith:Dimension:
pageorpageNameMetric:
pageviewsDate range: This month
Limit: 10
Returns ranked list of pages
Expected Output:
Top 10 Pages by Page Views - October 2025
1. /home 15,234 views
2. /products 8,901 views
3. /about 6,543 views
4. /contact 4,321 views
5. /blog/article-123 3,987 views
6. /pricing 3,456 views
7. /features 2,890 views
8. /blog 2,543 views
9. /documentation 2,234 views
10. /support 1,987 views
Total: 52,096 page viewsConversion Funnel
Query:
Show me the checkout funnel conversion rates for last weekWhat Happens:
Calls
cja_get_funnel_analysiswith predefined checkout stepsOr calls
cja_run_reportmultiple times for each funnel stepCalculates drop-off rates between steps
Expected Output:
Checkout Funnel - Last 7 Days
Step 1: Product Page → 10,000 visitors (100.0%)
↓ 45.0%
Step 2: Add to Cart → 4,500 visitors ( 45.0%)
↓ 66.7%
Step 3: Checkout Started → 3,000 visitors ( 30.0%)
↓ 50.0%
Step 4: Payment Info → 1,500 visitors ( 15.0%)
↓ 80.0%
Step 5: Purchase → 1,200 visitors ( 12.0%)
Overall Conversion Rate: 12.0%
Biggest Drop-off: Product Page → Add to Cart (55%)Marketing Attribution
Query:
Show me first-touch attribution for conversions in the last 14 daysWhat Happens:
Calls
cja_get_attribution_analysiswith:Attribution model:
first_touchSuccess event:
ordersorconversionsDate range: Last 14 days
Returns marketing channel credit distribution
Expected Output:
First-Touch Attribution - Last 14 Days
Total Conversions: 450
Channel Conversions % of Total Revenue
──────────────────────────────────────────────────────────
Organic Search 180 40.0% $45,000
Paid Search 135 30.0% $33,750
Direct 68 15.1% $17,000
Email 45 10.0% $11,250
Social Media 22 4.9% $5,500
Top First-Touch Channel: Organic Search
Highest Revenue/Conversion: Paid Search ($250 avg)Available MCP Tools
Core Reporting
cja_run_report- Run custom analytics reportscja_get_top_items- Get top-performing items for a dimensioncja_get_trended_report- Get time-series trendscja_get_breakdown_report- Get multi-dimensional breakdowns
Metadata
cja_list_dimensions- List available dimensionscja_list_metrics- List available metricscja_list_calculated_metrics- List calculated metricscja_list_filters- List filters/segmentscja_list_date_ranges- List predefined date rangescja_get_dataview_info- Get data view configuration
Advanced Analytics
cja_search_dimension_items- Search for dimension valuescja_get_sessions_data- Analyze session metricscja_get_conversions_data- Analyze conversion eventscja_get_attribution_analysis- Run attribution modelscja_get_funnel_analysis- Analyze conversion funnels
License
MIT License - see LICENSE file for details
Support
For issues or questions:
Adobe CJA API Documentation: https://developer.adobe.com/cja-apis/docs/
Adobe Developer Console: https://developer.adobe.com/console
Model Context Protocol: https://modelcontextprotocol.io/
Maintenance
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
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/markhilton/adobe-cja-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server