S3

com.pulsemcp由 pulsemcp.com 發布v0.0.5更新於 Oct 24, 2026

MCP server for AWS S3 with fine-grained tool control and S3-compatible endpoint support.

概覽

AI 產生的概覽

本機 MCP 伺服器,讓助理列出、讀取、上傳、複製和刪除 AWS S3 儲存貯體與物件,並可用工具群組限制為唯讀。

可以做什麼
列出並檢查儲存貯體和物件,支援前綴與分頁列舉、以文字讀取物件內容、檢查儲存貯體是否存在。上傳或更新物件、在貯體內或跨貯體複製物件、刪除物件。建立和刪除儲存貯體。依工具群組(readonly 或 readwrite)或依個別工具名稱限制可用工具,也可將操作限定到單一儲存貯體。提供供偵錯用的設定資源。
適用情境
適合讓助理直接處理存放在 S3 或 MinIO、LocalStack 等相容服務中的檔案,例如瀏覽已存物件、讀取內容或管理上傳與清理。唯讀模式適合探索,寫入模式適合刻意的儲存貯體與物件維護。
執行需求
透過 npx 在本機執行(需要 Node.js)。需要 AWS_ACCESS_KEY_ID 和 AWS_SECRET_ACCESS_KEY;AWS_REGION 預設為 us-east-1。可選 AWS_ENDPOINT_URL 和 S3_FORCE_PATH_STYLE 用於相容服務,S3_BUCKET 限定單一儲存貯體,以及工具群組和工具清單變數限制存取。需要連線至 AWS 或自訂端點的網路。
安裝前請注意
所用憑證是真實的 AWS 金鑰,應只授予所需的 S3 權限。寫入工具可上傳、覆寫、複製和刪除物件,以及建立或刪除儲存貯體;預設啟用全部工具,如不需要應設為唯讀群組或停用刪除類工具。單一貯體設定只縮小範圍,不改變金鑰本身的權限。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 S3,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

S3 MCP Server

MCP server for AWS S3 operations with fine-grained tool access control. Supports read/write operations on S3 buckets and objects, with configurable tool groups for security and permission management.

Highlights

  • Full S3 bucket and object management (list, get, put, copy, delete)
  • Fine-grained access control with tool groups (readonly, readwrite)
  • Individual tool enable/disable via environment variables
  • AWS credential validation with health checks
  • S3-compatible endpoint support (MinIO, LocalStack, etc.)
  • TypeScript with strict type checking
  • Comprehensive testing (functional, integration, manual)

Capabilities

Tools

ToolGroupDescription
list_bucketsreadonlyList all S3 buckets in the AWS account
list_objectsreadonlyList objects in a bucket with prefix and pagination
get_objectreadonlyGet object contents as text
head_bucketreadonlyCheck if a bucket exists and is accessible
put_objectreadwriteUpload or update an object
delete_objectreadwriteDelete an object from a bucket
copy_objectreadwriteCopy an object within or across buckets
create_bucketreadwriteCreate a new S3 bucket
delete_bucketreadwriteDelete an empty S3 bucket

Resources

ResourceDescription
s3://configServer configuration and status (for debugging)

Tool Groups

Control which tools are available via the S3_ENABLED_TOOLGROUPS environment variable:

GroupDescription
readonlyRead-only operations (list, get, head)
readwriteWrite operations (put, delete, copy, create)

Examples:

  • S3_ENABLED_TOOLGROUPS="readonly" - Only read operations
  • S3_ENABLED_TOOLGROUPS="readonly,readwrite" - All operations
  • Not set - All tools enabled (default)

Individual Tool Control

Fine-grained control over specific tools:

  • S3_ENABLED_TOOLS="list_buckets,get_object" - Only enable these tools
  • S3_DISABLED_TOOLS="delete_bucket,delete_object" - Disable these tools

Single Bucket Mode

Constrain all operations to a specific bucket using S3_BUCKET:

bash
S3_BUCKET="my-bucket"

