Cover image for File Hosting Built for the Agent Era
Sponsored

File Hosting Built for the Agent Era

4 min read

Every "free file to URL" tool makes the same trade. You get a link fast, but it dies in a few days, or the file size cap is tiny, or the "direct" link actually redirects through an ad page first and breaks anything that expects to fetch the raw file. Fine for a one-off share. Useless the moment you're building something that depends on that link still working next month, or wants to create it from a script instead of a browser tab.

FileToUrl.org started as a straightforward answer to that: drop a file, get a clean, permanent URL back, no account required for the free tier. Any file type, up to 49MB, hosted at a proper filetourl.org link instead of a redirect chain.

The part most file hosts skip: an actual API

Once you're automating anything, whether that's a script, an app, or a Zapier-style workflow, the upload page stops mattering and the API does. FileToUrl's Developer plan gives you a REST endpoint that takes a POST with a bearer token and hands back a stable HTTPS link:

curl -X POST https://filetourl.org/api/public/v1/upload \
  -H "Authorization: Bearer ftu_live_YOUR_KEY" \
  -F "file=@/path/to/file.pdf"

That's the whole integration. No SDK to install, no OAuth dance.

Built for AI agents, not just HTTP clients

The more interesting part is the MCP server sitting next to that API. It's a genuine Model Context Protocol server, so tools like Claude Code or Cursor can create, upload to, and check the status of a shareable link as part of their own workflow, without you copy-pasting curl commands into a terminal on their behalf.

A couple of details make it actually usable inside an agent, rather than just technically MCP-compatible:

  • create_upload_url reserves the link and hands back a PUT endpoint hosted on filetourl.org itself. That matters more than it sounds: a lot of agent sandboxes run with a restrictive network egress allowlist, and if the upload target is some third-party storage bucket, you're stuck adding another domain to that list. Here, you only need to allow filetourl.org.
  • The file bytes go over as a raw PUT, not base64 through the model. Passing a file through an LLM as base64 is slow and burns tokens fast once you're past a hundred kilobytes. This sidesteps that entirely.
  • confirm_upload and get_file_status are free, read-only checks, so an agent can verify a link actually went live without spending another call.

There's also a fallback chunked-upload path (start_upload / upload_chunk / finish_upload) for clients that can't make their own HTTP requests, but the direct-PUT flow is the one worth reaching for first.

How it's priced

  • Free: 3 uploads/day, 49MB per file, links expire after 30 days, no signup
  • Pro (£24/yr): unlimited uploads, no size cap, links stop expiring while subscribed
  • Developer (£48/yr): everything in Pro, plus the REST API and MCP server, 2,000 calls and 25GB per month

The free tier plays by the same rules as most "free forever" file hosts, your link still expires eventually. Where it's different is that a small upgrade gets you permanence and programmatic access in the same place, rather than needing a separate paid tool for each.

Worth it if

You need a URL back from a script or an agent, not a UI you click through, and you don't want to run your own file storage just to get there. If you only need the occasional anonymous share and don't care whether the link survives past next week, the free tier (or a tool like Catbox) covers that fine without paying anything.

Try FileToUrl.org →