MultiTool configuration reference

MultiTool uses a hierarchical TOML file to configure deployments, ingress, and observability. This reference describes all supported fields and their relationships, including CLI and environment variable overrides.

Top-level fields

workspace

  • Type: string
  • Required: optional
  • Description: Name for the MultiTool workspace to which this project belongs.
  • Source: CLI flag --workspace, env var MULTI_WORKSPACE
  • Example:
    workspace = "acme-corp"
    

application

  • Type: string
  • Required: optional
  • Description: Name of the application being deployed.
  • Source: CLI flag --application, env var MULTI_APPLICATION
  • Example:
    application = "billing-api"
    

[config.cloudflare] (Cloudflare)

Defines how MultiTool deploys and observes your app using Cloudflare Workers.

Supported fields

FieldTypeRequiredDescription
wranglerboolean✅ YesWhether to use wrangler.toml to infer Worker name and account ID.
account_idstring❌ NoThe Cloudflare account ID to use when deploying to Workers. Required at runtime. May be provided via --cloudflare-account-id, CLOUDFLARE_ACCOUNT_ID, or inferred from wrangler.toml. Optional in the config file.
worker_namestring❌ NoThe name of the Cloudflare Worker to deploy. Required at runtime. May be provided via --cloudflare-worker-name, CLOUDFLARE_WORKER_NAME, or inferred from wrangler.toml. Optional in the config file.

Example

workspace = "acme-corp"
application = "billing-api"

[config.cloudflare]
wrangler = true
account_id = "abcdef1234567890"
worker_name = "billing-api-worker"

[config.platform] (AWS)

Defines how MultiTool deploys and observes your app using AWS Lambda.

Supported fields

[config.platform.aws-lambda]

FieldTypeRequiredDescription
namestring✅ YesLambda function name.
regionstring✅ YesThe AWS region to deploy into. May also be set via --aws-region or AWS_REGION.

Example

[config.platform.aws-lambda]
name = "auth-service"
region = "us-west-2"

[config.ingress] (AWS ingress)

Defines the HTTP ingress to reach your deployed application on AWS.

Supported fields

[config.ingress.aws-api-gateway]

FieldTypeRequiredDescription
stage-namestring✅ YesGateway stage name
gateway-namestring✅ YesAPI Gateway name
resource-pathstring✅ YesRoute path (e.g. /login)
resource-methodstring✅ YesHTTP method (e.g. POST)
regionstring✅ YesAWS region (same as in platform)

Example

[config.ingress.aws-api-gateway]
stage-name = "dev"
gateway-name = "example-gateway"
resource-path = "/example"
resource-method = "POST"
region = "us-west-2"

config.monitor (Observability)

MultiTool supports monitoring integrations that report the status of your deployments. You may enable one observability provider depending on your target platform.

For AWS:

Use [config.monitor.aws-cloudwatch] to enable CloudWatch metrics collection.

  • Description: Enables AWS CloudWatch monitoring.
  • Fields: None (presence enables integration)
[config.monitor.aws-cloudwatch]

For Cloudflare:

Use [config.monitor.cloudflare-observability] to integrate with Cloudflare's observability platform.

  • Description: Enables Cloudflare Observability integration.
  • Fields: None (presence enables integration)
[config.monitor.cloudflare-observability]

Resolution priority

For each value, MultiTool resolves configuration in the following order:

  1. CLI flag
  2. Environment variable
  3. TOML config file (multitool.toml)
  4. Wrangler fallback (if wrangler = true)

These flags override config file values:

CLI FlagAffects FieldDescription
--workspaceworkspaceWorkspace group name
--applicationapplicationApplication name
--originoriginDeployment origin (used internally)
--cloudflare-account-idaccount_idCloudflare account ID
--cloudflare-worker-nameworker_nameCloudflare Worker name
--cloudflare-api-token(not in config)Required to deploy to Cloudflare
--aws-regionregionAWS region for Lambda/API Gateway