mcpField
G
gpt-image-2

gpt-image-2

github.com/finpeakincCreative & media2212 installsUpdated 5d ago
Repository

About gpt-image-2

gpt-image-2 is a skill for generating or editing images through Frevana's AI Factory image API. It accepts prompts and optional reference images, with configurable output options and JSON responses.

Key features

  1. 01Generate or edit images from prompts
  2. 02Use local or remote reference images
  3. 03Load images from directories
  4. 04Apply a PNG mask to image inputs
  5. 05Configure size, quality, and output format
  6. 06Return API response JSON

Use cases

  1. 01Generate an image from a text prompt
  2. 02Edit an image using reference inputs
  3. 03Save the API response or retrieve the hosted image URL

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/finpeakinc/frevana-skills --skill gpt-image-2

After installing, type/gpt-image-2in Claude Code to confirm it loaded.

Bundled filesscripts/generate_image.shtests/test_generate_image.py

Details

From the project README

GPT-Image-2

Generate or edit images through Frevana's AI Factory image API.

This skill returns the validated API response JSON unchanged. Treat data[0].image_url as the primary image URL.

What This Skill Needs

  • user-provided prompt or contents
  • optional reference image inputs: --image, --image-url, --image-dir, --mask
  • optional Frevana image options: n, size, quality, background, output_format, output_compression
  • FREVANA_TOKEN in the environment variables, or an explicit --token override for the current run
  • optional FREVANA_AGENT_APP_INSTANCE_ID; when non-empty, the script sends it as the x-frevana-agent-app-instance-id header on the image generation request
  • curl
  • bash
  • python3

Execution Order

  1. Confirm the user provided the image prompt.
  2. If the user references one or more local image files, pass each one with --image.
  3. If the user references one or more remote image URLs, pass each one with --image-url; the script downloads supported images first, then reuses the existing upload flow.
  4. If the user references a local directory of images, pass it with --image-dir; the script recursively collects supported images from that directory.
  5. If the user provides a local mask image, pass it with --mask and keep it PNG-only.
  6. Do not ask for or pass through image routing overrides; the Frevana script owns them.
  7. Prefer the script over ad hoc curl commands.
  8. Let the script read FREVANA_TOKEN first.
  9. When FREVANA_AGENT_APP_INSTANCE_ID is non-empty, let the script attach it to the image generation request as x-frevana-agent-app-instance-id.
  10. In non-interactive runs, fail fast if the token is missing and tell the user to set FREVANA_TOKEN or pass --token.
  11. Return the raw API response JSON, or the first image URL when the user only wants the hosted asset.
  12. Save the JSON with --output when useful.

Allowed Options

  • --n: 1-10
  • --size: auto, 1024x1024, 1536x1024, 1024x1536, 256x256, 512x512, 1792x1024, 1024x1792
  • --quality: standard, hd, low, medium, high, auto
  • --background: opaque, auto
  • --output-format: png, jpeg, webp
  • --output-compression: 1-100
  • --image: repeatable local file path, .png/.jpg/.jpeg/.webp, each under 50MB
  • --image-url: repeatable remote http:// or https:// image URL; downloads supported .png/.jpg/.jpeg/.webp files first, each under 50MB
  • --image-dir: repeatable local directory path; recursively loads supported images, up to 16 images total across --image, --image-url, and --image-dir
  • --mask: optional local .png path, under 4MB, only when image inputs are present

Command

bash <skill-path>/scripts/generate_image.sh \
  --prompt "A cinematic product photo of a matte black espresso machine on travertine" \
  --size 1536x1024 \
  --quality high \
  --background opaque \
  --output-format png \
  --output ./out/gpt-image-2-result.json

bash <skill-path>/scripts/generate_image.sh \
  --prompt "Turn these product references into one polished hero shot" \
  --image ./refs/front.png \
  --image-url "https://example.com/reference/detail.png" \
  --image-dir ./refs/detail-shots \
  --mask ./refs/mask.png \
  --size 1024x1024 \
  --output ./out/gpt-image-2-edit-result.json

Response Shape

{
  "created": 1777367067,
  "background": "opaque",
  "output_format": "png",
  "quality": "high",
  "size": "1536x1024",
  "data": [
    {
      "revised_prompt": "string",
      "image_url": "https://static.frevana.com/images/user-id/example-image-id.png"
    }
  ],
  "credits_consumed": 1
}

Notes

  • Do not pass image routing overrides; the wrapper rejects them.
  • Do not pass --background transparent; gpt-image-2 does not currently support transparent backgrounds.
  • If the user says "use /path/to/reference.png", map that to --image /path/to/reference.png.
  • If the user says "use https://example.com/reference.png", map that to --image-url https://example.com/reference.png.
  • If the user says "use the images under /path/to/references", map that to --image-dir /path/to/references.
  • Keep prompt/contents required even for image-to-image requests.
  • Do not rewrite, proxy, or transform the returned Frevana image URLs unless the user asks for that.

Comments

Markdown supported