Monterosa CLI
mic is the new command line for Monterosa Interaction Cloud. Create test content, copy events between projects and environments, back up and compare project settings, and automate the jobs you do by hand. It works great in coding agents like Claude Code and Codex, or you can use it as a component in your scripts and scheduled jobs.
# 1. Sign in to your Studio with an API token. $ mic auth login \ --url https://studio.monterosa.cloud Saved profile "default" (****4f2a). # 2. Run a command. $ mic orgs list id name org_7k2 Monterosa
What you can use it for
Here are some of the jobs that can save you time.
Create test content
Make a published event with one element of every enabled type, and get the URL to open it. Clean up with mic smoke clean, which deletes every smoke test event in the project.
$ mic smoke run --project $PIDCopy an event
Copy an event and all its elements into a new one. mic elements clone-from copies just some of them.
$ mic events clone evt_8h2 --name "Week 13"Back up and compare settings
Save a project's settings to a file, see what changed with settings diff, then push it back. mic projects diff compares two projects side by side.
$ mic projects settings pull $PID --out settings.jsonPublish and schedule in bulk
Publish everything unpublished on an event, in the right order. Add --dry-run to see the order first.
$ mic elements publish-pending --event $EID --dry-runGet the URL you need
Get the URL fans open, or the Studio, feeds and livestats URLs, without building them by hand.
$ mic url consumer --project $PID --event $EIDDescribe a project as a file
Save a live project as a YAML file you can keep in git, then apply it elsewhere. mic plan shows the changes first. This part is early.
$ mic export --project $PID --out project.yamlIt also covers actions within services like forms, Identify, Gamify, workflows, extensions and assets. mic api sends any Control API request directly.
Run it from Claude or your agent
Claude and your CI job run the same commands you do, with the same sign-in and the same result.
- Tools.
mic describeemits metadata for every command it exposes: the name, the arguments, the flag types, and which of them are required.mic mcpruns the same binary as an MCP (Model Context Protocol) server and builds one tool per command from that metadata, so every command is available to an agent the moment it exists. - Ship once, every agent picks it up. Add a command, publish the CLI, restart the agent. There is no separate schema to update.
- Your coding agent, connected on install. The installer offers to configure Claude Desktop, Claude Code, Gemini CLI and Cursor. Say no to any of them, or skip the step altogether for an unattended install.
- In continuous integration (CI), use a token and a profile.
mic auth login --url … --token "$MIC_TOKEN" --profile prod, then any command with--json.
There is also mic interactive, a terminal UI with an agent that calls the same commands. It runs on AWS Bedrock and needs credentials for it, so for now it is a Monterosa engineering tool rather than something you can switch on.
# Roll last week's quiz forward, unattended. $ mic events clone evt_8h2 \ --name "Week 13" --json {"id":"evt_9k4","name":"Week 13"} $ mic elements apply --event evt_9k4 \ --file questions.yaml --publish $ mic url consumer --project $PID \ --event evt_9k4 https://apps.monterosa.cloud/fankit/ v25.1.0/index.html?p=$PID&e=evt_9k4#/
Set up profiles with the correct scope
Your token can do anything your Studio user can do, including deleting a project. Create dedicated accounts for your tools and agents with limited access to projects, and test them on a development instance before you use them on production.
# Lock this profile to one project. $ mic auth scope add project $PID # Or paste a Studio URL and pick the level. $ mic auth scope add \ "https://studio…/projects/$PID" # See what the active profile may touch. $ mic scope show # Drop every restriction. $ mic auth scope clear
- Reads are never restricted. You can still list and inspect anything your token can see.
- Writes outside the list fail before the request is sent. Nothing reaches the API, so there is nothing to undo.
- An agent cannot widen its own scope.
mic scope showis readable through MCP. Adding and clearing entries is not: the agent gets an error telling you to run it in your shell. - Most deletes take a named target and a
--yes. Every command is classed by what it does: read, write or destructive. A destructive command without--yeslists what it would remove and stops there. Two exceptions:mic smoke cleandeletes every smoke test event in a project without asking, andmic api -X DELETEsends the request as written. Scope the profile before you use either. - Pushing settings keeps a backup.
settings pushwrites the current remote settings to disk before it replaces them, unless you pass--no-backup.
Request access
Send the form below. Support will email you the early access terms, then the install instructions.
You need macOS, Linux or Windows, Node 22 or newer with npm, and a Studio login.
Once you have access
Install
Run the install command support sends you. It asks you to accept the early access statement once.
Sign in
mic auth login --url https://studio.monterosa.cloud asks for a personal API token. Make one in Studio: your avatar, then Account settings, then API Credentials.
Check it worked
mic auth whoami shows the active profile. mic orgs list is the first real call.
Stay current
mic update upgrades the CLI in place. mic update --check tells you what is available.
Ask about the CLI
Tell us what you are trying to automate. We will point you at the command, or say plainly that it does not exist yet.

