Upres Cli

io.github.auroracapital由 GitHub 账号 auroracapital 发布v0.2.0更新于 Oct 24, 2026

UpRes MCP: list models, credits, submit 4K image and video upscale jobs.

已验证STDIO仅桌面媒体与设计AI 与机器学习

概览

AI 生成的概览

upres.ai 的本地 MCP 服务器,让助手列出放大模型、查询额度,并提交图像、视频和语音修复任务。

可以做什么
通过 upres.ai API 列出可用的放大与修复模型,查询账户额度信息,并查看已提交任务的状态。提交图像放大任务,支持本地文件或 URL,可选择模型别名和最高 8 倍的放大倍数。提交视频放大任务,适用于 AI 生成视频或影视素材,以及语音降噪任务。超过 50 MB 的文件会先通过可续传协议上传再处理。
适用场景
适合希望助手在对话中直接通过 upres.ai 放大、修复或降噪照片、视频片段和语音的场景,例如批量处理商品图、老照片扫描件或 AI 生成的视频片段。
运行要求
作为本地进程运行,通常通过 npx 从 GitHub 仓库启动或安装为 npm 包,需要 Node.js。需要 upres.ai 账户和 API 密钥,可通过 UPRES_API_KEY 环境变量、--api-key 参数或配置文件提供。需要访问 upres.ai 的网络连接。
安装前请注意
API 密钥(UPRES_API_KEY)是付费服务凭据,需妥善保管。任务会消耗套餐额度,API 访问、批处理和去水印输出需要付费套餐,使用可能产生费用。本地文件或 URL 会被发送到 upres.ai 处理,任务会在远端创建记录。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Upres Cli,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

upres-cli

[npm version] [PyPI version] [License: MIT]

Star this repo if UpRes helps you. [GitHub stars]

Official CLI + SDK for upres.ai — image, video, and speech restoration. One API, 14 public aliases, up to 8K output.

$ upres upscale photo.jpg --model flare --scale 4Submitting job... model=flareJob created: 550e8400-e29b-41d4-a716-446655440000 (status: pending)Waiting for result.......Downloading to photo_upscaled.jpg... done.
Result: photo_upscaled.jpg

Why we built this

  • Topaz is $200/yr, desktop-only, no API, no automation
  • Upscayl is great for one-offs but can't handle bulk exports or CI pipelines
  • Every other SaaS upscaler either watermarks your output, caps resolution at 2K, or charges per image with no monthly plan

upres.ai gives you a clean REST API, 14 public aliases, batch processing, and predictable pricing starting at $9/mo on the Creator launch deal.


Quickstart

Node.js

bash
npx upres-cli upscale photo.jpg

Or install globally:

bash
npm install -g upres-cliupres upscale photo.jpg --model lumen --scale 8 --output photo_8k.jpg

Python

bash
pip install upres-aiupres upscale photo.jpg --model flare --scale 4

Authentication

  1. Sign up at upres.ai (free — 5 upscales/month)
  2. Go to upres.ai/account/api-keys
  3. Generate a key — it's shown once
bash
export UPRES_API_KEY=upres_yourkey

Or save permanently:

bash
mkdir -p ~/.config/upresecho '{"apiKey":"upres_yourkey"}' > ~/.config/upres/config.json

Key resolution order: --api-key flag → UPRES_API_KEY env var → ~/.config/upres/config.json


Commands

bash
# Upscale a single image (local file or URL)upres upscale photo.jpg --model flare --scale 4upres upscale photo.jpg --model lumen --scale 8 --output out.jpgupres upscale https://example.com/photo.jpg --model prism
# Upscale video (AI-generated video from Sora, Kling, Runway etc.)upres upscale clip.mp4 --model motion --scale 4
# Batch upscale a folderupres batch ./photos/ --model flare --output ./upscaled/ --concurrency 5
# List available modelsupres models
# List recent jobsupres jobs --limit 20 --status completed
# Account / quota infoupres account

