Pixelvault

io.github.pixelvault-devPublished by GitHub account pixelvault-devv0.4.0Updated Oct 25, 2026

Image infrastructure for agents. Upload, transform, and deliver images through MCP, CLI, or API.

VerifiedStreamable HTTPWeb executableFiles & StorageMedia & Design

Overview

AI-generated overview

PixelVault is a remote image-hosting service that lets an assistant upload, list, transform, sign and delete images and get CDN delivery URLs.

What you can do
List and inspect images in a project, including CDN URL, size, MIME type and dimensions, with pagination and most-recent-first ordering. Upload single images from an attachment, a public URL or base64 data, or batch-upload 1–50 images grouped into a collection. Build on-the-fly transform URLs for resize, crop, format and quality, AI background removal, blur, sharpen, rotate, flip, color adjustments and watermark tiling. Mint time-limited signed URLs for private images. Permanently delete an image by id. Check plan, monthly storage and upload usage against quota. Prepare a short-lived upload URL with a curl command for local files, and scan a page for hotlinked Imgur images to return rescue (
When to use it
Use it when an assistant needs to publish or host images and hand back CDN links, generate resized or reformatted variants, batch-upload generated assets such as CI artifacts or design variants, or deliver private images through expiring signed URLs.
Requirements
A remote endpoint at mcp.pixelvault.dev over streamable HTTP. A PixelVault account and API key, created in the dashboard and sent as a Bearer token in the Authorization header. Network access to the service and its CDN.
Before you install
The API key in the Authorization header grants access to your project's images. Uploads publish images publicly by default unless visibility is set to private. delete_image permanently removes an image, and deleting a private image revokes its signed URLs. Uploads accept a server-fetched source URL, and batch uploads are SSRF-guarded. Uploads count against your plan's storage and upload quota.

Installation

In SourceWeft

  1. Open Pixelvault in the dashboard and add it to a workspace.
  2. Connect Authorization token credentials. They are stored privately and never shown on public pages.
  3. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.pixelvault-dev%2Fpixelvault/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "pixelvault": {
      "type": "http",
      "url": "https://mcp.pixelvault.dev/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_TOKEN>"
      }
    }
  }
}

Tools

10

get_image

Get image

Get metadata (CDN URL, size, MIME type, dimensions) for one PixelVault image by id. Maps to GET /v1/images/:id. Requires a PixelVault API key sent as a Bearer token in the Authorization header. The returned CDN URL supports on-the-fly transforms via query params — e.g. ?w=400&fit=cover (resize/crop), ?fmt=webp (format), ?segment=foreground (AI background removal → transparent PNG), effects like ?blur=30&saturation=0&rotate=90, and ?tile=<image_id.ext> (tile another of your images as a watermark). Or call the transform_image tool to build a valid transform URL for you. See https://pixelvault.dev/docs#transforms.

Parametersidrequired

list_images

List images

List images in your PixelVault project, most recent first. Maps to GET /v1/images with pagination. Requires a PixelVault API key sent as a Bearer token in the Authorization header. The returned CDN URL supports on-the-fly transforms via query params — e.g. ?w=400&fit=cover (resize/crop), ?fmt=webp (format), ?segment=foreground (AI background removal → transparent PNG), effects like ?blur=30&saturation=0&rotate=90, and ?tile=<image_id.ext> (tile another of your images as a watermark). Or call the transform_image tool to build a valid transform URL for you. See https://pixelvault.dev/docs#transforms.

Parameterspageper_page

get_usage

Get usage and quota

Show your plan, this month's usage (storage, uploads) and what is left of the quota, so you can check before a bulk upload. Maps to GET /v1/usage. Read-only. Requires a PixelVault API key sent as a Bearer token in the Authorization header.

Takes no parameters.

delete_image

Delete image

Permanently delete one PixelVault image by id. Maps to DELETE /v1/images/:id. Requires a PixelVault API key sent as a Bearer token in the Authorization header.

Parametersidrequired

create_upload_url

Create temporary upload URL

Prepare a public image upload from a local shell file when no host attachment download URL exists. Compute the file size and SHA-256 in the shell, then call this tool with filename, size and sha256. Returns a 10-minute URL and curl command to PUT the raw file bytes without an API key or base64. The shell must have network access to this MCP host. The PUT response contains the CDN URL and Markdown. Do not publish the temporary upload URL or retry uploads automatically.

