# 이미지 배치 미리보기를 로컬에서 준비

표준 URL: https://sosoapi.ai/ko/docs/mcp/prepare-asset-images

`sosoapi_prepare_asset_images`

접근 권한이 있는 Workspace 이미지 한 장에서 제한 범위 내 자르기, 여백 추가 또는 종횡비를 유지한 크기 조정으로 JPEG 미리보기 1–4개를 만듭니다. 정적 PNG/JPEG만 지원하며 최대 20 MiB, 8 메가픽셀입니다. 로컬 파일, 크기, 경고 및 출처 정보를 반환합니다. sosoapi_upload_asset과 반환된 upload_arguments로 저장하기 전에 실제 파일을 확인하세요. 게시하지 않습니다.

## 프로필 및 전송 방식

프로필: core, full

전송 방식: stdio

클라이언트에 표시할 도구는 core 또는 full로 선택하세요. 권한은 변경되지 않습니다. 로컬 파일 업로드에는 stdio가 필요하며 HTTP에서는 사용할 수 없습니다. 검색에 출력 스키마를 포함하려면 SOSOAPI_OUTPUT_SCHEMAS=1을 설정하세요. 이 설정과 관계없이 도구는 구조화된 결과를 반환합니다.

## 권한 및 부수 효과

주석은 클라이언트의 도구 설명을 돕습니다. 각 호출은 계속 사용자 인증, 역할, 리소스 접근, 기능 권한을 확인합니다.

```json
{
  "readOnlyHint": false,
  "destructiveHint": false,
  "idempotentHint": false,
  "openWorldHint": false
}
```

`/assets-api/get` — agent:operate; synchronous_http_response

## 입력 필드

```json
{
  "type": "object",
  "properties": {
    "workspace_id": {
      "type": "string",
      "format": "uuid"
    },
    "source_asset_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "outputs": {
      "minItems": 1,
      "maxItems": 4,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "version": {
            "type": "number",
            "enum": [
              1
            ]
          },
          "destination": {
            "type": "string",
            "enum": [
              "facebook-feed-square",
              "facebook-feed-landscape",
              "instagram-feed-square",
              "instagram-feed-portrait"
            ]
          },
          "operation": {
            "type": "string",
            "enum": [
              "crop",
              "pad",
              "resize"
            ]
          },
          "focal_point": {
            "type": "object",
            "properties": {
              "x": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
              },
              "y": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
              }
            },
            "required": [
              "x",
              "y"
            ],
            "additionalProperties": false
          },
          "background": {
            "type": "string",
            "pattern": "^#[0-9a-fA-F]{6}$"
          }
        },
        "required": [
          "version",
          "destination",
          "operation",
          "focal_point",
          "background"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "workspace_id",
    "source_asset_id",
    "outputs"
  ],
  "additionalProperties": false
}
```

## 구조화된 출력

이 스키마는 성공한 도구 결과의 structuredContent를 설명합니다. MCP 응답에는 content도 포함되며 호출 실패 시 isError가 설정될 수 있습니다. 게시 시 접수된 요청이나 텍스트 응답을 확인으로 간주하지 말고 게시물의 최종 결과를 읽으세요. 연결된 API 작업에 권한과 재시도 규칙이 설명되어 있습니다.

```json
{
  "type": "object",
  "properties": {
    "stage": {
      "type": "string",
      "enum": [
        "ready",
        "failed"
      ]
    },
    "output_directory": {
      "type": "string"
    },
    "manifest_path": {
      "type": "string"
    },
    "preview_path": {
      "type": "string"
    },
    "retryable": {
      "type": "boolean"
    }
  },
  "required": [
    "stage"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": {}
}
```

## 도구 호출 예제

예제는 스키마로 확인한 가상 값을 사용합니다. ID를 사용 권한이 있는 값으로, 미디어를 준비된 에셋으로, 날짜를 확인된 게시 시각으로 바꾸세요. 쓰기 제출 전에 계정 적격성을 확인하세요. 이 페이지는 API 요청을 보내지 않습니다.

```json
{
  "name": "sosoapi_prepare_asset_images",
  "arguments": {
    "workspace_id": "11111111-1111-4111-8111-111111111111",
    "source_asset_id": 42,
    "outputs": [
      {
        "version": 1,
        "destination": "facebook-feed-square",
        "operation": "pad",
        "focal_point": {
          "x": 0.5,
          "y": 0.5
        },
        "background": "#ffffff"
      }
    ]
  }
}
```

structuredContent

```json
{
  "stage": "ready",
  "output_directory": "/tmp/sosoapi-preparation-example",
  "manifest_path": "/tmp/sosoapi-preparation-example/manifest.json",
  "preview_path": "/tmp/sosoapi-preparation-example/preview.html",
  "images": [
    {
      "file_path": "/tmp/sosoapi-preparation-example/01-facebook-feed-square.jpg",
      "width": 1080,
      "height": 1080,
      "cropped": false,
      "upscaled": false
    }
  ]
}
```

## 기반 API 작업

- [/assets-api/get](https://sosoapi.ai/ko/docs/api/assets-api-get)
