# 在本機建立有序圖片 PDF

Canonical URL: https://sosoapi.ai/zh-hant/docs/mcp/build-image-pdf

`sosoapi_build_image_pdf`

按 source_asset_ids 次序，從一至二十張有權存取嘅 Workspace 圖片，在本機建立 PDF 同精確 JPEG 頁面預覽。完整放入圖片，唔會裁切；支援 Unicode 標題同正方形、直向、橫向頁面，PDF 最多 50 MiB。只提供本機檔案；唔會冒充圖片素材或發布到 LinkedIn。

## Profiles 及連接方式

Profiles: core, full

Transports: stdio

Profile 只影響工具可見性，唔會授權。HTTP 冇本機檔案上傳。SOSOAPI_OUTPUT_SCHEMAS=1 會宣告輸出 schema；兩種模式都會回傳 structured results。

## 權限及改動

MCP annotations 只係發現提示，唔係存取控制保證；仍然有實際登入、角色、資源及能力檢查。

```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_ids": {
      "minItems": 1,
      "maxItems": 20,
      "type": "array",
      "items": {
        "type": "integer",
        "exclusiveMinimum": 0,
        "maximum": 9007199254740991
      }
    },
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "preset": {
      "type": "string",
      "enum": [
        "square",
        "portrait",
        "landscape"
      ]
    }
  },
  "required": [
    "workspace_id",
    "source_asset_ids",
    "title",
    "preset"
  ],
  "additionalProperties": false
}
```

## 結構化輸出

此 schema 描述成功工具結果嘅 structuredContent。MCP envelope 亦包括 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": {}
}
```

## 工具呼叫範例

以下虛構值已按 contract 驗證，唔係真實帳戶 ID、憑證或發佈紀錄。請用已授權範圍回傳嘅 ID、已準備好嘅素材及已審核排程取代，寫入前核對平台資格。此頁唔會呼叫 API。

```json
{
  "name": "sosoapi_build_image_pdf",
  "arguments": {
    "workspace_id": "11111111-1111-4111-8111-111111111111",
    "source_asset_ids": [
      42,
      43
    ],
    "title": "圖片 / Images",
    "preset": "portrait"
  }
}
```

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",
  "file_path": "/tmp/sosoapi-preparation-example/document.pdf",
  "title": "圖片 / Images",
  "preset": "portrait",
  "pages": [
    {
      "source_asset_id": 42
    },
    {
      "source_asset_id": 43
    }
  ]
}
```

## 對應 API 操作

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