# upload_file: Upload a file

Bring a file into FynePDF. Shows a drop zone where the app supports it (Claude, ChatGPT, VS Code); it takes several files at once, e.g. for a merge, and reports their file_ids in order. With file_name and size_bytes it also returns a signed upload_url and a ready curl command, for a code sandbox or agent to PUT the bytes; the file_id works once the upload is done. ChatGPT users can just pass the attached file to any tool instead.

A tool of the [FynePDF MCP server](https://fynepdf.com/developers/docs/mcp) (`https://api.fynepdf.com/mcp`). Makes a new file; the original is kept.

## Inputs

| Input | Type | Required | What it does |
|---|---|---|---|
| `file_name` | string |  | Name with extension, e.g. report.pdf. |
| `size_bytes` | integer |  |  |

## The same over HTTP

From your own code, call [Add a file](https://fynepdf.com/developers/docs/api/create-file).

## Connect it

[Claude](https://fynepdf.com/developers/docs/mcp/claude) · [ChatGPT](https://fynepdf.com/developers/docs/mcp/chatgpt) · [Cursor](https://fynepdf.com/developers/docs/mcp/cursor) · [VS Code](https://fynepdf.com/developers/docs/mcp/vscode) · [Claude Code](https://fynepdf.com/developers/docs/mcp/claude-code)


---

Open this page in a browser: https://fynepdf.com/developers/docs/mcp/tools/upload_file

More: [All tools](https://fynepdf.com/tools) · [AI agents](https://fynepdf.com/ai/agents) · [llms.txt](https://fynepdf.com/llms.txt) · [Sitemap](https://fynepdf.com/sitemap.xml)