Node.js SDK

typescript
import { UpresClient } from "upres-cli";
const client = new UpresClient(); // reads UPRES_API_KEY from env
// Upscale a local fileconst job = await client.createJobFromFile("photo.jpg", {  model: "flare",  scale: 4,});
// Wait for completionconst completed = await client.waitForJob(job.id);
// Download resultawait client.downloadResult(completed, "photo_4k.jpg");console.log("Done:", completed.result_url);

Files over 50 MB are automatically uploaded via TUS resumable protocol.


Python SDK

python
from upres import UpresClient
with UpresClient() as client:                        # reads UPRES_API_KEY from env    job = client.create_job_from_file(        "photo.jpg",        model="flare",        scale=4,    )    completed = client.wait_for_job(job["id"])    client.download_result(completed, "photo_4k.jpg")    print("Done:", completed["result_url"])

The Python SDK uses httpx — async-ready, no heavy dependencies.


Examples

ExampleWhat it does
batch-upscale-folder.jsUpscale all images in a folder with configurable concurrency
restore-photo-folder.pyRestore old/scanned photos with Lumen
ecommerce-pipeline.jsProduct image pipeline: raw shots → 4K → publish-ready
lightroom-export-hook.mdAuto-upscale Lightroom exports via post-processing hook
figma-plugin-stub.mdFigma plugin integration guide

Models

14 public aliases across image, video, and speech. Each one tells you up front whether it invents detail or leaves your file alone. Aliases that do not enlarge ignore --scale.

AliasKindBest for
flareImageEveryday photos, fastest default
prismImageText, logos, product shots — keeps edges true
lumenImageMaximum detail recovery for print, up to 8x
mirageImageInvents new detail — art and hero images
hushImageFaithful denoise, same size as the source
keenImageDeblur and sharpen, same size
visageImageFaces only, does not enlarge
atelierImageHush, Visage if a portrait, then Lumen
motionVideoFast 4K finish for AI video
motion-xVideoCinema-grade, for film and commercials
stillVideoTemporal denoise, resolution stays put
cadenceVideoFrame interpolation, does not enlarge
atelier-xVideoStill, then Motion X
voiceSpeechSpeech denoise to 48 kHz. Not for music

Full model catalogue: upres.ai/models · Live spec: api.upres.ai/v1/openapi.json


Pricing

PlanPriceIncludesAPIWatermark
Free$05 upscales/mo—Yes
Creator$9/mo50 stills + 20 min 4K video/mo—No
Studio$39/mo250 stills + 90 min 4K video/moYesNo

Studio tier unlocks the full API, batch processing, and no output watermark.

Compare plans → · vs. Topaz → · vs. Upscayl →


MCP (Claude, Cursor, Hermes)

bash
claude mcp add upres -- npx -y github:auroracapital/upres-cli mcp

Or in claude_desktop_config.json / Cursor:

json
{  "mcpServers": {    "upres": {      "command": "npx",      "args": ["-y", "github:auroracapital/upres-cli", "mcp"],      "env": { "UPRES_API_KEY": "upres_yourkey" }    }  }}

Tools: upres_list_models, upres_get_credits, upres_upscale_image, upres_upscale_video, upres_enhance_audio, upres_get_job.


Free tier for open-source projects

If you're building something open-source on top of the API, email [email protected] with your repo link. We offer 500 ops/month for qualifying OSS projects.


Error handling

The SDK handles these errors automatically:

StatusBehavior
401Prints API key error + link to key management, exits
402Prints quota exceeded + link to pricing, exits
429Prints rate limit message (60 req/min), exits
5xxThrows UpresError with message

In Python: raises AuthError, QuotaExceededError, or UpresError.


Contributing

See CONTRIBUTING.md. Tests run with:

bash
# Nodenpm test
# Pythonpip install -e ".[dev]"pytest tests/test_client.py -v

License

MIT — see LICENSE

来源:README.md,提交 3756fa4

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.2.0最新Sep 19, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分