Model Context Protocol (MCP) is a new, standardized protocol for managing context between large language models (LLMs) and external systems. In this repository, we provide an installer as well as an MCP Server for Upstash Developer API's.
This lets you use Claude Desktop, or any MCP Client, to use natural language to accomplish things on your Upstash account, e.g.:
- "Create a new Redis database in us-east-1"
- "List all databases"
- "See keys starting with "user:" in users-db"
- "Create a backup"
- "Give me the spikes in throughput for the last 7 days"
- Node.js >= v18.0.0
- Claude Desktop
- Upstash API key - You can create one from here.
- Run
npx @upstash/mcp-server-upstash init <UPSTASH_EMAIL> <UPSTASH_API_KEY>
- Restart Claude Desktop
- You should now be able to use Upstash commands in Claude Desktop
See the troubleshooting guide in the MCP documentation. You can also reach out to us at Discord.
NOTE: If you are using a node version manager like nvm or fnm, please check this issue. You should change the
node
command in the MCP config to the absolute path of the node binary.
redis_database_create_backup
redis_database_create_new
redis_database_delete
redis_database_delete_backup
redis_database_get_details
redis_database_list_backups
redis_database_list_databases
redis_database_reset_password
redis_database_restore_backup
redis_database_run_multiple_redis_commands
redis_database_run_single_redis_command
redis_database_set_daily_backup
redis_database_update_regions
redis_database_get_usage_stats
Clone the project and run:
bun install
npm run watch
This will continuously build the project and watch for changes.
For testing, you can create a .env
file in the same directory as the project with the following content:
UPSTASH_EMAIL=<UPSTASH_EMAIL>
UPSTASH_API_KEY=<UPSTASH_API_KEY>
This will be used for setting the Claude config and running mcp inspector.
To install the Claude Desktop config for local development, run the following command:
npm run setup
This will add an upstash
entry to your MCP config file that points to the local build of the package.
{
"upstash": {
"command": "node",
"args": ["<path-to-repo>/dist/index.js", "run", "<UPSTASH_EMAIL>", "<UPSTASH_API_KEY>"]
}
}
NOTE: The same issue with node version manager applies here. Please look at the note in the usage section if you are using a node version manager.
You can now use Claude Desktop to run Upstash commands.
To view the logs from the MCP Server in real time, run the following command:
npm run logs
You can also use the MCP Inspector to test the tools.
npm run inspector