glassypic

AI image processing: upscale, resize, crop, compress, convert file format, and generate SEO metadata

사용해야 할까요

품질 및 안전성

B
설명 품질
100%
스키마 완전성
53%
이름 품질
80%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~1,290토큰 (도구 정의)
~4.3 KB일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 1.01%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "glassypic": {
      "command": "npx",
      "args": [
        "@glassypic/mcp-server"
      ]
    }
  }
}

실행 가능한 패키지

npm@glassypic/mcp-server2.0.2stdio

원격 엔드포인트

https://app.glassypic.com/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (3)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢optimize_image(input, output_path, output_format, output_width_px, output_height_px, ...)

Optimize an image: smart lossy compression (typically 60-80% size reduction), optional resize/upscale/format conversion, and AI-generated SEO metadata. Accepts absolute local file paths or remote URLs. In remote/API mode, only remote URLs are supported. Supported input formats: JPG, PNG, WebP, AVIF, GIF, SVG, ICO, HEIC, TIFF, BMP (max 50 MB). Supported output formats: JPG, PNG, WebP, AVIF, GIF, SVG, ICO. Each call costs 3 credits + 1 if SEO tags enabled. Animated GIFs are processed frame-by-frame (each frame optimized individually). Cost = frames × per-frame operations. Use confirm_gif_cost: true after reviewing the cost warning. Free tier: 20 credits/day, no signup. Log in with the login tool for more credits. Use status tool to check remaining credits before batch processing.

입력 스키마

{
  "type": "object",
  "properties": {
    "input": {
      "type": "string",
      "description": "Absolute local file path or remote URL of the image to optimize. Note: in remote/API mode, only remote URLs are supported (no local file paths). Supported inputs: JPG, PNG, WebP, AVIF, GIF (animated supported), HEIC, TIFF, BMP (max 50 MB). GlassyPic supports high-quality conversion between any input and output format."
    },
    "output_path": {
      "type": "string",
      "description": "Where to save. Accepts a file path (/tmp/out.webp) or directory ending in / (/tmp/images/). If omitted: saves next to original, named with SEO slug when SEO is enabled or .tinified suffix otherwise. URLs save to current working directory."
    },
    "output_format": {
      "type": "string",
      "enum": [
        "original",
        "jpg",
        "png",
        "webp",
        "avif",
        "gif",
        "svg",
        "ico"
      ],
      "description": "Output format. Defaults to 'original' (keep input format). Animated GIFs stay animated when output is 'gif'; converting to other formats preserves only the first frame. SVG output from raster input uses vector tracing. ICO output generates a favicon set (16, 24, 32, 48, 256px) unless a specific size is given."
    },
    "output_width_px": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "description": "Target width in pixels. Set only width for proportional resize. Set both width and height for exact output dimensions (see output_resize_behavior)."
    },
    "output_height_px": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "description": "Target height in pixels. Set only height for proportional resize. Set both width and height for exact output dimensions (see output_resize_behavior)."
    },
    "output_upscale_factor": {
      "type": "number",
      "enum": [
        2,
        4
      ],
      "description": "AI upscale factor: 2 (2×) or 4 (4×). Uses Real-ESRGAN for high-quality upscaling."
    },
    "output_resize_behavior": {
      "type": "string",
      "enum": [
        "pad",
        "crop"
      ],
      "description": "When both width and height are set and aspect ratio differs: 'pad' adds white padding (default), 'crop' smart-crops to fill exact dimensions"
    },
    "output_seo_tag_gen": {
      "type": "boolean",
      "description": "Generate SEO metadata (alt text, keywords, filename) and rename output file to SEO slug. Costs 1 extra credit. Default: true."
    },
    "output_file_size_limit": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "description": "Target maximum output file size in bytes. The server will attempt to meet this limit through additional compression. Not guaranteed."
    },
    "confirm_gif_cost": {
      "type": "boolean",
      "description": "Set to true to proceed with animated GIF processing after seeing cost warning. Required for animated GIFs to prevent unexpected credit consumption."
    },
    "gif_frame_limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "description": "Maximum frames to process for animated GIFs (1-100, default 100). Reduces cost by sampling fewer frames while preserving animation."
    },
    "_gif_temp_file_id": {
      "type": "string",
      "description": "Internal: temp file ID from a previous GIF cost warning. Skips re-upload."
    }
  },
  "required": [
    "input"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "output_path": {
      "type": "string",
      "description": "Absolute path where the optimized file was saved"
    },
    "output_size_bytes": {
      "type": "number",
      "description": "File size of the optimized image in bytes"
    },
    "output_width_px": {
      "type": [
        "number",
        "null"
      ],
      "description": "Width of the output image in pixels"
    },
    "output_height_px": {
      "type": [
        "number",
        "null"
      ],
      "description": "Height of the output image in pixels"
    },
    "output_format": {
      "type": [
        "string",
        "null"
      ],
      "description": "Output format: jpg, png, webp, avif, or gif"
    },
    "compression_ratio": {
      "type": [
        "number",
        "null"
      ],
      "description": "Output-to-input size ratio, e.g. 0.35 means 65% smaller"
    },
    "seo_alt_text": {
      "type": [
        "string",
        "null"
      ],
      "description": "AI-generated image alt text for accessibility and SEO"
    },
    "seo_keywords": {
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        {
          "type": "null"
        }
      ],
      "description": "AI-generated keywords describing the image"
    },
    "seo_filename": {
      "type": [
        "string",
        "null"
      ],
      "description": "AI-generated SEO filename slug without extension"
    }
  },
  "required": [
    "output_path",
    "output_size_bytes",
    "output_width_px",
    "output_height_px",
    "output_format",
    "compression_ratio",
    "seo_alt_text",
    "seo_keywords",
    "seo_filename"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢status

Check your GlassyPic account status: login state, tier, credits remaining, and credit reset time. Use this before batch processing to verify sufficient credits.

입력 스키마

{
  "type": "object",
  "properties": {},
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪upgrade

Open the GlassyPic pricing page in your browser to upgrade your plan for more credits. Plans: Free (30/day), Pro (3,300/month), Max (12,000/month).

입력 스키마

{
  "type": "object",
  "properties": {},
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 3개
검증됨버전이 기록되지 않음도구 3개