s3

package
v0.18.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 15, 2026 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

Package s3 provides an S3 toolkit adapter for the MCP data platform.

Index

Constants

View Source
const (
	// DefaultTimeout is the default HTTP client timeout for S3 operations.
	DefaultTimeout = 30 * time.Second

	// DefaultMaxGetSize is the default maximum size for S3 GET operations (10MB).
	DefaultMaxGetSize = 10 * 1024 * 1024

	// DefaultMaxPutSize is the default maximum size for S3 PUT operations (100MB).
	DefaultMaxPutSize = 100 * 1024 * 1024
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	Region          string        `yaml:"region"`
	Endpoint        string        `yaml:"endpoint"`
	AccessKeyID     string        `yaml:"access_key_id"`
	SecretAccessKey string        `yaml:"secret_access_key"`
	SessionToken    string        `yaml:"session_token"`
	Profile         string        `yaml:"profile"`
	UsePathStyle    bool          `yaml:"use_path_style"`
	Timeout         time.Duration `yaml:"timeout"`
	DisableSSL      bool          `yaml:"disable_ssl"`
	ReadOnly        bool          `yaml:"read_only"`
	MaxGetSize      int64         `yaml:"max_get_size"`
	MaxPutSize      int64         `yaml:"max_put_size"`
	ConnectionName  string        `yaml:"connection_name"`
	BucketPrefix    string        `yaml:"bucket_prefix"`
}

Config holds S3 toolkit configuration.

func ParseConfig

func ParseConfig(cfg map[string]any) (Config, error)

ParseConfig parses an S3 toolkit configuration from a map.

type Toolkit

type Toolkit struct {
	// contains filtered or unexported fields
}

Toolkit wraps mcp-s3 toolkit for the platform.

func New

func New(name string, cfg Config) (*Toolkit, error)

New creates a new S3 toolkit.

func (*Toolkit) Client

func (t *Toolkit) Client() *s3client.Client

Client returns the underlying S3 client for direct use.

func (*Toolkit) Close

func (t *Toolkit) Close() error

Close releases resources.

func (*Toolkit) Config

func (t *Toolkit) Config() Config

Config returns the toolkit configuration.

func (*Toolkit) Connection added in v0.12.1

func (t *Toolkit) Connection() string

Connection returns the connection name for audit logging.

func (*Toolkit) Kind

func (*Toolkit) Kind() string

Kind returns the toolkit kind.

func (*Toolkit) Name

func (t *Toolkit) Name() string

Name returns the toolkit instance name.

func (*Toolkit) RegisterTools

func (t *Toolkit) RegisterTools(s *mcp.Server)

RegisterTools registers S3 tools with the MCP server. When ReadOnly is true, only read tools are registered on the server.

func (*Toolkit) SetQueryProvider

func (t *Toolkit) SetQueryProvider(provider query.Provider)

SetQueryProvider sets the query execution provider for enrichment.

func (*Toolkit) SetSemanticProvider

func (t *Toolkit) SetSemanticProvider(provider semantic.Provider)

SetSemanticProvider sets the semantic metadata provider for enrichment.

func (*Toolkit) Tools

func (t *Toolkit) Tools() []string

Tools returns the list of tool names that would be provided by this toolkit.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL