Kater CLI Find and understand
kater invoke
Calls one Kater action by its name, such as workspace.browse, with a request that you write in JSON.
Kater’s own commands call the same actions, which Kater calls named operations. Use it when no other command sends the request you need.
Examples
# List your workspaces in snowflake_prod_connection, with the request in request.jsonkater invoke workspace.browse --request-file request.json# Send a request from stdinecho '{"connection": "snowflake_prod_connection", "show": "mine"}' | kater invoke workspace.browse --request-file -# List the apps you can change in snowflake_prod_connectionecho '{"connection": "snowflake_prod_connection", "editable": true}' | kater invoke app.browse --request-file -# Make a chart from the request in chart.jsonArguments
Options
It also takes the global options --json, --kater-root, --scope and --help.
workspace.browse
Lists your workspaces in one connection, a page at a time, as every list of workspaces in Kater does. Pinned workspaces come first, the newest pin on top. Then come the most recent ones, by when you last opened them, or else by when they last changed. A workspace copy in a brainstorm folder is never listed.
{"connection": "snowflake_prod_connection", "show": "mine", "writable": true}| Key | What it does | Example |
|---|---|---|
connection | The connection to list. Required. | "snowflake_prod_connection" |
show | all, mine or shared. shared is the connection’s own workspaces, and what someone shared with you from their folder. The default is all. | "mine" |
q | Words to find in everything about each workspace, such as its names, queries and dashboard. Every word must match. | "spend" |
writable | true lists only the workspaces that you can change. | true |
source | Lists only the workspaces over one shared model, by the model’s name. | "ad_reporting" |
limit | How many workspaces one page holds, from 1 to 50. The default is 10. | 20 |
cursor | The nextCursor of the page before, for the next page. | "10" |
The answer holds the page’s items and its nextCursor, which is null on the last page.
app.browse
Lists your apps in one connection, a page at a time, the same way. It takes connection, show, q, limit and cursor. Add "editable": true to list only the apps that you can change. A search reaches each app’s names, owner, description and the workspace it is in.
Kater’s own operations
On the Kater MCP, an agent’s kater invoke takes only the operations of the published Kater API. It refuses any other operation, and names the command that does the same work, such as kater chart create --request-file - for chart.create. Your own terminal and the Files terminal take every operation.
Results that take time
For result.resolve and result.refresh, kater invoke waits until the run ends, and then prints its result.