MCP HeartbeatTHE MCP OBSERVATORY
Public workspace

Explore

Evidence for your next connection.

Independent measurements of remote MCP servers. Every observation has a timestamp.

Read-only probes

MCP server · AI / LLM tooling

com.budgetpixel/mcp

Generate AI images, video, music, and sound effects, and upscale them, from any MCP client.

Checks passed
14 / 22

0 failed · 8 not measured

Median response
456 ms

Median of successful probes over 7 days

30-day uptime
Not measured

Share of countable probes over 30 days, including daily rollups. Auth challenges are excluded.

Discovered tools
31

Tool definitions returned by this server

Independent monitoring

Health & checks

Status history

Outdated check

Last connection measurement is over 24 hours old. Current availability is unknown.

Last checked
Check summary by test group
Test areaPassedFailedUnmeasured
ConnectionCan a client connect and discover tools?
500
Reliability & speedDoes it respond consistently and quickly?
004
Access & authenticationWhat is required to use this server?
102
Tool qualityAre the tool definitions usable by an agent?
400
Publisher identityCan the publisher be traced to its source?
402

Unmeasured means there is not enough evidence to decide. How these checks work

Inspect individual checks 22 recorded

Core

  • Pass
    Reachable

    Latest probe returned HTTP 200 in 456 ms.

  • Pass
    Valid handshake

    protocolVersion 2025-11-25, serverInfo.name budgetpixel.

  • Pass
    Lists tools

    tools/list returned 31 tools.

  • Pass
    Current protocol

    Negotiated 2025-11-25. The bar is 2025-06-18 or newer.

  • Pass
    HTTPS

    The endpoint URL is https.

Performance

  • Not measured
    Fast (p50)

    Median latency 456 ms over 1 samples in 7 days. The bar is 1000 ms. Need at least 5 samples.

  • Not measured
    Consistent (p95)

    95th percentile 456 ms over 1 samples in 7 days. The bar is 3000 ms. Need at least 20 samples.

  • Not measured
    Reliable (uptime)

    1 of 1 attempts returned a tool list in 30 days (100%). The bar is 99%. Need at least 30 samples.

  • Not measured
    Stable tool list

    Fewer than two successful probes in 30 days, so tool-list stability is not measured.

Access

  • Pass
    Open access

    tools/list succeeded with no credential, and the record declares none.

  • Not measured
    Standard auth

    Auth is not required, so the OAuth metadata check does not apply.

  • Not measured
    Free tier cited

    No publisher quote has been checked.

Tools

  • Pass
    Tools described

    Every tool description is at least 20 characters.

  • Pass
    Valid input schemas

    Every inputSchema is a JSON Schema object.

  • Pass
    Parameters documented

    146 of 146 parameters have a description (100%). The bar is 80%.

  • Pass
    Safety hints

    Every tool sets readOnlyHint or destructiveHint.

Publisher

  • Pass
    Verified namespace

    Listed in the Official MCP Registry.

  • Pass
    Website matches publisher

    The website host matches the reverse-domain namespace.

  • Pass
    Source repo linked

    A repository URL is on file.

  • Not measured
    Repo owner matches

    This namespace is not an io.github login, so the owner comparison does not apply.

  • Pass
    Recently updated

    Updated 2026-08-27T17:44:00.929887Z, within 180 days.

  • Not measured
    Open-source licence

    The GitHub licence lookup has not returned an OSI result yet.

Start using com.budgetpixel/mcp

Connect to this server

Choose your client, copy the configuration, then enable the server in your client’s MCP settings.

Run this command in your terminal, then restart Claude Code.

Claude Code

claude mcp add --transport http com-budgetpixel-mcp https://mcp.budgetpixel.com/mcp

Capabilities

Tools 31

add_wardrobe_item