Parameterssizerequiredsha256requiredfilenamerequired

upload_image

Upload image

Upload an image publicly to PixelVault and get an instant CDN URL. Maps to POST /v1/images. Provide exactly one of `file` (a host-provided attachment), `source_url` (a public http(s) URL the server fetches), or `data` (base64-encoded bytes). Prefer file for attachments; optional `folder`, `filename`, and `expires_in` (seconds, for an auto-expiring image). Max 5 MB; JPG/PNG/GIF/WebP/AVIF/SVG. Requires a PixelVault API key sent as a Bearer token in the Authorization header. For local shell files without a host download URL, use create_upload_url. The returned CDN URL supports on-the-fly transforms via query params — e.g. ?w=400&fit=cover (resize/crop), ?fmt=webp (format), ?segment=foreground (AI background removal → transparent PNG), effects like ?blur=30&saturation=0&rotate=90, and ?tile=<image_id.ext> (tile another of your images as a watermark). Or call the transform_image tool to build a valid transform URL for you. See https://pixelvault.dev/docs#transforms.

Parametersdatafilefolderfilenameexpires_insource_url

upload_batch

Upload image batch

Upload many images (1–50) in one call, grouped into a collection — e.g. a CI run or a set of generated variants. Maps to POST /v1/images/batch. Each item is `data` (base64) or `source_url` (server-fetched, SSRF-guarded), with optional `filename`/`metadata`. Set `visibility: "private"` to get a signed URL per image (free plan: up to 100 private images) instead of a public CDN URL. Optional `type`/`name` (idempotent by (type, name)), `expires_in` (image TTL), `sign_expires_in` (signature lifetime), and collection `metadata`. Partial-failure tolerant: each returned item has its own `ok`. Requires a PixelVault API key sent as a Bearer token in the Authorization header. The returned CDN URL supports on-the-fly transforms via query params — e.g. ?w=400&fit=cover (resize/crop), ?fmt=webp (format), ?segment=foreground (AI background removal → transparent PNG), effects like ?blur=30&saturation=0&rotate=90, and ?tile=<image_id.ext> (tile another of your images as a watermark). Or call the transform_image tool to build a valid transform URL for you. See https://pixelvault.dev/docs#transforms.

Parametersnametypeimagesrequiredmetadataexpires_invisibilitysign_expires_in

sign_url

Sign private image URL

Mint a time-limited signed URL for a private image. Maps to POST /v1/images/:id/sign-url. Provide `id` and optional `expires_in` (seconds, default 3600). The signature binds the image, so the URL can't be replayed against another image; strip it and the CDN returns 403. Deleting the image revokes its URLs. Requires a PixelVault API key sent as a Bearer token in the Authorization header.

Parametersidrequiredexpires_in

transform_image

Build transform URL

Build an on-the-fly transform URL for a PixelVault image (resize, crop, format/quality, AI background removal, blur/sharpen/rotate/flip, brightness/contrast/saturation, and same-project watermark tiling). Provide exactly one of `url` (a PixelVault CDN URL) or `id` (an image id, resolved via the API — requires an API key), plus one or more transform params. Returns the ready-to-use CDN URL; the transform is produced and cached on first request. See https://pixelvault.dev/docs#transforms.

Parametersidfiturlblurflipsizetilezoomwidthformatheightrotate+8 more

rescue_imgur

Rescue Imgur images

Scan a web page for hotlinked Imgur images and return a PixelVault rescue URL for each — a proxy that lazily rehosts the image on first request, keeping it working through the UK Imgur block. The anonymous rescue tier is a durable ~30-day edge cache (see `cache_ttl_days` in the result), not permanent storage. Maps to POST /v1/imgur-scan (server-side page fetch; no API key required). Provide `page_url` (a public https:// page). Drop each returned rescue_url into your HTML to rehost on first request.

Parameterspage_urlrequired

Version history

2
  1. v0.4.0LatestOct 25, 2026
  2. v0.3.0Sep 16, 2026

Score

83% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts

    Declare a GitHub repository with a README, or serve resource_documentation in the OAuth protected-resource metadata.

  • LicenseNot applicable

    A hosted service is used under its provider's terms, so no license is expected here. This check is left out of the percentage.