When set:

  • All object operations are automatically scoped to this bucket
  • Bucket-level tools (list_buckets, create_bucket, delete_bucket, head_bucket) are hidden
  • The bucket parameter is automatically injected and hidden from tool inputs
  • For copy_object, both source and destination are constrained to the specified bucket

This is useful for restricting access to a single bucket without giving broader S3 permissions.

Quick Start

Configuration

Environment Variables
VariableRequiredDescriptionDefault
AWS_ACCESS_KEY_IDYesAWS access key ID-
AWS_SECRET_ACCESS_KEYYesAWS secret access key-
AWS_REGIONNoAWS region for S3 operationsus-east-1
AWS_ENDPOINT_URLNoCustom S3 endpoint (for MinIO, etc.)-
S3_FORCE_PATH_STYLENoUse path-style addressing (for MinIO)false
S3_BUCKETNoConstrain operations to single bucket-
S3_ENABLED_TOOLGROUPSNoComma-separated tool groupsAll enabled
S3_ENABLED_TOOLSNoSpecific tools to enable-
S3_DISABLED_TOOLSNoSpecific tools to disable-
SKIP_HEALTH_CHECKSNoSkip credential validationfalse

Claude Desktop Configuration

If this is your first time using MCP Servers, make sure you have the Claude Desktop application and follow the official MCP setup instructions.

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Windows: %APPDATA%\Claude\claude_desktop_config.json

json
{  "mcpServers": {    "s3": {      "command": "npx",      "args": ["-y", "s3-aws-mcp-server"],      "env": {        "AWS_ACCESS_KEY_ID": "your-access-key-id",        "AWS_SECRET_ACCESS_KEY": "your-secret-access-key",        "AWS_REGION": "us-east-1",        "S3_ENABLED_TOOLGROUPS": "readonly"      }    }  }}

Restart Claude Desktop and you should be ready to go!

Read-Only Mode

For safer exploration, enable only read operations:

json
{  "env": {    "S3_ENABLED_TOOLGROUPS": "readonly"  }}

Using with S3-Compatible Services

For MinIO, LocalStack, or other S3-compatible services:

json
{  "env": {    "AWS_ACCESS_KEY_ID": "minioadmin",    "AWS_SECRET_ACCESS_KEY": "minioadmin",    "AWS_REGION": "us-east-1",    "AWS_ENDPOINT_URL": "http://localhost:9000",    "S3_FORCE_PATH_STYLE": "true"  }}

Note: S3_FORCE_PATH_STYLE is required for MinIO and some other S3-compatible services that use path-style addressing (localhost:9000/bucket-name) instead of virtual-hosted-style (bucket-name.localhost:9000).

Development

Install Dependencies

bash
npm run install-all

Build

bash
npm run build

Running in Development Mode

bash
npm run dev

Testing

bash
# Run functional testsnpm run test:run
# Run integration tests (full MCP protocol)npm run test:integration
# Run manual tests (real AWS - requires .env)npm run test:manual:setup  # First time onlynpm run test:manual
# Run all automated testsnpm run test:all

Manual Testing Setup

Create a .env file in the s3 directory:

bash
AWS_ACCESS_KEY_ID=your_access_keyAWS_SECRET_ACCESS_KEY=your_secret_keyAWS_REGION=us-east-1

Then run:

bash
npm run test:manual

Project Structure

s3/├── local/                 # Local server implementation│   ├── src/│   │   ├── index.ts      # Main entry point with env validation│   │   └── index.integration-with-mock.ts│   └── package.json├── shared/               # Shared business logic│   ├── src/│   │   ├── server.ts     # Server factory with DI│   │   ├── tools.ts      # Tool registration with grouping│   │   ├── tools/        # Individual tool implementations│   │   ├── resources.ts  # Resource implementations│   │   ├── s3-client/    # AWS S3 client wrapper│   │   └── logging.ts│   └── package.json├── tests/                # Test suite│   ├── functional/       # Unit tests with mocks│   ├── integration/      # MCP protocol tests│   ├── manual/          # Real API tests│   └── mocks/           # Mock implementations└── package.json         # Root workspace config

License

MIT

來源:experimental/s3/README.md,提交 0ed34de

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.0.5最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分