Skip to main content
Glama
ffumero2003

b2-mcp-server

by ffumero2003

Download a B2 file to local disk

b2_download_file
DestructiveIdempotent

Download a file from a Backblaze B2 bucket to a local folder, returning its saved path, size, type, and SHA-1 hash. Use overwrite to replace existing files.

Instructions

Downloads a file from a bucket to the local filesystem and returns where it landed, its size, type, and SHA-1. The destination must sit inside the directory named by B2_DOWNLOAD_ROOT. An existing file is not replaced unless overwrite is true. File content is never returned, only the path it was written to.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
fileNameYesName of the file in the bucket.
localPathNoDestination inside B2_DOWNLOAD_ROOT. Defaults to the file base name.
overwriteNoReplace an existing destination file. Defaults to false.
bucketNameYesName of the bucket to read from.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description goes beyond annotations by disclosing the B2_DOWNLOAD_ROOT constraint, overwrite behavior, return payload (path, size, type, SHA-1), and explicitly stating file content is never returned. This is rich behavioral context that aligns with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four sentences, front-loaded with the core action, then essential constraints and edge cases. Every sentence adds value with no fluff or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description explains return values (path, size, type, SHA-1) and key constraints (root directory, overwrite semantics). It is complete for a download tool with good annotations, leaving no major operational gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the schema already documents defaults and constraints for localPath and overwrite. The description adds no new parameter meaning beyond the schema, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Downloads a file from a bucket to the local filesystem' and clarifies it returns metadata. This clearly distinguishes it from siblings like b2_upload_file or b2_list_files.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The context is clear: this is the tool for retrieving file content to local disk. It doesn't explicitly name when-not-to-use or alternative tools, but the operation is self-evident among the sibling list with no ambiguity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ffumero2003/b2-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server