Use this to add clothes to the user's wardrobe so a character can wear them. Give a picture (image_url: any picture's own address, a shop's product page, or a URL from upload_media; or image_base64) or a description. A product page is read for its product picture, but many shops (Amazon, Zara, H&M, eBay ...) don't allow automatic reading or show no product picture: the tool then says the page can't be read and what to do. Ask the user for the picture's own address (right-click the picture, Copy image address) or the picture itself, or, if you can browse, open the page yourself and pass the product picture's address. mode: photo (default for a picture: someone wears it and the clothes are taken out onto an invisible mannequin; charged at the image model's usual price, like generate_image), clean (the picture shows only the clothes: used as it is, free) or text (designed from the description, the model's usual price). note says what to take when a photo shows more ("only the leather jacket"). The picture takes about a minute: call get_wardrobe_item with the returned id until it is ready, then write its @handle next to a character in generate_image or generate_video.

Discovered
check_generation_status

Use this after calling generate_image, generate_video, generate_music, generate_sound_effect, generate_3d_model, or generate_depth_map to poll for results. Pass a job_id to check a specific job — numeric = image, uuid = video, and for MUSIC / SOUND-EFFECT / 3D-MODEL / DEPTH-MAP jobs also pass type "music" / "sound_effect" / "3d" / "depth" (3D jobs are uuids too, like video) — with no job_id it lists jobs still running that were started on the BudgetPixel website. Completed IMAGE jobs return the finished image(s) inline (as image content) plus a full-resolution link — display the image AND share the link (some chat UIs don't show inline images). Completed VIDEO, MUSIC and SOUND-EFFECT jobs return a watch/listen link — always share it with the user (chat UIs can't embed players). Completed 3D-MODEL jobs return the thumbnail inline plus download links (GLB/FBX/USDZ/STL) and a viewer link — share the links and tell the user downloads expire in about 24 hours. Completed DEPTH-MAP jobs return the depth video, which is saved in the user's BudgetPixel library. Poll every few seconds for images and sound effects (~15 s), every 15–30 seconds for videos, music, 3D models and depth maps (they take minutes). Call repeatedly until status is 'completed' or 'failed'.

Discovered
check_pose_design

Use this after design_pose to follow the design: pass its design_id every 20-30 seconds until the status is done, refused or failed (a design takes about 3-6 minutes). Done: the new pose's @handle, description and pictures; write "@<character> in @<new_handle>" in generate_image or generate_video. Refused: why, and a doable alternative to design instead; nothing is charged. Free.

Discovered
check_pose_view

Use this after make_pose_view to follow the view: pass its job_id every 10-15 seconds until the status is done, missed or failed (a view usually takes 30-90 seconds). Done: the view's picture, now in the shared library for everyone, and the mention that asks for it; write "@<character> in @<pose_handle>.<view>" in generate_image or generate_video. Missed (two tries did not come out right) and failed cost nothing; a try that landed on another empty place is kept there for everyone, free, and its mention is given too. Free.

Discovered
create_social_post

Publish a post to the user's PUBLIC BudgetPixel community feed — visible to everyone and labeled "via MCP". ONLY use this when the user EXPLICITLY asks to post/share/publish; never post proactively. Costs 10 credits per post (anti-spam, charged on publish — same as the developer API) with an hourly posting cap. media: 1–6 images, or 1 video + up to 3 images, or exactly 1 audio track — pass the URLs you got from generations (check_generation_status links) or upload_media, or any public URL/base64. Images can carry optional model/prompt generation info. Audio posts accept song_name, genre (a fixed list — see the enum), lyrics, AND cover_image (cover art goes in its own field, never as a second media item). To enter the post in one of the user's clan themes, pass theme_id (call list_my_themes to find it). Posts are All Rights Reserved by default; pass license ("cc-by" or "cc0") ONLY when the user explicitly asks for a Creative Commons license — it is permanent and cannot be changed after publishing. Returns the public post URL — share it with the user. Posts are moderated after publish (NSFW/spam rating affects feed visibility; the charge is not refunded for hidden posts).

Discovered
design_pose

Use this when the user wants a body pose the library doesn't have (try search_poses first). Describe the pose in words, head to toe (up to 600 characters), or pass based_on with a library pose's handle and say what to change ("the left arm raised higher"). If library poses already look like the request, they come back first and no design starts: use one, or call again with confirm: true to design anyway. A design takes about 3-6 minutes: poll check_pose_design with the returned design_id every 20-30 seconds; when it is done, use the new @handle like any pose ("@barry in @<new_handle>"). 100 credits, charged only when the pose is made: a refused or failed design is free. Paid plans, up to 20 designs a day. Every pose must be one a real body can do: impossible poses, contortion, sex positions, minors, real people and violence are refused with the reason and, when there is one, a doable alternative. The new pose joins the shared library for everyone; there are no private poses.

Discovered
finalize_video_draft

Use this when the user likes a finished seedance-2.5 DRAFT (480p) and wants it in 1080p: it renders the same video (same motion, framing and sound, sharper) as a new 1080p job. Takes only the draft's job_id; everything else comes from the draft. IMPORTANT — cost: 750 credits per second of the draft's length (plus 375 per second of any reference video the draft used), e.g. a 5s draft's final ≈ 3,750 credits; check_generation_status on the draft shows the exact standard price. Confirm with the user first. Works for 7 days after the draft was made. Charged on success only. Returns a new job_id — poll check_generation_status every 15–30 seconds, then share the finished video link.

Discovered
generate_3d_model

Turn one picture into a textured 3D model (image-to-3D). Always returns a GLB; meshy-7.1 also offers FBX, USDZ (iPhone AR) and STL (3D printing). Pick the model by job: tripo-h3.1 (default) is the most faithful reconstruction — including cartoons and stylized art — with PBR materials, ~4 min, 400 credits; meshy-7.1 makes lighter ~30K-triangle models in more formats and supports rigging (with a walk and a run) + animation for humanoid characters, the move chosen with animation_move (a dance, a wave, a cheer and hundreds more), ~2 min, 1600 credits. Best input is one subject on a plain background. Submits an async job and returns a job_id — 3D models take 2-5 minutes, so poll check_generation_status with this job_id and type "3d" every 15-30 seconds; when done it returns the thumbnail inline plus download links (GLB/FBX/USDZ/STL). Files are kept about 24 hours, so download them promptly (save_to_assets does not take 3D models). Charged on success only.

Discovered
generate_depth_map

Use this to turn a video into a depth map video (Video Depth Anything, on BudgetPixel's own GPUs): a steady, flicker-free video where near is white and far is black, at the input's size (up to 1080p) and frame rate (up to 30 fps). Use it as a depth / structure / motion reference or control video for video models — grayscale (the default colormap) is what they take as a depth reference; turbo, inferno, magma and viridis colour it for viewing only. Priced per second of the INPUT video, rounded up to whole seconds, 5-second minimum, by model size: small 20 / base 30 / large 40 credits per second (a 5-second clip or shorter costs 100 / 150 / 200, a 10-second clip 200 / 300 / 400). The resolution does not change the price. small is fastest; base adds edge detail; large draws the finest detail (hair, thin poles, distant people) and is the steadiest. Input: a video URL (pass one from upload_media for local files), up to 30 seconds and 50MB. Options: size (default small), colormap (default grayscale), resolution (default auto = the input's size, never upscaled), keep_audio (copy the input's audio), side_by_side (input on the left, depth map on the right), face_mesh (no extra charge: draws each face's mesh so a video model keeps lip, eye and head movement; set it when people talk or emote), max_faces (1-4, default 4), include_face_landmarks (no extra charge: also returns a face landmarks JSON link). The price is held when the job starts and charged on success only; a failed job is never charged. Jobs take about 1-2 minutes: the tool returns a job_id — poll check_generation_status with that job_id and type "depth" every 15-30 seconds until it returns the finished depth video, then tell the user. The depth video is also saved to the user's BudgetPixel library.

Discovered
generate_image

Use this to create or edit an AI image. Text-to-image from a prompt, OR image-to-image / editing / multi-reference by passing input_images (URLs, data URIs, or base64) — e.g. edit or restyle an image the user just generated by passing its URL. Input support is per-model: some take 1 image, some several, some none (check each model's max_input_images via list_models). Submits an async job and returns a job_id — then call check_generation_status to poll (usually ready in seconds); when complete it returns the finished image inline for you to display. Each call starts a new job that spends credits from the user's BudgetPixel balance (failed jobs aren't charged). Default model: seedream-5.5; call list_models to see every available model with prices and input limits. Write @handle in the prompt to cast a character (list_characters), e.g. a free BudgetPixel AI influencer like @barry; an item's @handle (search_wardrobe) dresses them: "@barry wearing @camel_coat_set"; a pose's @handle (search_poses) poses them: "@barry in @sitting_knee_up_pose".

Discovered
generate_music

Use this to create an AI music track (full songs with vocals, or instrumentals). Three models: music-3.0 (default, 200 credits — songs from a prompt and/or lyrics, lyrics optimizer on by default so a prompt alone works), mureka-v9 (60 credits — sings the user's EXACT lyrics verbatim, or instrumental/BGM), and lyria-3 (100 credits — high-fidelity from a rich prompt, can condition on up to 10 reference images), and sonilo-music (instrumental/background music of an EXACT length via duration, 5–360 s — priced PER SECOND at 4 credits/s with a 10-second minimum, no vocals). VIDEO-TO-MUSIC: pass a `video` URL (upload_media first for local files) and sonilo-video-music composes a licensed soundtrack for the clip's content, pacing and mood — priced per second of the video's measured length (15 credits/s, 10 s minimum, ≤360 s). Flat price per track (per second for the Sonilo models), charged on success only; each call starts a new paid job. Submits an async job and returns a numeric job_id — music takes a minute or three: poll check_generation_status with the job_id AND type "music" every 15–30 seconds, then share the finished track's listen/download link with the user (chat can't embed audio players).

Discovered
generate_sound_effect

Use this to create sound effects (NOT music). TEXT mode: describe the sound — Foley, ambience, UI sounds, whooshes/transitions, impacts, action sounds — with sonilo-sfx: 1–180 seconds, mp3 or wav, PRICED PER SECOND of the requested duration (5 credits/s, 3-second minimum → 5 s = 25, 10 s = 50, 30 s = 150 credits). VIDEO mode: pass a video URL (upload local files with upload_media first) to get frame-accurate effects synced to the clip's visible events with sonilo-video-sfx — billed per second of the VIDEO's measured length (15 credits/s, 3-second minimum, up to 360 s) and returns both the SFX track and the video with the effects mixed in. Each call starts a new paid job, charged on success only. Keep text clips as short as the sound needs and confirm cost for long videos. Submits an async job and returns a numeric job_id — text clips finish within ~15 seconds, video jobs can take a few minutes: poll check_generation_status with the job_id AND type "sound_effect" every 5–15 seconds, then share the finished link(s) with the user (chat can't embed players). For songs or background music use generate_music instead.

Discovered
generate_video

Use this to create or edit an AI video. Text-to-video from a prompt; image-to-video by passing image (start frame, + optional end_image); reference-to-video by passing reference_images; or video-to-video editing by passing video (an input video URL — upload local files with upload_media first). IMPORTANT — cost: video is priced per SECOND and by resolution (default model seedance-2.5: 480p=150, 720p=330, 1080p=750 credits/sec, plus 80/160/375 per second of reference-video INPUT), so e.g. 5s at 720p ≈ 1,650 credits and 5s at 1080p ≈ 3,750; confirm with the user before expensive combos (long durations or many reference clips). Each call starts a new paid job, charged on success only. Submits an async job and returns a job_id (uuid) — video takes MINUTES: poll check_generation_status every 15–30 seconds until it returns the finished video link, then share that link with the user. Default model: seedance-2.5; call list_models for available video models and prices. Write @handle in the prompt to cast a character (list_characters), e.g. a free BudgetPixel AI influencer like @barry; an item's @handle (search_wardrobe) dresses them: "@barry wearing @camel_coat_set"; a pose's @handle (search_poses) poses them: "@barry in @sitting_knee_up_pose".

Discovered
get_character

Use this to learn one character before casting it or using it elsewhere: its look word for word, personality, speaking style, backstory, directing notes, signature details and consistency rules, every picture with a download link (full size for the BudgetPixel influencers and the user's own characters, so they can be used with other tools too), the models a mention works on, and the terms for using an influencer. Use the profile to write prompts, captions and scripts in the character's own voice. Free.

Discovered
get_credit_balance

Use this when the user asks about their remaining credits, subscription plan, or usage. Returns monthly credit balance, extra credits, total available, and plan name.

Discovered
get_generation_history

Get the user's recent generations made through this connector or the developer API — images by default, or pass type "video", "music", or "sound_effect". Outputs are kept for about 24 hours (they are never saved to the user's asset storage unless save_to_assets is called), so rows older than that show as expired with no link. Returns prompts, models, status, and result links: image URLs (reusable as input_images on generate_image to edit/restyle one — e.g. "make the third one wintery"), video watch links, or music / sound-effect listen links (also reusable as create_social_post media). Every row's job_id works with check_generation_status (music and sound effects also need their type) and with save_to_assets. Generations the user made on the BudgetPixel website are in their gallery, not here.

Discovered
get_pose

Use this to read one pose before using it: its description word for word (the text a mention sends with the mannequin picture), shelf, difficulty, what carries the body, props, and every mannequin picture by figure (woman, man) and place on the Camera Angles globe: the pose's own pictures and the views members made, each with its place in words and numbers ("Back left · from above", azimuth 225, elevation 30) and the mention that asks for that view ("@barry in @seiza_pose.back"). The woman or man mannequin is picked automatically from the character's gender. When the angle the user wants is missing, make_pose_view makes it. Free.

Discovered
get_wardrobe_item

Use this to read one wardrobe item before using it: its description word for word (the text a mention sends with the picture), colours, tags, a download link to its picture and how to use it. Pass the id that add_wardrobe_item returned to see whether a new outfit is ready yet (and its final @handle). Free.

Discovered
list_characters

Use this to see the characters the user can cast in images and videos: the free BudgetPixel AI influencers (memorable personas with a consistent face, like @barry, @rosa or @fifi, free for every user) plus the user's own and collected characters. To cast one, write its @handle in the prompt of generate_image or generate_video (e.g. "@barry orders coffee like he owns the cafe") on a model that takes characters. q filters by words (e.g. "fitness"); source narrows to official, mine or collected. For one character's full profile and pictures call get_character; to pick influencers for a brief call recommend_influencers. Free.

Discovered
list_models

List the AI image, video, music, sound-effect, and 3D models available on BudgetPixel, plus the depth-map tool's sizes, with standard credit prices and capabilities. Featured models come first with a one-line role hint (when to pick each). Image models that charge by output size list every size's price (the size you pass as resolution sets the price). Video models are priced per SECOND by resolution; music models are flat per track; sound effects are per second with a 3-second minimum; 3D models are priced per job (base price plus named options); depth maps (generate_depth_map) are priced per second of the input video by model size (small / base / large), 5-second minimum. Prices shown are standard rates in credits. Video resolutions delivered as H.265 (HEVC) instead of H.264 are marked, because some browsers cannot play H.265.

Discovered
list_my_themes

List the live clan themes the user can post to — themes of the clans they own, moderate, or have joined (each with the user's role, the theme's brief, and when entries close). Use it when the user wants to post into a theme / enter a theme / share to their clan, then pass the chosen theme's id as create_social_post's theme_id. Free and read-only; themes that haven't started or have ended are not listed.

Discovered
make_pose_view

Use this when a pose lacks the camera angle the user wants (get_pose lists the views a pose has). It makes a view of one of the pose's mannequins from another place on the Camera Angles globe: the mannequin's front picture is turned there, a check confirms it is the same pose and where the camera landed, and the view joins the shared pose library for EVERYONE, with its own mention (there are no private views). figure: woman or man, the one matching the character's gender (a mention sends that one; woman when unknown). azimuth, where the camera stands, in steps of 45: 0 front, 45 front right, 90 right side (the camera moved to the viewer's right, so the figure's LEFT side shows), 135 back right, 180 back, 225 back left, 270 left side, 315 front left (the pose's own three-quarter picture). elevation: 0 eye level, 30 from above, 60 from high above. A place that already has a view answers at once, free. Otherwise a job starts: it usually takes 30-90 seconds, so poll check_pose_view with the returned job_id every 10-15 seconds. 40 credits, charged only when the view lands where asked (a second try is free); a try that lands on another empty place is kept there for everyone, free. If someone is already making that view, you join their job for free. Up to 50 new views a day. Once done, write the view's mention after a character: "@barry in @seiza_pose.back" (.front_right, .right, .back_right, .back, .back_left, .left, .three_quarter, .above = front from above, .top = front from high above; other places a code like .az135_el30).

Discovered
recommend_influencers

Use this when the user wants an AI influencer or a character for a product, brand, campaign, ad or post and hasn't picked one. Pass the brief (what it is, for whom, where it will be posted) and get the BudgetPixel AI influencers who fit it best, each with why, a content idea and a ready-to-use prompt that starts with their @handle (pass it to generate_image or generate_video). include_mine also considers the user's own characters. Free.

Discovered
save_to_assets

Keep a generation permanently. Outputs made through this connector expire about 24 hours after generation and are NOT stored in the user's BudgetPixel assets by default. Call this when the user wants to keep, reuse later, or find a result in their gallery / workshops — it copies the output into their assets (this counts against their storage like a website generation). Pass the job_id (and type for video / music / sound_effect). Safe to call twice: an already-saved job just reports already_saved.

Discovered
search_poses

Use this to put a character in a specific body pose (sitting with one knee up, hand on hip, a yoga stance, mid-jump ...). It searches the shared BudgetPixel pose library: every pose is drawn on two faceless grey mannequins, a woman and a man, and every pose is one a real body can do. Then write "@<character> in @<pose_handle>" in the prompt of generate_image or generate_video, e.g. "@barry in @sitting_knee_up_pose on a beach at sunset": the woman or man mannequin is picked automatically from the character's gender, and the character takes the position while keeping their own face, body and clothes. Add an angle to the handle for another view, e.g. @sitting_knee_up_pose.three_quarter (front by default; get_pose lists the angles a pose has). query searches by words ("knee up", "yoga"); shelf narrows to one kind of pose. When nothing fits, design_pose makes a new one. Free.

Discovered
search_stock_audio

Use this when the user needs an existing sound effect or a piece of background music — for a video, podcast, stream, game, app or presentation — rather than a newly generated one. Searches BudgetPixel's free audio library, licensed CC BY 4.0 for commercial use, every item listened to and scored before listing. kind "sound_effect": whooshes, impacts, UI sounds, Foley, ambiences, animals, vehicles (a fraction of a second to about 6 s). kind "music": instrumental background tracks such as lofi, corporate, cinematic, acoustic (up to about a minute). Costs 10 credits per search, charged even when nothing matches. Try it before generate_sound_effect or generate_music: a search is cheaper and instant. Write the query as a few plain words naming the sound ("door creak", "soft notification chime", "lofi study beat"), not a generation prompt: every word counts, and a word the library does not have counts as a miss. It never generates: if nothing fits, say so. LICENCE: wherever a result is used, include its credit line exactly as returned (the `attribution` text; `attribution_html` for web pages).

Discovered
search_stock_images

Use this when the user needs an existing stock photo, illustration, background, wallpaper or texture — for a website, slide, blog post, app, video or design — rather than a newly generated image. Searches BudgetPixel's stock image library: AI-generated images, each reviewed before listing (no real people, logos or text), licensed CC BY 4.0 for commercial use. Set transparent to true for cut-outs only: PNG files with a transparent background, for stickers, overlays and compositing. Costs 10 credits per search, charged even when nothing matches, so write one specific query rather than many vague ones. It never generates: if nothing fits, say so. LICENCE: wherever an image is used, include its credit line exactly as returned (the `attribution` text; `attribution_html` for web pages). Download from the returned URLs rather than hotlinking them in production.

Discovered
search_wardrobe

Use this to find clothes to put on a character: the user's own wardrobe items, the ones they saved and the free BudgetPixel library (dresses, suits, sportswear, costumes ...). To dress a character, write both @handles in the prompt of generate_image or generate_video, e.g. "@barry wearing @camel_coat_set at a gala": the item's picture goes with it and the person wears it. q filters by words ("red dress", "winter"); category by shelf (work, party, sport, swim, underwear ...); source narrows to mine, saved or house. fit is who the clothes are cut for: pass the character's gender (from list_characters or get_character: female or male) to get what suits them, unisex clothes included. Every item says its fit. Free.

Discovered
upload_media

Upload a local image, video, or audio file to BudgetPixel and get back a short-lived URL (valid ~24h) to use as a generation input: pass it as an input_images value on generate_image, or as image / end_image / reference_images / video / audio on generate_video. Use this when the user has a LOCAL file: read the file and pass its base64 as 'file'. Not charged; max 50MB. Video/audio inputs REQUIRE this (generate_video takes them by URL only). If you already have a public URL, pass it straight to the generate tool instead.

Discovered
upscale_image

Use this to upscale an image to a higher resolution. Default model p-image-upscale (Pruna AI) returns results in seconds and is priced by the target resolution: 4 MP = 10, 8 MP = 15, 16 MP = 30, 32 MP = 60 credits. Alternative clarity-upscaler does creative detail enhancement (steer with prompt/creativity) at a flat 30 credits and takes ~60 seconds. Pass the image as a URL (a generated image's URL, or upload_media for local files), a data URI, or base64. Charged on success only. The tool waits for the result and returns the upscaled image's URL — share it with the user. Unlike generations, the upscaled image is also saved to the user's BudgetPixel library.

Discovered
upscale_video

Use this to upscale a video, with one of two models. Topaz (model topazlabs-video-upscale, the default): 1080p or 4K at 30 or 60 fps, priced per second of the INPUT video: 1080p = 15 (30fps) / 30 (60fps) credits/s, 4K = 60 / 120 credits/s, so a 10s clip to 1080p30 costs 150 credits; its result is an H.265 (HEVC) 10-bit MP4, which some browsers cannot play (black frame with audio) — tell the user. FLUX 3 Video Upscale (model flux-3-video-upscale): 1.5x to 3x the input frame (input up to 2560x1440), precise (keeps faces and products) or creative (adds fine detail), keeps the frame rate and audio, H.264 output; priced per megapixel-second of OUTPUT: 95 credits precise / 135 creative, so one second of 1080p output is 188 / 267 credits and of 4K 752 / 1068 — it costs far more than Topaz, so state the price and confirm with the user first. Input up to 20 seconds (pass a URL; upload_media for local files). The price is held when the job starts and charged on success only. Jobs take a few MINUTES: the tool returns a job_id — call upscale_video again with just job_id every 30-60 seconds until it returns the finished video URL, then share it. The upscaled video is also saved to the user's BudgetPixel library.

Discovered

Recent measurements

Probe history

View status
Latest stored probes. Raw probe rows are kept for 14 days.
CheckedResultResponseTools
Connected456 ms31