Skip to main content

Install by agent

Step-by-step setup of the Upstash Skills and MCP server for every supported coding agent.
7 min read

Each section below covers everything for one agent: the Upstash Skills (docs and the upstash CLI reference your agent loads on demand) and the MCP server (live tools for your account).

Every section sets up the remote MCP server (https://mcp.upstash.com/mcp), which needs no credentials up front — it authenticates over OAuth on first use, and the Upstash plugin for Claude Code, Claude Desktop, and Codex bundles it, so installing the plugin also connects the MCP.

The local (stdio) server is the alternative, folded into each section. It needs your account email and a Developer API key (readonly keys work; the server then disables every mutating tool), and it is the only one that carries Upstash Box tools — the remote server covers Redis, QStash, Workflow, Vector, and Search. The skills need no credentials either way. See the MCP server page for remote vs. local, authentication, and feature options.

Claude Code#

The upstash/skills repo is a Claude Code plugin marketplace. From inside Claude Code:

The plugin bundles the remote MCP server (over OAuth), so this one install sets up both the skills and the MCP — approve the consent screen on the first tool call.

To add the remote server on its own, without the plugin:

Then run /mcpAuthenticate.

Local (stdio) server instead

See the Claude Code plugin docs and MCP docs for more info.

Claude Desktop#

Claude Desktop reads the same upstash/skills plugin marketplace as Claude Code, and the plugin bundles the skills and the remote MCP server (over OAuth) together.

Go to Customize → Plugins, click Add → Add marketplace, choose Add from a repository, and give it upstash/skills. Install the upstash plugin from that marketplace, then approve the consent screen on the first tool call.

Cursor#

Install the skills with the Agent Skills CLI:

For the MCP server, use the one-click install:

Install MCP Server

It writes a global server; move the upstash entry into .cursor/mcp.json in your repo to scope it to one project instead. Or add it to ~/.cursor/mcp.json by hand — Cursor runs the OAuth flow on the first tool call:

Local (stdio) server instead

OpenAI Codex#

The repo is also a Codex plugin. Install it with the Codex CLI:

The plugin bundles the remote MCP server (over OAuth), so this also connects the MCP — approve the consent screen on the first tool call.

To add the remote server on its own, put this in ~/.codex/config.toml (or .codex/config.toml):

Local (stdio) server instead

See the Codex plugin docs and MCP docs for more info.

OpenCode#

OpenCode loads Agent Skills from .agents/skills/ in a project and ~/.config/opencode/skills/ globally, which is where the Agent Skills CLI writes them:

OpenCode exposes the installed skills through its native skill tool, so only the sub-skill relevant to the task is loaded.

For the MCP server, add this to ~/.config/opencode/opencode.json or a project-level opencode.json. See the OpenCode MCP docs for more info.

Local (stdio) server instead

Zed#

Zed loads Agent Skills from .agents/skills/ in a project and ~/.agents/skills/ globally:

The skills show up in Zed's Agent Panel, and the agent can load them on its own or via /upstash. Zed's extension marketplace has no channel for skills, so the CLI is the only way to install them.

For the MCP server, go to Settings → AI → MCP Servers, click Add Server → Add Remote Server, or put this in settings.json. With no Authorization header configured, Zed runs the standard MCP OAuth flow:

Local (stdio) server instead

The repo ships a Zed extension in zed-extension/. Clone the repo, run zed: install dev extension from the command palette, and pick the zed-extension/ directory. Zed then prompts for upstash_email and upstash_api_key (and an optional upstash_box_api_key for Upstash Box tools).

See the Zed MCP docs for more info.

Note

Context servers are project-scoped in Zed. Open a folder before testing, otherwise the server never starts.

GitHub Copilot#

Install the skills for Copilot in VS Code with the Agent Skills CLI:

For the MCP server, use the one-click install:

Install in VS Code

It writes the server to .vscode/mcp.json. See the VS Code MCP docs for more info.

Local (stdio) server instead

Devin Desktop#

Devin Desktop is the new name for Windsurf. It keeps the same skill target and settings. Install the skills with the Agent Skills CLI:

For the MCP server, add this to ~/.codeium/windsurf/mcp_config.json. See the Devin Desktop migration notes for more info.

Local (stdio) server instead

Gemini CLI#

Install the skills with the Agent Skills CLI:

Add the MCP server with the CLI:

Or open ~/.gemini/settings.json and add Upstash to mcpServers by hand. See the Gemini CLI configuration docs for details.

Local (stdio) server instead

Google Antigravity#

Install the skills with the Agent Skills CLI:

For the MCP server, add this to your Antigravity MCP config. Antigravity registers itself as an OAuth client, so no credentials go in the file. See the Antigravity MCP docs for more info.

Local (stdio) server instead

DeepSeek Harness#

The repo is a DeepSeek Harness bundle. Requires pnpm on your PATH.

Installing the bundle mounts the skills as a skill provider right away; no further setup is needed for them.

The same bundle also mounts the local (stdio) MCP server (npx -y @upstash/mcp-server@latest), the one client here that does not use the remote server. It only starts once your credentials are stored. Run this from inside a session:

Credentials are saved to ~/.dsh/.credentials.yaml and the server starts as soon as both are set, and restarts whenever they change.

Grok#

Install the skills for Grok Build with the Agent Skills CLI. They land in .grok/skills/ (project) or ~/.grok/skills/ (global):

Note

Grok Build also reads Claude Code marketplaces and plugins automatically, so if you already installed the Claude Code plugin, the skills are available without any extra setup.

Add the MCP server with the Grok CLI. Pass --scope project to write it to .grok/config.toml in the current directory instead of your user config.

Or add it to ~/.grok/config.toml by hand. Grok opens the OAuth flow on first use and stores the tokens in ~/.grok/mcp_credentials.json. See the Grok Build MCP docs for more info.

Local (stdio) server instead

Run grok mcp doctor upstash to check the connection.

Kilo Code#

Add this to ~/.config/kilo/kilo.jsonc (global) or kilo.jsonc in the project root:

Local (stdio) server instead

Copilot CLI#

Or add it to ~/.copilot/mcp-config.json by hand:

Local (stdio) server instead

Warp#

Go to Settings → Agents → MCP servers → + Add and paste:

Local (stdio) server instead

Qwen Code#

Or add the entry to ~/.qwen/settings.json or .qwen/settings.json by hand:

Local (stdio) server instead

Hermes#

Add this to ~/.hermes/config.yaml:

Local (stdio) server instead

Factory#

Local (stdio) server instead

fx#

fx installs skills straight from a GitHub repo. From inside a session:

Add the MCP server the same way:

Or add it to ~/.fx/mcp.json by hand. See the fx MCP docs for more info.

Local (stdio) server instead

Crush#

Add this to your Crush config file:

Local (stdio) server instead

Any other agent#

The Agent Skills CLI supports 70+ agents and detects the ones on your machine:

Add --global (-g) to make the skills available in every project, --agent (-a) to target a specific agent, and --skill (-s) to install a single SDK skill (for example --skill upstash-qstash-js).

For the MCP server, most clients take the standard mcpServers shape below. Check your client's documentation for where the config lives, then add:

Some clients want the transport named alongside the URL — "type": "http" for most, "type": "streamable-http" for Roo Code, "type": "remote" for OpenCode and Kilo Code. An unrecognized key is usually ignored, so when in doubt start with the plain url above.

Local (stdio) server instead

Some of the clients that use it, with their Agent Skills CLI id:

ClientSkills idMCP server
Ampampamp mcp add upstash https://mcp.upstash.com/mcp
Kirokiro-cli.kiro/settings/mcp.json, or Kiro → MCP Servers → + Add; takes url
ClineclineMCP Servers → Remote Servers → Edit Configuration; takes url
Roo CoderooMCP settings file (mcp_settings.json); needs "type": "streamable-http"
TraetraeMCP → Add manually; takes url
Augment CodeaugmentSettings → MCP → + Add remote MCP, connection type HTTP
ZencoderzencoderAgent tools → Add custom MCP, paste the upstash entry
Rovo Dev CLIrovodevacli rovodev mcp opens the config file; takes url