
RustFS MCP
https://github.com/rustfs/mcp- Category
- AI Tools
- Rank
- No. 1522Tools index
Previous survey · No. 1535 ·
- Pricing
- Open Source
- Type
- TOOL
- Builder
- rustfs
- GitHub
- 20 stars
- Date
About
High-performance MCP server providing S3-compatible object storage operations for AI and LLM integration.
What it does
RustFS MCP gives an AI assistant a controlled set of storage actions over a standard tool connection. It can browse buckets and objects, upload local files, read or download stored objects, and create or remove empty buckets. Credentials, region, endpoint, and logging come from command-line options or environment variables.
Why it's ranked here
A strong narrow choice for connecting an MCP client to AWS S3 or a compatible endpoint. Its tool set covers useful browsing and transfer workflows, while typed request schemas constrain inputs. The Rust library surface, container build, continuous checks, and dependency audits add operational credibility. The limited object-management scope keeps the verdict mixed.
What's good
Object retrieval supports direct text responses and local downloads, including version selection and a configurable content limit. Uploads detect MIME types and accept storage class and cache-control settings. Custom endpoints automatically use path-style addressing. Logs go to standard error, protecting the protocol stream on standard output. Configuration logs redact the access key and hide the secret.
Tradeoffs
The MCP surface cannot delete individual objects, copy objects, generate signed links, or expose general metadata operations. Object listing requests at most 1,000 keys, while the exposed request accepts no continuation token. Uploading reads the whole local file into memory before sending it. Default builds enable io-uring and require Tokio's unstable configuration flag. Credentials are mandatory and may be supplied directly through command-line arguments.
How to use it well
Use it when an assistant needs bounded bucket discovery, file upload, and object retrieval against AWS S3 or a compatible service. Prefer environment-based credentials and a narrowly permitted storage identity. Keep direct reads small, and use download mode for larger objects. Pair it with another administration tool when workflows require object deletion, copying, lifecycle rules, or signed URLs.
Technical notes+
Cargo.toml defines a Rust 2024 crate with both a binary and library, enables io-uring by default, and uses rmcp over stdio with the AWS S3 SDK. src/main.rs sends tracing output to stderr so stdout remains available for MCP framing. src/config.rs accepts CLI flags and environment variables, validates static access and secret keys, redacts configuration logging, and forces path-style addressing for custom endpoints. src/server.rs registers typed MCP handlers; its object-list handler fixes max_keys at 1000, and bucket deletion first refuses nonempty buckets. src/s3_client.rs canonicalizes upload paths, reads complete files into memory, supports pagination internally, and allows plain HTTP for explicitly configured endpoints. Dockerfile produces a Debian runtime image and runs the binary as nobody. .github/workflows/ci.yml checks formatting, linting, tests, release builds, and documentation; .github/workflows/audit.yml runs dependency auditing.
Observed
- License
- Apache License 2.0
- Primary language
- Rust, using the 2024 edition
- Interfaces
- MCP server over standard input and output, command-line binary, and reusable Rust library
- Packaging
- Cargo crate and release binary, plus a multi-stage Docker build
- Container platforms
- Docker publishing targets Linux AMD64 and Linux ARM64
- Documented library targets
- x86_64 Linux GNU and AArch64 Linux GNU
- Automation
- CI covers formatting, Clippy, tests, release builds, and documentation; a separate workflow audits dependencies
Read from README.md, Cargo.toml, src/lib.rs, src/main.rs, src/server.rs, src/config.rs, src/s3_client.rs, LICENSE, Dockerfile, .cargo/config.toml, .github/dependabot.yml, .github/pull_request_template.md, .github/workflows/ci.yml, .github/workflows/audit.yml, .github/workflows/docker.yml.
What it can do
Store objects in S3-compatible storage
Files or data objects → Stored objects with unique identifiers
Retrieve objects from S3-compatible storage
Object identifiers or keys → Retrieved file data or objects
List objects in storage buckets
Bucket name or path prefix → List of object names and metadata
Delete objects from storage
Object identifiers or keys → Deletion confirmation status
Create storage buckets
Bucket name and configuration → New bucket with specified settings
Get object metadata
Object identifiers → Object properties like size, creation date, content type
Process MCP protocol requests for AI/LLM systems
MCP protocol messages → Structured responses for AI model consumption
Tags
Tech Stack
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.