awesome cli.

Databases & storage

Upstash CLI for coding agents

Redis, Vector, Search, QStash, teams, JSON output by default, and dry-runs on destructive commands.

Open the official project ↗

This article follows the official documentation. We haven’t tested this tool for a hands-on review.

A coding agent with shell access can use the Upstash CLI to inspect and manage Upstash services such as Redis, Vector, Search, QStash, and Blob.

The CLI is a terminal program that sends commands to Upstash. Successful commands return JSON, structured data agents can read and process. A read-only command such as listing Redis databases lets an agent check what resources exist before it changes project code. Upstash’s CLI documentation covers the available commands and options.

What the CLI does

The CLI provides commands for managing Upstash resources from a terminal or a CI/CD pipeline, which runs automated checks and deployments. For example, redis list retrieves the Redis databases available to the authenticated account. Other commands cover Vector, Search, QStash, Blob, and team membership.

The CLI also works alongside Upstash’s agent resources. Upstash recommends its Skill, a package of product instructions for coding agents, so an agent can consult relevant Upstash documentation while it works. The agent resources overview describes the Skill and the remote MCP server, a service that lets an agent call Upstash tools through a standard connection.

Set up access

You can run the CLI through npx without installing it separately. To configure an agent integration, run:

npx upstash

The command starts upstash setup, detects supported agents, and shows the planned changes before applying them. Depending on the agent, setup adds the Upstash Skill and remote MCP server, or writes the MCP server configuration alongside the Skill. When you run setup again, it updates the installed integration.

On first use, the MCP server uses OAuth, a sign-in flow that asks you to authorize access. Setup does not place an API key in the agent’s configuration. To authenticate direct CLI commands, run npx upstash login to save credentials in ~/.config/upstash/config.json, or provide UPSTASH_EMAIL and UPSTASH_API_KEY through environment variables. Keep credentials out of agent prompts and source files.

List Redis databases

A useful read-only task is checking which Redis databases are available before connecting project code to one. After authenticating, run:

npx upstash redis list

The command contacts Upstash and returns the account’s Redis database data as JSON. It reads remote service information; it does not create or modify a database. The agent can summarize the returned records or compare them with the project’s existing configuration. The CLI’s documented command syntax and authentication options are in the CLI reference.

A suitable prompt is:

Run npx upstash redis list and summarize the Redis databases returned. Do not create, delete, or modify any Upstash resource.

The prompt does not need credentials. Authenticate in the terminal or provide credentials through the environment before the agent runs the command. The example documents command usage; no test run is reported.

Preview destructive commands

Commands such as delete and remove-member change or remove remote resources. The CLI documents a --dry-run option for destructive commands. Add it to a complete command to preview the action, then inspect the result. Run the same command without --dry-run only when you intend to make the change. Successful CLI output is JSON, except start-redis, which prints Markdown.

One exception to the authentication requirement is upstash start-redis. It creates a free Redis database without an Upstash account, but the database expires after 72 hours unless you claim it with an account. Because that command creates a database, do not use it when you only need to inspect existing databases.

The Awesome CLI directory lists other command-line tools for coding agents. Use the Upstash CLI when an agent needs to query or manage Upstash resources directly, and keep read-only inspection separate from commands that change those resources.

Tool details come from awesome-ai-cli.