# アップロード

> チャット内のファイルピッカー、ブラウザーで開くアップロードリンク、シェルからの署名付き URL を使って、どの MCP クライアントからでも自分の画像、オーディオ、動画を Nodaro にアップロードできます。

Source: https://nodaro.ai/ja/docs/mcp/tools/uploads

**アップロードツール**は、あなた自身のファイルを Nodaro に取り込みます。これにより、アシスタントは写真、音声の録音、クリップを次の生成に使えます。アップロードの方法は 3 つあります。チャット内のピッカー、ブラウザーで開くリンク、シェルコマンドを実行できるクライアント向けの署名付き URL です。どのアップロードツールにも `assets:write` 権限が必要です。アップロードにクレジットはかかりません。

## どの方法を使うか
| 方法 | ツール | 使えるクライアント | 仕組み |
| --- | --- | --- | --- |
| チャット内のピッカー | `upload_image_widget`、`upload_audio_widget`、`upload_video_widget` | Web 版の Claude など、MCP Apps を表示できるクライアント | チャットの中にファイルピッカーが開きます。公開 URL は自動的にチャットに戻ります。 |
| ブラウザーのリンク | `request_image_upload`、`request_audio_upload`、`request_video_upload` | すべてのクライアント | ブラウザーで Nodaro のリンクを開き、そこにファイルをドロップします。 |
| 署名付き URL | `prepare_image_upload`、`prepare_audio_upload`、`prepare_video_upload` | Cursor、Cline、Claude Desktop、Claude Code など、シェルにアクセスできるクライアント | アシスタントが `curl` コマンド 1 つで、ファイルを自分で送信します。 |

以前のジョブの結果など、ファイルにすでに公開 URL がある場合は、アップロードせずに、その URL を直接渡してください。

## `upload_image_widget`
チャットの中に、画像用のファイルピッカーを開きます。スマートフォンでは、ピッカーからカメラまたはフォトライブラリが開きます。ウィジェットがファイルをアップロードし、その公開 URL をチャットに伝えるので、ピッカーを 1 回タップするだけで済みます。`upload_audio_widget` と `upload_video_widget` は、オーディオと動画に対して同じように動作します。

**権限**：`assets:write`。**クレジット**：無料。

| パラメーター | 型 | 説明 |
| --- | --- | --- |
| `max_files` | integer | ピッカーが受け付けるファイル数で、1〜10 です。デフォルトは `1` です。1 人の人物のリファレンス写真を複数枚使う場合など、必要に応じて増やします。 |
| `purpose` | string | アップロードカードに表示される短いラベルで、最大 120 文字です。たとえば `product image for the catalog app` です。ファイルの用途を、アシスタントに思い出させる役割もあります。 |

**戻り値**：`{ upload_url, public_url }` のペアのリストである `uploads` と、最初のファイルの `upload_url` と `public_url` です。ピッカーを表示できないクライアントでも、これらを通常のリンクとして表示できます。

## `request_image_upload`
Nodaro の短いリンクを返します。そのリンクを任意のブラウザーで開き、画像をドロップします。ファイルはあなた自身のブラウザーを通って送られるため、どのクライアントでも、どんなファイルサイズでも使えます。`request_audio_upload` と `request_video_upload` は、オーディオと動画に対して同じことを行います。

**権限**：`assets:write`。**クレジット**：無料。

このツールにはパラメーターがありません。

**戻り値**：開くページである `upload_page_url` と、ファイルのアドレスになる `public_url` です。公開 URL は事前にわかっているので、アップロードが終わったことをあなたが伝えれば、アシスタントは次の呼び出しでその URL を使えます。

## `prepare_image_upload`
署名付きのアップロード URL を返します。アシスタントは `curl` で、この URL にファイルを送信します。ファイルは会話を経由しないため、サイズは問題になりません。`prepare_audio_upload` と `prepare_video_upload` は、オーディオと動画に対して同じことを行います。

**権限**：`assets:write`。**クレジット**：無料。

| パラメーター | 型 | 説明 |
| --- | --- | --- |
| `mime_type` | string | **必須**。送信するファイルの種類です。 |

| ツール | 受け付ける `mime_type` の値 |
| --- | --- |
| `prepare_image_upload` | `image/png`、`image/jpeg`、`image/webp`、`image/avif`、`image/heic`、`image/heif` |
| `prepare_audio_upload` | `audio/mpeg`、`audio/mp4`、`audio/wav`、`audio/x-wav`、`audio/webm`、`audio/ogg`、`audio/flac`、`audio/x-flac`、`audio/aac`、`audio/x-m4a` |
| `prepare_video_upload` | `video/mp4`、`video/webm`、`video/quicktime`、`video/x-matroska` |

**戻り値**：1 時間有効な `upload_url` と、`public_url` です。アシスタントは、次のコマンドでファイルをアップロードします。

```bash
curl -X PUT --data-binary @path/to/file -H 'Content-Type: image/png' '<upload_url>'
```

その後、`public_url` を次のツールに渡します。たとえば、`image_url` として渡します。

**Web 版の Claude では使えません:** 
Web 版の Claude と Claude の Android アプリはストレージのホストに接続できないため、署名付き URL でのアップロードは失敗します。これらのクライアントでは、チャット内のピッカーかブラウザーのリンクを使ってください。

## アップロードした後
- **公開 URL を渡す**：`modify_image`、`animate_image`、`lip_sync`、`add_captions` など、メディアを受け取るツールであれば、どれにでも公開 URL を渡せます。
- **以前のアップロードを探す**：[`browse_uploads`](https://nodaro.ai/docs/mcp/tools/gallery-and-assets#browse_uploads) を使います。このツールは、Nodaro が生成した結果とは別に、あなたがアップロードしたファイルを一覧表示します。
- **ナレーション付き動画にロゴを表示する**：[動画ディレクター](https://nodaro.ai/docs/mcp/video-director)で使うブランドロゴは、Nodaro にアップロードした画像である必要があります。そのため、先にこれらのツールのいずれかでアップロードしてください。

## Frequently asked questions

### どの MCP クライアントでも使えるアップロードツールはどれですか？

request で始まるアップロードツールです。request_image_upload、request_audio_upload、request_video_upload はリンクを返し、あなたは自分のブラウザーでそのリンクを開いてファイルをドロップします。そのため、どのクライアントでも、どんなファイルサイズでも使えます。

### Web 版の Claude で prepare_image_upload が失敗するのはなぜですか？

署名付き URL でのアップロードには、シェルコマンドでファイルを自分で送信できるクライアントが必要です。Web 版の Claude と Claude の Android アプリはストレージのホストに接続できないため、これらのクライアントではアップロードピッカーか、request で始まるツールのアップロードリンクを使ってください。

### 複数のリファレンス写真を一度にアップロードできますか？

はい。upload_image_widget に max_files を 1〜10 の範囲で渡します。ピッカーはその数のファイルを受け付け、ファイルごとに公開 URL を 1 つずつ返します。

### 以前にアップロードしたファイルを再利用するにはどうすればよいですか？

browse_uploads を呼び出すよう、アシスタントに依頼してください。アップロードしたファイルが URL とともに一覧表示されます。その URL は、どの生成ツールにも渡せます。
