Send Me My Files: R2/S3 Upload with Signed URLs for Openclaw

A TypeScript-based MCP skill for uploading files to S3-compatible storage with secure, time-limited download links.

julianengel
v1.0.4
Jan 10, 2026
2
4.1k
0

Install & Download

1. ClawHub CLI

The fastest way to install a skill directly from the registry.

npx clawhub@latest install r2-upload

2. Manual Installation

Copy the skill folder to one of these locations

Global
~/.openclaw/skills/
Workspace
<project>/skills/

Priority: Workspace > Local > Bundled

3. Prompt Installation

Copy this prompt to OpenClaw to install it automatically.

Help me install r2-upload using Clawhub. If Clawhub is not installed, install it first (npm i -g clawhub).

Prefer to download?

Get the raw skill files in a ZIP archive.

What is Send Me My Files: R2/S3 Upload with Signed URLs?

Send Me My Files is a specialized technical integration designed to bridge the gap between AI agent workflows and cloud storage. By leveraging the Model Context Protocol (MCP), this skill enables agents to upload assets, logs, or documents directly to Cloudflare R2, AWS S3, or MinIO. It focuses on security and ease of use, providing a streamlined way to handle files within Openclaw Skills ecosystems.

The primary value of this skill lies in its ability to generate presigned URLs automatically. Instead of exposing your entire bucket or manually managing permissions, the skill creates secure, short-lived links that expire after a configurable duration. This makes it an ideal solution for developers who need their AI agents to share build artifacts or data exports safely.

Send Me My Files: R2/S3 Upload with Signed URLs Use Cases

  • Securely sharing large logs or build artifacts from an AI coding agent to a developer.
  • Automating cloud storage uploads within a CI/CD pipeline using AI-driven workflows.
  • Generating temporary, time-bound download links for sensitive documents to prevent unauthorized access.
  • Managing multiple cloud storage buckets across different providers through a single, unified interface.

How Send Me My Files: R2/S3 Upload with Signed URLs Works

  1. The user or AI agent triggers an upload using the r2_upload tool, providing a file path and optional metadata.
  2. The skill parses the local configuration file to identify the correct S3-compatible endpoint and credentials.
  3. It automatically detects the file's MIME type and generates a unique key (typically using a UUID prefix) to prevent naming collisions.
  4. The file is transmitted to the cloud provider (R2, S3, or MinIO) using secure credentials.
  5. Upon successful upload, the skill generates a presigned URL with a specific expiration timestamp (defaulting to 5 minutes).
  6. The final secure link is returned to the agent's context for presentation to the user.

Send Me My Files: R2/S3 Upload with Signed URLs Setup

To integrate this skill into your environment, first create a configuration file at ~/.r2-upload.yml or define the R2_UPLOAD_CONFIG environment variable.

default: my-bucket
buckets:
  my-bucket:
    endpoint: https://<account_id>.r2.cloudflarestorage.com
    access_key_id: your_access_key
    secret_access_key: your_secret_key
    bucket_name: my-bucket
    region: auto

For Cloudflare R2 users, ensure your API token has Object Read & Write permissions for the specific bucket. Once configured, your Openclaw Skills agent can begin interacting with the storage provider immediately.

Send Me My Files: R2/S3 Upload with Signed URLs Data Schema & Taxonomy

The skill organizes data and configuration using the following schema:

Feature Details
Configuration YAML-based storage for bucket endpoints, keys, and regions.
Path Mapping Supports custom keys or automatic UUID/filename mapping.
Metadata Automatic Content-Type detection based on file extension.
Link Lifecycle Signed URLs support expiration formats like 300s, 5m, 24h, or 1d.

Send Me My Files: R2/S3 Upload with Signed URLs Advanced Features

  • Multi-bucket support allowing seamless switching between different cloud providers or environments.
  • Custom expiration logic for signed URLs, giving users granular control over data accessibility.
  • Public URL flag to bypass signature generation for non-sensitive assets.
  • Integrated management tools including r2_list and r2_delete for object lifecycle control.
  • Compatibility with any S3-compliant API, ensuring no vendor lock-in when using Openclaw Skills.

SKILL.md


Loading

Related Openclaw Skills

METADATA

Github Stars: 0
forks: 0

Featured*