Title: Contentstack MCP server | Contentstack
URL Source: https://www.contentstack.com/docs/agent-os/contentstack-mcp-server
Markdown Content:
A complete guide for setting up, configuring, and using the Contentstack MCP Server with AI agents and tools.
The Model Context Protocol (MCP) is an open standard that lets AI agents (Claude, Cursor, and others) connect to external systems through a common interface. Instead of writing bespoke integration code every time you want an AI to talk to an API, you run an MCP server that exposes those APIs as structured, typed tools. The agent calls those tools and interprets the results in natural language.
The Contentstack MCP Server bridges your Contentstack stack and related services, the Content Management API, Content Delivery API, Analytics, Automations, Launch, BrandKit, Personalize, Developer Hub, and Lytics to any MCP compatible AI agent.
Once configured, your AI agent can:
-
Read, create, update, publish, and unpublish entries and assets in plain language
-
Inspect audit logs, version history, and workflow stages
-
Trigger deployments, check logs, and revalidate CDN caches in Launch
-
Inspect and run deterministic workflows, including HTTP-triggered automation workflow
-
Generate on-brand content via BrandKit AI using voice profiles and a knowledge vault
-
Query audience segments, user profiles, and A/B test results in Personalize and Lytics
-
Manage Marketplace apps and OAuth settings in Developer Hub
-
Pull API usage, cache hit rates, and SDK adoption metrics from Analytics
-
Developers building AI-powered content workflows or automations
-
Content architects who want an agent to help audit, model, or migrate content
-
DevRel and solutions engineers demonstrating Contentstack capabilities with AI
-
AI workflow builders connecting Contentstack to agent frameworks and pipelines
Before you start, make sure you have:
- An active Contentstack account
- Node.js 18 or later installed locally (required to run npx)
- A supported MCP client:
Most API groups require OAuth authentication. Run this command once before using the server:
This opens a browser window. You will:
- Log in to your Contentstack account
- Select your region (US, EU, AU, etc.)
- Select your organisation
- Grant the MCP server access
The resulting OAuth tokens are saved locally on your machine. They are reused automatically by the server on subsequent runs, you do not need to re-authenticate unless your tokens expire.
| Group | Authentication method |
|---|
| CMA, CMA Extended | OAuth or Management Token |
| Analytics | OAuth |
| Automations | OAuth |
| BrandKit | OAuth |
| Launch | OAuth |
| DeveloperHub | OAuth |
| Personalize | OAuth |
| CDA | Token-based (delivery token) |
| Lytics | Token-based (Lytics access token) |
CDA and Lytics do not use OAuth. They authenticate with static tokens you provide in environment variables.
If OAuth authentication is not required and you only need access to content management tooling, CMA and CMA Extended can be authenticated using a management token. This approach is particularly well suited for headless environments and CI/CD pipelines where an interactive browser-based authentication flow is unavailable.
Because there is no persisted OAuth session available to determine the target data center automatically, you must explicitly specify the region using either the --region flag or the CONTENTSTACK_REGION environment variable.
Management token authentication is supported only for CMA and CMA Extended. Services such as Analytics, Automations, BrandKit, Launch, DeveloperHub, and Personalize continue to require OAuth authentication. The CDA does not support OAuth or management token authentication; instead, it uses a delivery token.
| Group | OAuth | Management Token | Delivery Token |
|---|
| CMA | Required | Required | Not Required |
| CMA Extended | Required | Required | Not Required |
| CDA | Not Required | Not Required | Required |
| Analytics | Required | Not Required | Not Required |
| Automations | Required | Not Required | Not Required |
| BrandKit | Required | Not Required | Not Required |
| Launch | Required | Not Required | Not Required |
| DeveloperHub | Required | Not Required | Not Required |
| Personalize | Required |
Contentstack operates across multiple data center regions. Each service uses a region-specific base URL, and the appropriate endpoints are automatically resolved based on the region you configure.
| Code | Data Center | Common Aliases |
|---|
| NA | AWS North America (default) | us, aws-na, aws_na |
| EU | AWS Europe | aws-eu, aws_eu |
| AU | AWS Australia | aws-au, aws_au |
| AZURE_NA | Azure North America | azure-na |
| AZURE_EU | Azure Europe | azure-eu |
| GCP_NA | GCP North America | gcp-na |
| GCP_EU | GCP Europe | gcp-eu |
Region aliases are case-insensitive and separator-insensitive. For example, EU, eu, aws-eu, and AWS_EU all resolve to the same EU region.
Region resolution follows this order of precedence:
- Explicit configuration: A region specified using the --region flag or the CONTENTSTACK_REGION environment variable always takes precedence. If the provided value is not recognized, the application returns an error.
- **OAuth session:**When you authenticate using npx @contentstack/mcp --auth, the selected data center is stored with the OAuth session and is used automatically when no explicit region is configured.
- Default region: If neither an explicit region nor a saved OAuth session is available, the region defaults to NA.
When using a delivery-token-only (CDA) or management-token-only (CMA) configuration, no OAuth session is available to determine the target region automatically. In these scenarios, you must explicitly set the region using the CONTENTSTACK_REGION environment variable or the --region flag to ensure requests are routed to the correct data center.
Regional endpoint mappings are sourced from Contentstack’s official region registry, ensuring that the server remains automatically synchronized with newly added and updated data centers. The registry is available at https://artifacts.contentstack.com/regions.json.
No installation or repository cloning is needed. The server runs on demand via npx:
The -y flag (used in MCP client configs) automatically confirms the npx prompt, so the agent can start the server without human input:
npx pulls the latest published version of @contentstack/mcp from npm each time it runs. This means you always get the latest tool definitions without a manual upgrade step.
The server is configured through environment variables or equivalent CLI arguments. Both work identically, use whichever your MCP client supports.
| Variable | CLI argument | Description | Required for |
|---|
| CONTENTSTACK_API_KEY | --stack-api-key | Your Contentstack Stack API Key | CMA, CMA Extended, CDA, DeveloperHub |
| CONTENTSTACK_DELIVERY_TOKEN | --delivery-token | Delivery token for the target environment | CDA only |
| CONTENTSTACK_MANAGEMENT_TOKEN | --management-token | Management token: an alternative to OAuth for CMA / CMA Extended | CMA / CMA Extended without OAuth |
| CONTENTSTACK_REGION | --region | center to target (see Regions) | Data |
| CONTENTSTACK_BRAND_KIT_ID | --brand-kit-id | Your Brand Kit ID | BrandKit only |
| CONTENTSTACK_LAUNCH_PROJECT_ID | --launch-project-id | Your Launch Project UID | Launch only |
| CONTENTSTACK_ORGANIZATION_UID | --organization-uid | Your Organisation UID |
You only need to configure the environment variables required for the services you're actually using. If you're working solely with CMA, all you need is CONTENTSTACK_API_KEY along with a valid authentication method, either an OAuth session or a CONTENTSTACK_MANAGEMENT_TOKEN. If you also enable CDA, make sure to additionally provide a CONTENTSTACK_DELIVERY_TOKEN.
Starting in version 0.9.0, each tools/list response can enrich supported tool descriptions and input schemas with live metadata, helping agents select valid values instead of guessing. This feature is enabled by default; to disable it, set CONTENTSTACK_MCP_ENRICH_TOOLS=false.
- CDA tools bootstrap from the delivery token via GET /v3/content_types, along with the configured environment, branch, and locale.
- CMA and CMA Extended tools bootstrap from a management token or OAuth session, fetching content types, environments, locales, and branches in parallel.
- Launch tools bootstrap from OAuth via the Launch manage REST API (GET /projects/{project_uid}/environments); GraphQL tool mappers remain unchanged.
- Brand Kit tools bootstrap from OAuth via two REST hosts: voice profiles from the brand-kits-api, and Knowledge Vault from the AI host.
- Personalize tools bootstrap from OAuth via the Personalize management API, covering attributes, audiences, experiences, and events.
- Developer Hub tools bootstrap from OAuth via the Marketplace apps REST API (GET /apps); the organization UID comes from OAuth or CONTENTSTACK_ORGANIZATION_UID, and the stack API key comes from CONTENTSTACK_API_KEY.
- Each tool's JSON declares an "x-enrich-group" value, cda, cma, launch, brandkit, personalize, or developerhub, with CMA Extended tools using the cma enrichment profile. Rules are defined in tools/enrich-profiles.json.
Stack context is cached for five minutes per connection. CMA enrichment is skipped when only a delivery token is available (for example, CDA-only credentials with CMA groups loaded).
See Build your own MCP Stack-aware enrichment for the full extension spec.
- Stack API Key: Contentstack Dashboard → Settings → API Credentials
- Delivery Token: Contentstack Dashboard → Settings → Tokens → Delivery Tokens → create one for your target environment
- Management Token: Contentstack Dashboard → Settings → Tokens → Management Tokens → create one (only if authenticating CMA without OAuth)
- Brand Kit ID: BrandKit Dashboard → your brand kit's settings page
- Launch Project ID: Launch Dashboard → your project's URL or settings
- Organisation UID: Launch Dashboard → your project's URL or organisation settings
- Personalize Project ID: Personalize Dashboard → your project's settings
- Lytics Access Token:Lytics account settings → API Tokens
Customers on dedicated or private infrastructure whose hosts differ from the standard regional endpoints can override individual service base URLs. When set, an override fully replaces the region-derived base URL for that service, including any path suffix the service expects (for example, Launch's /manage). A trailing slash is trimmed automatically, and any service without an override falls back to the regional default.
| Envrionment Variable | Service |
|---|
| CONTENTSTACK_CMA_BASE_URL | CMA and CMA Extended |
| CONTENTSTACK_CDA_BASE_URL | CDA |
| CONTENTSTACK_DEVELOPERHUB_BASE_URL | Developer Hub |
| CONTENTSTACK_PERSONALIZE_BASE_URL | Personalize |
| CONTENTSTACK_ANALYTICS_BASE_URL | Analytics |
| CONTENTSTACK_AUTOMATIONS_BASE_URL | Automations |
| CONTENTSTACK_LAUNCH_BASE_URL | Launch (include /manage) |
| CONTENTSTACK_BRANDKIT_AI_BASE_URL | BrandKit: AI host |
| CONTENTSTACK_BRANDKIT_API_BASE_URL | BrandKit: brand-kits-api host |
| CONTENTSTACK_LYTICS_BASE_URL | Lytics |
The GROUPS variable controls which API toolsets are exposed to the agent. Loading only what you need is good practice, it reduces the volume of tool definitions sent to the model on every turn, keeping context windows lean and responses focused.
| Group value | Tools | Purpose |
|---|
| cma | 78 | Core content management: entries, assets, content types, branches, releases, publishing, variants, environments, global fields, taxonomies |
| cma-extended | 22 | Audit logs, version history, global field writes, asset folder management, workflow and publish rule inspection — load alongside cma |
| cda | 4 | Published content via CDN: fast, read-only delivery of entries and assets |
| analytics | 8 | API/CDN usage, cache performance, status codes, SDK adoption, device/URL analytics |
| automations | 9 | Agent OS projects, automation inspection, activation controls, and HTTP-triggered workflow executions |
| brandkit | 12 | AI content generation, voice profiles, knowledge vault |
| launch | 27 | Projects, environments, deployments, deploy hooks, logs, file upload, CDN cache revalidation |
| developerhub | 12 | Marketplace app lifecycle, OAuth settings, app installations |
| lytics | 10 | Audiences, user profiles, content topics, classification, fields, tables |
Examples:
bash
Tip For everyday content operations, cma alone is sufficient. Add cma-extended only when the session requires audit trails, version inspection, or workflow context. Loading all is convenient for exploration but sends the full tool list to the model on every turn.
Edit ~/Library/Application Support/Claude/claude_desktop_config.json on macOS, or %APPDATA%\Claude\claude_desktop_config.json on Windows.
Option A: Environment variables (recommended):
Only include the env vars relevant to the groups you are enabling. Remove keys you do not need.
Option B: CLI arguments (use if your client does not support env vars):
After editing the file, restart Claude Desktop to pick up the changes.
Edit ~/.cursor/mcp.json (create it if it does not exist):
Restart Cursor after saving.
Use the claude mcp add command to register the server:
The Contentstack MCP Server uses stdio transport, which is the standard for locally-run MCP servers. Any MCP client that supports stdio should work with the same configuration pattern: point the client at npx -y @contentstack/mcp and pass your credentials via environment variables or CLI arguments.
Authorization: OAuth or Management Token
Load with: GROUPS=cma
Requires: Stack API Key
The core group for content operations. Covers the full lifecycle of entries and assets: create, read, update, delete, publish, unpublish, and localize. Also includes branches, branch aliases, merge jobs, releases, publishing queues, content types, global fields, taxonomies, terms, variants, and environments.
Use this group for:
- Day-to-day content management tasks
- Content modelling and schema inspection
- Bulk publishing or unpublishing workflows
- Branch management and merge operations
78 tools. See the Tool Catalog for the full list.
Authorization: OAuth or Management Token
Load with: GROUPS=cma,cma-extended
Requires: Stack API Key
Extends CMA with administrative and investigative capabilities. Load alongside cma when the session requires:
- Audit logs: every create, update, delete, publish, and unpublish action is recorded.
- Version history: inspect or label every version of an entry or asset.
- Global field writes: create, update, and delete global fields.
- Asset folder management: create, rename, and delete asset folders.
- Workflow inspection: retrieve workflow definitions and publish rules.
22 tools. See the Tool Catalog for the full list.
Authentication: Token-based
Load with: GROUPS=cda
Requires: Stack API Key + Delivery Token
Delivers published content through Contentstack's global CDN. Read-only. Returns only content that has been published to the target environment — draft or unpublished entries are not visible.
Does not require OAuth. Authenticate by providing a delivery token scoped to your target environment.
4 tools. See the Tool Catalog for the full list.
Authentication: OAuth
Load with: GROUPS=analytics
Requires: No additional tokens
Usage analytics for your Contentstack organisation: API call volumes, CDN bandwidth, cache hit/miss ratios, HTTP status code distribution, SDK version adoption, and URL-level traffic patterns.
All analytics tools are asynchronous — they return a jobId which you then pass to get_job_data to retrieve the results once the job completes.
8 tools. See the Tool Catalog for the full list.
Load with: GROUPS=automations
AuthenticationOAuth
Requires: No additional tokens
Agent OS management and deterministic workflow execution. Manage Agent OS projects, inspect automation rules, activate or deactivate configured automations, and run workflows that use an HTTP Request trigger.
Use list_automations or get_automation with show_steps: true to identify HTTP-triggered workflows. Those automations expose a trigger id; pass that value to trigger_automation with an optional JSON payload to run the workflow through MCP. This lets an agent choose when to run a workflow while Automation Hub controls exactly how the work is performed.
See the Tool Catalog for the full list.
Authentication: OAuth
Load with: GROUPS=brandkit
Requires: Brand Kit ID
AI-powered content generation grounded in your brand. BrandKit provides:
- Voice Profiles: define the tone, style, formality, and complexity of generated content.
- Knowledge Vault: a store of brand guidelines, reference materials, and tone-of-voice examples.
- Generative AI: combines your voice profile and knowledge vault context to produce on-brand content.
12 tools. See the Tool Catalog for the full list.
Authentication: OAuth
Load with: GROUPS=launch
Requires: Launch Project ID + Organisation UID
27 tools
Full control over Launch, Contentstack's hosting and deployment platform. Manage projects and environments, create and trigger deploy hooks, monitor deployment status and build logs, fetch server runtime logs, upload ZIP files for file-based deployments, and revalidate CDN caches after content updates.
Supports both Git-connected projects (GitHub, Bitbucket) and file-upload projects.
See the Tool Catalog for the full list.
Authentication: OAuth
Load with: GROUPS=developerhub
Requires: Stack API Key
12 tools
Manage Contentstack Marketplace apps. Create, update, and delete apps, configure OAuth settings, install apps into stacks or organisations, and inspect existing installations.
Use this group when building or managing custom integrations, UI extensions, webhooks, or automation apps on the Contentstack Marketplace.
When enrichment is enabled, tool descriptions display your organization's Marketplace apps, and app_uid parameters are populated with enums from GET/apps.
See the Tool Catalog for the full list.
Token-based
Load with: GROUPS=lytics
Requires: Lytics Access Token
Access your Lytics customer data platform. Retrieve audience segments, look up individual user profiles, explore content topics and classifications, inspect schema fields and data tables, and classify or enrich content via Lytics' AI engine.
Does not require OAuth. Authenticate with a Lytics access token.
10 tools. See the Tool Catalog for the full list.
OAuth
Load with: GROUPS=personalize
Requires: Personalize Project ID
24 tools
Configure and inspect Contentstack Personalize: manage custom attributes and audience segments, create and manage personalization experiences (both Segmented and A/B Test types), define events for conversion tracking, retrieve analytics summaries and time-series data for experience versions, and look up geolocation data for geographic targeting rules.
24 tools. See the Tool Catalog for the full list.
| Group | Authentication | Additional credentials |
|---|
| CMA | OAuth or Management Token | Stack API Key |
| CMA Extended | OAuth or Management Token | Stack API Key |
| CDA | Token-based | Stack API Key + Delivery Token |
| Analytics | OAuth | — |
| Automations | OAuth | — |
| BrandKit | OAuth | Brand Kit ID |
| Launch | OAuth | Launch Project ID + Organisation UID |
| DeveloperHub | OAuth | Stack API Key |
| Lytics | Token-based | Lytics Access Token |
| Personalize | OAuth | Personalize Project ID |
Once configured, you interact with Contentstack entirely through natural language. Here are examples of what agents can do with different groups enabled.
Content management (CMA):
- "Get all entries for the article content type that were published in the last 30 days"
- "Create a new entry in blog_post with the title 'Getting started with MCP' and publish it to the production environment"
- "Show me all entries that reference the asset with UID blt1234abcd"
- "Create a branch called feature/new-homepage from main and add the hero entry to a release"
- "What environments does this stack have, and which locales are configured?"
Auditing and investigation (CMA, CMA-extended):
- "Show me the audit log for the last 24 hours - who changed what?"
- "What versions exist for entry blt9abc in the product content type? Label version 4 as 'Pre-launch approved'"
- "Which workflow stages require approval before an entry can be published?"
Content delivery (CDA):
- "Fetch the latest published entries from the homepage_banner content type on the production environment"
- "What does the live version of entry blt5678efgh look like right now?"
Deployments (Launch):
- "What's the current deployment status of the staging environment?"
- "Fetch the build logs from the last deployment — did it fail anywhere?"
- "Trigger the deploy hook for the production environment"
- "Revalidate the CDN cache after I update the hero entry"
Brand content (Brandkit):
- "Generate a product description for a new running shoe using the 'Active lifestyle' voice profile"
- "Add the updated brand guidelines document to the Knowledge Vault"
- "What voice profiles are available in my Brand Kit?"
Personalization (Personalize):
- "Show me all active A/B test experiences and their current conversion rates"
- "Create a new audience segment for users in Germany who have viewed more than 3 product pages"
- "What's the analytics summary for experience version ver_abc123 over the last 7 days?"
| Symptom | Likely cause | Fix |
|---|
| "Unauthorized" errors on CMA / Analytics / Launch calls | OAuth not run, or tokens expired | Run npx @contentstack/mcp --auth and complete the flow |
| CDA returns empty or 401 errors | Missing or incorrect delivery token | Check CONTENTSTACK_DELIVERY_TOKEN — it must be scoped to the correct environment |
| Contentstack tools not appearing in your MCP client | GROUPS value is wrong or malformed | Check for typos and spaces — use comma-separated values with no spaces, e.g. cma,cda |
| Launch tools fail with auth errors | Organisation UID not set | Add CONTENTSTACK_ORGANIZATION_UID to your environment — find it in the Launch dashboard URL |
| Lytics tools return 403 | Expired or incorrect access token | Regenerate your Lytics access token and update LYTICS_ACCESS_TOKEN |
| Analytics get_job_data returns "200 Job active" | Job still processing | Wait a few seconds and retry — analytics jobs are asynchronous |
| npx prompts for confirmation in the client | -y flag missing | Ensure your args array includes "-y" as the first argument after "npx" |
| Requests hit the wrong data center, or return 404 / 401 | Region not set (no OAuth to infer it) | Set CONTENTSTACK_REGION / --region to match your stack's data center |
Full reference for every tool exposed by each group.
| Tool | Description |
|---|
| publish_an_entry | Publishes a specified entry of a content type to one or more environments and locales within a branch of the stack. Optionally schedule the publish for a future time. |
| unpublish_an_entry | Unpublishes a specified entry from selected environments and locales within a branch, removing it from the CDN. Optionally schedule the unpublish for a future time. |
| publish_variants_of_an_entry | Publishes one or more variants of an entry to selected environments and locales within a branch. |
| create_an_entry | Creates a new entry in the specified Contentstack stack, targeting a defined content type and branch, with support for locale selection and structured entry data. |
| delete_an_entry | Deletes a specified entry from a Contentstack stack, targeting the provided content type and entry UID, with optional parameters for branch, locale, and deletion of all localized variants. |
| get_all_entries | Retrieves entry details for a specified content type within a Contentstack stack, supporting branch selection, pagination, versioning, locale filtering, advanced query parameters, optional draft overlay, and optional inclusion of metadata, workflow, branch, and publish details. |
| get_single_entry | Retrieves metadata and field values for a specified entry within a given content type, supporting branch, version, and locale selection. |
| update_an_entry | Updates an existing entry in the given content type, branch, and locale by replacing its field data. |
| get_all_content_types | Retrieves all content types in the stack, with pagination, query filtering, and optional inclusion of the global field schema. |
Load alongside cma with GROUPS=cma,cma-extended.
| Tool | Description |
|---|
| get_audit_log | Retrieves a paginated list of audit log entries for the stack. Every create, update, delete, publish, and unpublish action is recorded. |
| get_audit_log_item | Retrieves the full detail of a single audit log entry, including before and after field values, the user who made the change, and the timestamp. |
| get_all_versions_of_an_entry | Retrieves the full version history of a specific entry. |
| set_entry_version_name | Assigns a human-readable label to a specific version of an entry. Named versions are visible in the Contentstack UI. |
| delete_entry_version_name | Removes the label previously assigned to a specific entry version. The version itself is not deleted. |
| create_a_global_field | Creates a new global field in the stack. Changes propagate to every content type that uses it. |
| update_a_global_field | Updates the schema or title of an existing global field. Changes propagate to every content type that embeds this global field. |
| delete_a_global_field | Permanently deletes a global field and removes its embedded occurrence from every content type that references it. This action cannot be undone. |
| export_global_field | Exports a global field definition as a JSON object. |
| update_asset_details | Updates the metadata of an existing asset — title, description, or tags — without replacing the underlying file. |
| get_assets_of_a_specific_folder |
| Tool | Description |
|---|
| get_all_assets_cdn | Retrieves published assets from the CDN. Returns metadata including URLs, file types, dimensions, and publish status. Supports pagination, branch and locale selection, and optional image dimension inclusion. |
| get_all_entries_cdn | Retrieves published entries of a content type from the CDN for fast, global delivery. Supports filtering, sorting, reference resolution, locale selection, and fallback. Maximum 100 entries per request. |
| get_a_single_asset_cdn | Retrieves a specific published asset from the CDN by its unique identifier. |
| get_a_single_entry_cdn | Retrieves a specific published entry from the CDN by its unique identifier and content type. |
All analytics tools are asynchronous: they return a jobId that you pass to get_job_data to retrieve results.
| Tool | Description |
|---|
| get_subscription_usage | Retrieves a summary of Launch resource consumption within your organisation for a specified date range. Returns a jobId for get_job_data. |
| get_device_usage | Analyzes device and SDK usage patterns across your Contentstack services over a specified period. Returns a jobId for get_job_data. |
| get_usage_analytics | Retrieves API and CDN usage analytics broken down by service type. Returns a jobId for get_job_data. |
| get_top_urls | Analyzes URL-level traffic patterns across your Contentstack services. Returns a jobId for get_job_data. |
| get_status_code | Retrieves HTTP status code distribution across your services for a specified period. Returns a jobId for get_job_data. |
| get_cache_usage | Analyzes cache performance by tracking HIT and MISS rates across your services. Returns a jobId for get_job_data. |
| get_sdk_usage | Tracks SDK adoption and usage patterns across your services. Returns a jobId for get_job_data. |
| get_job_data | Retrieves the completed results for an asynchronous analytics job using its jobId. If the job is still processing, returns "200 Job active" — retry after a short delay. |
Agent OS project management, automation discovery, activation controls, and deterministic HTTP-triggered workflow execution. Use list_automations or get_automation with show_steps: true to find automations whose step groups include http, then pass that automation trigger's id to trigger_automation.
| Tool | Description |
|---|
| list_automation_projects | Lists Agent OS projects in the organization with pagination, sorting, and optional count support. |
| get_automation_project | Fetches a single Agent OS project by project UID. |
| get_usage_analytics | Retrieves API and CDN usage analytics broken down by service type. Returns a jobId for get_job_data. |
| create_automation_project | Creates an Agent OS project with title, description, and tags. |
| update_automation_project | Updates an Agent OS project's title, description, or tags. |
| delete_automation_project | Deletes an Agent OS project. This action is permanent. |
| list_automations | Lists automations in a project. Use show_steps: true to inspect triggers and steps, including HTTP-triggered automations. |
| get_automation | Fetches a single automation by automation UID, optionally including trigger and step details. |
| trigger_automation | Runs an automation configured with an HTTP request trigger by calling /run/{trigger_id}. Pass the automation trigger's id and an optional JSON payload. |
| set_automation_active | Activates or deactivates automation. The automation must already have a trigger and action configured before it can be activated. |
| Tool | Description |
|---|
| create_an_content_in_knowledge_vault | Creates new content in the Brand Kit Knowledge Vault to provide contextual information for AI-powered content generation. |
| get_all_contents_in_knowledge_vault | Retrieves all content entries stored in the Knowledge Vault for a specific Brand Kit. |
| get_a_single_content_in_knowledge_vault | Retrieves detailed information for a specific content entry in the Knowledge Vault by its unique identifier. |
| update_a_content_in_knowledge_vault | Modifies existing content in the Knowledge Vault. |
| delete_a_content_from_knowledge_vault | Permanently removes a content entry from the Knowledge Vault. This action is irreversible. |
| create_a_voice_profile | Creates a new Voice Profile that defines tone, style, and communication characteristics for AI-generated content. |
| get_all_voice_profiles | Retrieves all Voice Profiles configured for a Brand Kit. |
| get_a_single_voice_profile | Retrieves detailed configuration for a specific Voice Profile. |
| update_a_voice_profile | Modifies an existing Voice Profile's characteristics. |
| delete_a_voice_profile | Permanently removes a Voice Profile from the Brand Kit. This action is irreversible. |
| generative_ai | Generates AI-powered content based on a custom prompt while maintaining brand consistency. Optionally leverages Voice Profiles and Knowledge Vault context. |
| Tool | Description |
|---|
| get_environments | Retrieves environment configurations with build settings, deployment information, password protection, and recent commits. |
| get_deploy_hooks | Retrieves deploy hooks configurations with filtering capabilities using cursor-based pagination. |
| get_latest_live_deployment | Retrieves the most recent live deployment for a specified environment or project, including build configuration, Git information, deployment status, and performance metrics. |
| create_deploy_hook | Creates a new deploy hook for an environment, enabling integration with CI/CD pipelines and external automation systems. |
| update_deploy_hook | Updates an existing deploy hook configuration — name and environment association. |
| delete_deploy_hook | Deletes an existing deploy hook, permanently disabling its webhook URL. |
| trigger_deploy_hook | Triggers an existing deploy hook for manual or automated re-deployments. |
| create_deployment | Creates a new deployment for the specified environment using the latest commit from the configured Git branch. |
| revalidate_cdn_cache | Revalidates the CDN cache for an environment, prompting the CDN to fetch the latest content from origin. |
| get_all_projects | Fetches the list of all projects in your organisation with pagination support. |
| create_a_project | Creates a project in Launch using either a Git Provider or File Upload. |
| Tool | Description |
|---|
| get_an_app | Retrieves detailed information for a specific Marketplace App including configuration, metadata, target type, and optionally OAuth settings. |
| get_all_apps | Retrieves all Marketplace Apps in your organisation with filtering, search, sorting, and pagination. |
| get_app_oauth | Retrieves the complete OAuth 2.0 configuration for a Marketplace App including client credentials, redirect URIs, and allowed scopes. |
| get_oauth_scopes | Retrieves the complete list of available OAuth scopes, optionally filtered by app type. |
| create_an_app | Creates a new Marketplace App in your organisation. |
| update_app_oauth | Updates the OAuth configuration for a Marketplace App. |
| update_an_app | Updates an existing Marketplace App's configuration including name, description, advanced settings, UI locations, and webhooks. |
| delete_an_app | Permanently deletes a Marketplace App. Fails if the app is currently installed in any stack — uninstall from all stacks first. |
| install_an_app | Installs a Marketplace App into a target stack or organisation. |
| update_an_app_installation | Updates a specified app installation in a stack or organisation. |
| get_app_installations | Retrieves all installations of a specific Marketplace App, showing which stacks or organisations have it deployed. |
|
| Tool | Description |
|---|
| classify_content | Scrapes and analyzes a website URL to extract and classify content topics, storing results in Lytics for audience segmentation. |
| enrich_content | Enriches content by analyzing a website URL or raw text through Lytics' AI engine. Returns inferred topics, themes, and content classifications. |
| lytics_get_all_audiences | Retrieves all audience segments defined in your Lytics account, including type, validity status, and associated data tables. |
| get_field_information | Retrieves detailed field metadata for a specific audience segment: field definitions, data types, value distributions, and statistics. |
| lytics_get_a_single_audience | Retrieves detailed configuration and metrics for a specific audience segment by its unique identifier. |
| get_content_topics | Retrieves the complete taxonomy of content topics configured in your Lytics account. |
| get_a_user_profile | Retrieves a comprehensive user profile from Lytics by searching for a specific identifier (email, user ID, device ID, etc.). |
| get_accounts | Retrieves all Lytics accounts associated with your instance. |
| get_fields | Retrieves all user schema fields configured in your Lytics account. |
| get_tables | Retrieves schema information for all data tables in your Lytics account (typically User and Content tables). |
| Tool | Description |
|---|
| create_attribute | Creates a new custom attribute in a Personalize project, defining user characteristics for audience segmentation. |
| get_all_attributes | Retrieves all custom and preset attributes available in a Personalize project. |
| update_attribute | Modifies an existing attribute's properties — name, key, or description. |
| delete_attribute | Permanently removes an attribute from a Personalize project. |
| get_all_audiences | Retrieves all audience segments from a Personalize project, with optional filtering by referenced attributes. |
| delete_audience | Permanently removes an audience segment from a Personalize project. |
| create_experience | Creates a new personalization experience (Segmented or A/B Test) in a Personalize project, automatically generating a draft version for configuration. |
| get_all_experiences | Retrieves all personalization experiences from a Personalize project, with optional filtering by referenced audiences or events. |
| get_single_experience | Retrieves detailed information about a specific personalization experience, including its current configuration and status. |
| update_experience | Modifies an existing experience's metadata — name and description. |
| delete_experience | Permanently removes a personalization experience including all associated versions and configurations. |