Developer Preview — This project is in active development. APIs may change. Provide feedback
Skip to content

mrt_bundle_push

Creates a bundle from a pre-built PWA Kit or Storefront Next project and pushes it to Managed Runtime (MRT). Optionally deploys to a target environment after push.

Overview

The mrt_bundle_push tool bundles a pre-built project and uploads it to Managed Runtime. It:

  1. Reads the build directory (default: build).
  2. Creates a bundle with server-only files (SSR) and shared files.
  3. Pushes the bundle to Managed Runtime.
  4. Optionally deploys to a target environment (staging or production).

Important: The project must already be built (e.g., npm run build completed) before using this tool.

This tool is shared across the MRT, PWAV3, and STOREFRONTNEXT toolsets.

Authentication

Requires Managed Runtime (MRT) credentials.

Required:

  • project - MRT project slug
  • api-key - MRT API key

Required when deploy: true:

  • environment - Target environment (e.g., staging, production)

Optional:

  • cloud-origin - Overrides MRT API endpoint and uses ~/.mobify--{hostname} instead of ~/.mobify

Configuration priority: Flags → Environment variables → ~/.mobify config file

See MRT Credentials for complete setup instructions including flags, environment variables, and the ~/.mobify file format. See Authentication Setup for how to get your API key.

Parameters

Defaults for buildDirectory, ssrOnly, and ssrShared are chosen by detected project type (Storefront Next, PWA Kit v3, or generic). Explicit parameters override the project-type defaults.

ParameterTypeRequiredDefaultDescription
buildDirectorystringNobuildPath to build directory containing the built project files. Can be absolute or relative to the project directory.
messagestringNoNoneDeployment message to include with the bundle push. Useful for tracking deployments.
ssrOnlystringNoVaries by project typeGlob patterns for server-only files (SSR), comma-separated or JSON array. These files are only included in the server bundle.
ssrSharedstringNoVaries by project typeGlob patterns for shared files, comma-separated or JSON array. These files are included in both server and client bundles.
deploybooleanNofalseWhether to deploy to an environment after push. When true, environment must be provided via --environment flag or MRT_ENVIRONMENT.

Default values by project type

When buildDirectory, ssrOnly, or ssrShared are omitted, the tool detects the project type and applies these defaults:

Generic (used when no project type is detected; matches CLI b2c mrt bundle deploy defaults):

  • buildDirectory: build
  • ssrOnly: ssr.js, ssr.mjs, server/**/*
  • ssrShared: static/**/*, client/**/*

PWA Kit v3:

  • buildDirectory: build
  • ssrOnly: ssr.js, ssr.js.map, node_modules/**/*.*
  • ssrShared: static/ico/favicon.ico, static/robots.txt, **/*.js, **/*.js.map, **/*.json

Storefront Next:

  • buildDirectory: build
  • ssrOnly: server/**/*, loader.js, streamingHandler.{js,mjs,cjs}, streamingHandler.{js,mjs,cjs}.map, ssr.{js,mjs,cjs}, ssr.{js,mjs,cjs}.map, !static/**/*, sfnext-server-*.mjs, plus exclusions for Storybook and test files
  • ssrShared: client/**/*, static/**/*, **/*.css, image/font extensions, plus exclusions for Storybook and test files

Usage Examples

Push Bundle Only

Push a bundle without deploying:

Use the MCP tool to push the bundle from build directory to Managed Runtime.

Push and Deploy to Staging

Push a bundle and deploy to staging:

Use the MCP tool to build and push my Storefront Next bundle to staging.

Push and Deploy to Production

Push a bundle and deploy to production with a message:

Use the MCP tool to deploy my PWA Kit or Storefront Next bundle to production with a deployment message.

Custom Build Directory

Push from a custom build directory:

Use the MCP tool to push the bundle from dist directory to Managed Runtime.

Output

Returns a push result object containing:

  • bundleId - Unique identifier for the pushed bundle
  • projectSlug - MRT project slug
  • target - Target environment (if deployed)
  • deployed - Whether the bundle was deployed (if deploy: true)
  • message - Deployment message (if provided)

Requirements

  • Pre-built project (run npm run build or equivalent first)
  • MRT API key configured
  • MRT project slug configured
  • Valid build directory with required files

Error Handling

The tool throws an error if:

  • project isn’t provided (required)
  • deploy: true but environment isn’t provided
  • Build directory doesn’t exist or is invalid
  • MRT API authentication fails
  • Bundle push fails

See Also

Released under the Apache-2.0 License.