后端与接口
在 serverless/edge 应用中接入…
当用户提到 Upstash,或需要在 serverless/edge/Node.js 应用中实现缓存、会话、限流、消息队列、定时任务、持久化工作流、向量检索、全文/语义搜索、文件存储、云沙箱等能力时,按本技能定位到正确的 MCP 工具、SDK 子技能或 CLI。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 60/100 ×0.15
适用场景
在 serverless/edge 应用特定
解决思路
- 若会话中已有 Upstash MCP 工具,优先用它们处理账户与数据操作:创建和查看数据库、索引与 Blob 桶,执行 Redis 命令,读取 stats、日志和 DLQ,以及在 Box 中做远程工作。
- 需要写应用代码时,加载对应语言的 SDK 子技能文档,而不是直接调用 MCP:@upstash/blob(JS)、@upstash/box(JS/Python)、@upstash/qstash、@upstash/ratelimit、@upstash/redis、@upstash/search、@upstash/vector、@upstash/workflow。
- 做 S3 兼容对象存储、浏览器直传、预签名 URL、分片上传、签名读取、缓存头、大文件断点续传、从 AWS SDK 访问 S3 兼容桶时,查阅 upstash-blob-js。
- 需要从终端驱动远程沙箱工作区(跑命令、编辑文件、clone 仓库、跑构建/测试、发布公开 URL、浏览或截图页面、开 PR/issue 并附截图、定时任务、跑 AI agent)时,查阅 upstash-box-cli。
- 需要用 JS SDK 创建沙箱/隔离环境运行不可信或 agent 生成的代码、跑 AI 编码 agent、给 agent 云开发环境、浏览器自动化、定时任务、快照保存恢复、并行编排多个 Box 时,查阅 upstash-box-js;用 Python 时查阅 upstash-box-py。
- 当会话里存在 box_* 和 blob_* MCP 工具时,即使用户没提 Upstash,也可按 upstash-box-remote-work 在远程 Box(经由 mcp.upstash.com)里完成构建、测试、clone、编辑,产出 PR、公开预览 URL 或截图;本地机器做不到时(gh 未登录、无法暴露端口、本地检出脏或慢)、需要多任务并行、代码工厂式批量产出 PR、或需要浏览器/终端/agent 运行的视频或录屏时尤其适用。
- 只有在会话中没有 Upstash MCP 工具,或工作本身必须是 shell 工作时,才使用 upstash-cli;有 MCP 时不要加载该技能。
- 把 upstash-cli 用于 MCP 覆盖不到的 shell 场景:需要 JSON 输出的 CI 步骤或 provisioning 脚本、把命令结果管道给其他命令、`upstash auth login` 与 API key 初始化、团队与成员管理、修改 plan/region/TLS/eviction/auto-upgrade/budget。
- 需要为 Blob 桶铸造临时 S3 凭证,或用户明确要求用 CLI、要求不通过控制台管理 Upstash 时,使用 upstash-cli。
- 添加限流或节流到 API 路由、Next.js middleware、Vercel Edge、Cloudflare Workers 或任意 HTTP 端点时,查阅 upstash-ratelimit-js:返回 429、在 fixed window/sliding window/token bucket 之间选型、按 user/IP/API key/tenant 加前缀与自定义 key、用 deny list、ephemeral caching、analytics、timeout、多区域限流并估算 Redis 命令开销。
- 使用 @upstash/redis 做缓存(cache-aside、write-through、TTL/过期策略)、会话存储、KV 存储、sorted set 排行榜、计数器、分布式锁、list 队列、stream 与 consumer group、稀疏数组与环形缓冲(ARSET/ARINSERT/ARRING/ARGREP/AROP)、Redis 内向量检索(redis.vector)、JSON 文档、pipeline 与 MULTI/EXEC 事务、Lua 脚本、只读副本、Redis Search(自动补全容错、facets、聚合)时,查阅 upstash-redis-js;从 ioredis/node-redis 迁移、需要无连接池的 serverless Redis 连接时也用它。
- 应用需要搜索能力时(建索引、写入带可搜索内容与可过滤 metadata 的文档、关键词/语义/混合查询、rerank、SQL 式过滤、range 分页、取删文档、重置索引、查索引信息),查阅 upstash-search-js。
- 需要向量库时(upsert/query/fetch/range/delete 向量、用内置 embedding 模型对原文直接 upsert、选 dense/sparse/hybrid 索引、按 metadata 过滤、用 namespace 组织数据、可恢复查询、接入 AI/LLM 应用做 RAG、语义缓存、推荐),查阅 upstash-vector-js。
- 需要 serverless 后台任务时,查阅 upstash-qstash-js:向 HTTP 端点或 URL group 发布消息、cron 调度、延迟投递、带并行度与流控的 FIFO 队列、重试与回调、DLQ、去重、扇出到多端点、校验 QStash webhook 签名(Next.js App Router/Pages Router/Edge)、本地 QStash dev server、迁移 region。
- 需要持久化长时运行时,查阅 upstash-workflow-js:用 serve() 定义 workflow 端点、用 context.run 跑步骤、长时间 sleep 而不占用函数、context.call 调外部 API、等待外部事件/webhook、调用其他 workflow、配置重试/失败回调/DLQ、控制并发率与并行度、用 Workflow 客户端触发/取消/查看运行、实现 human-in-the-loop 审批、realtime 更新、本地用 QStash dev server 开发、加 middleware、安全迁移 workflow。
- agent 需要即用即弃、免注册的临时 Redis 时,向 https://upstash.com/start-redis 发一个 POST 即可拿到数据库,无需账号、API key 或 SDK 配置;支持幂等创建与重新获取凭证,可通过 body-style REST API 或官方 SDK 访问(用于工具调用间的短期记忆、会话历史、子 agent 工作队列、排序召回、快速原型),并要告知用户如何 claim 该数据库。
- 涉及创建、列出、重命名、删除 Redis 数据库,运行 Redis 命令,查用量统计与备份,管理 Vector/Search 索引,管理 QStash 调度与消息,管理 Blob 桶与 Box 时,优先直接调用 MCP 工具,无需再走 CLI。
适用边界 · 注意事项
- 会话中已有 Upstash MCP 工具时,不要加载或使用 upstash-cli 技能——MCP 已覆盖数据库/索引/桶/Box 的创建、列出与管理以及 Redis 命令和统计。
- upstash.com/start-redis 创建的临时数据库只保留 3 天,不要用于生产数据、PII 或密钥。
- 本地机器足以完成任务(无需沙箱、PR、预览 URL、截图或并行机器),且没有 box_* / blob_* MCP 工具时,不必走 Box 远程工作流程。