← ClaudeAtlas

fused-storagelisted

The fused storage and secrets MCP tools — inspecting cloud-native datasets and managing secrets. Use when finding/listing/counting S3 objects, reading a Parquet/Arrow/CSV schema, minting a download URL, uploading content, or storing/reading/deleting secrets, via mcp__openfused__{list_files,count_files,get_file,get_file_schema,upload_file,get_secret,put_secret,list_secrets,delete_secret}. For running code over the data see fused-execute; for the equivalent CLI commands see fused-cli. If this is a step in building or running a project, load `fused-projects` first for the end-to-end model.
fusedio/skills · ★ 5 · AI & Automation · score 65
Install: claude install-skill fusedio/skills
# Storage & secrets in fused > **Part of the Fused skill set — don't work from it alone.** Fused is `workspace ⊃ > project ⊃ UDF`. If this is a step in building or running a project, load > **`fused-projects`** for the end-to-end model and **`fused-execute`** for running > code over the data. See **`fused-guide`** for the full set. These tools are the **find → load → explore** front of the workflow: locate data, understand its shape, and move bytes in/out — *before* you run code over it with `execute_code`. All are **always-on** MCP tools (no `--enable-infra` / `--enable-destructive` flags needed) — except `delete_secret`, which requires `--enable-destructive` — and back the same operations as the CLI's `files …` / `secrets …` commands (see fused-cli). They operate on the **active environment's** storage backend — real S3 on AWS, the local filesystem on the local backend — so the same calls work on either of them. ## Inspect before you compute The cheapest way to avoid a wasted `execute_code` run is to look first. Typical flow: `list_files` → `count_files` → `get_file_schema`, then write code against a known schema. ### `list_files(bucket?, prefix?, page_size=100, page_token?)` - **No `bucket`** → lists buckets: `{"buckets": [...], "count": N}`. - **With `bucket`** → one page of keys under `prefix` plus a `next_page_token`. **Paginate**: follow `next_page_token` in successive calls until it is `null`. Do not assume one call returns everything — `page_size` defaults