@nogoo9/mcp-server-cloud-fs / S3Provider
Class: S3Provider
Defined in: providers/s3.ts:35
AWS S3 storage provider using the AWS SDK v3.
URI format: s3://bucket-name/optional-prefix
Supports custom endpoints (MinIO, RustFS), server-side encryption, and custom CA certificates via the caFile option.
Implements
Constructors
Constructor
new S3Provider(
opts):S3Provider
Defined in: providers/s3.ts:43
Parameters
opts
caPem?
Buffer<ArrayBufferLike>
Custom CA certificate (PEM) for TLS verification. Required when connecting to S3-compatible endpoints (MinIO, RustFS) that use a self-signed or private CA certificate.
endpoint?
string
putOptions?
Omit<PutObjectCommandInput, "Bucket" | "Key" | "Body" | "ContentType">
Override defaults for every PutObject call (e.g. { ServerSideEncryption: 'AES256' }).
region?
string
Returns
S3Provider
Methods
copyObject()
copyObject(
root,srcKey,dstKey):Promise<void>
Defined in: providers/s3.ts:118
Parameters
root
srcKey
string
dstKey
string
Returns
Promise<void>
Implementation of
createPrefix()
createPrefix(
root,prefix):Promise<void>
Defined in: providers/s3.ts:180
Parameters
root
prefix
string
Returns
Promise<void>
Implementation of
deleteObject()
deleteObject(
root,key):Promise<void>
Defined in: providers/s3.ts:112
Parameters
root
key
string
Returns
Promise<void>
Implementation of
getObject()
getObject(
root,key,range?):Promise<Buffer<ArrayBufferLike>>
Defined in: providers/s3.ts:73
Parameters
root
key
string
range?
endByte?
number
startByte
number
Returns
Promise<Buffer<ArrayBufferLike>>
Implementation of
getPresignedUrl()
getPresignedUrl(
root,key,opts):Promise<string>
Defined in: providers/s3.ts:191
Generate a presigned URL for temporary access to an object. Not all providers support this — check before calling.
Parameters
root
key
string
opts
expiresIn
number
operation
"get" | "put"
Returns
Promise<string>
Implementation of
StorageProvider.getPresignedUrl
headObject()
headObject(
root,key):Promise<ObjectInfo>
Defined in: providers/s3.ts:132
Parameters
root
key
string
Returns
Promise<ObjectInfo>
Implementation of
listObjects()
listObjects(
root,prefix,delimiter?):Promise<ListResult>
Defined in: providers/s3.ts:144
Parameters
root
prefix
string
delimiter?
string
Returns
Promise<ListResult>
Implementation of
putObject()
putObject(
root,key,content):Promise<void>
Defined in: providers/s3.ts:96
Parameters
root
key
string
content
Buffer
Returns
Promise<void>
