S3
ภาพรวม
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
MCP server for AWS S3 with fine-grained tool control and S3-compatible endpoint support.
สามเสาของ PopNx MCP
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
- เสียงผู้ใช้iยังไม่มีรีวิวรีวิวเปิดพร้อมระบบบัญชีในขั้นถัดไป
- ผลตรวจเบื้องต้นของเราiผ่าน 2 จาก 2 ข้อตรวจจากข้อมูลที่เปิดอยู่ ยังไม่ได้สแกนโค้ด
- การใช้งานiเริ่มต้น↓ 66/สัปดาห์ · ★ 81
ใช้ทำอะไรได้
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
- การเชื่อมต่อ: รันบนเครื่อง
- ช่องทาง (transport): stdio
- หมวด: เครื่องมือนักพัฒนา
- ต้องใส่ค่าเหล่านี้: AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY
ติดตั้ง
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ก่อนติดตั้ง
- ผลตรวจเบื้องต้น: ผ่าน 2 จาก 2 ข้อ
- รันในเครื่องคุณด้วยสิทธิ์ของผู้ใช้คุณ (ไฟล์ อินเทอร์เน็ต แอปต่าง ๆ)
- ค่าที่คุณต้องใส่เอง:
AWS_ACCESS_KEY_ID,AWS_SECRET_ACCESS_KEY,AWS_REGION,AWS_ENDPOINT_URL,S3_FORCE_PATH_STYLE,S3_BUCKET,S3_ENABLED_TOOLGROUPS,S3_ENABLED_TOOLS,S3_DISABLED_TOOLS,SKIP_HEALTH_CHECKS
ค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
- npmติดตั้ง Node.js (มีคำสั่ง npx) ในเครื่อง
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"s3": {
"command": "npx",
"args": [
"-y",
"s3-aws-mcp-server"
],
"env": {
"AWS_ACCESS_KEY_ID": "ใส่ค่าของคุณ",
"AWS_SECRET_ACCESS_KEY": "ใส่ค่าของคุณ",
"AWS_REGION": "ใส่ค่าของคุณ",
"AWS_ENDPOINT_URL": "ใส่ค่าของคุณ",
"S3_FORCE_PATH_STYLE": "ใส่ค่าของคุณ",
"S3_BUCKET": "ใส่ค่าของคุณ",
"S3_ENABLED_TOOLGROUPS": "ใส่ค่าของคุณ",
"S3_ENABLED_TOOLS": "ใส่ค่าของคุณ",
"S3_DISABLED_TOOLS": "ใส่ค่าของคุณ",
"SKIP_HEALTH_CHECKS": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add s3 --env AWS_ACCESS_KEY_ID='ใส่ค่าของคุณ' --env AWS_SECRET_ACCESS_KEY='ใส่ค่าของคุณ' --env AWS_REGION='ใส่ค่าของคุณ' --env AWS_ENDPOINT_URL='ใส่ค่าของคุณ' --env S3_FORCE_PATH_STYLE='ใส่ค่าของคุณ' --env S3_BUCKET='ใส่ค่าของคุณ' --env S3_ENABLED_TOOLGROUPS='ใส่ค่าของคุณ' --env S3_ENABLED_TOOLS='ใส่ค่าของคุณ' --env S3_DISABLED_TOOLS='ใส่ค่าของคุณ' --env SKIP_HEALTH_CHECKS='ใส่ค่าของคุณ' -- npx -y s3-aws-mcp-serverเติมค่าที่เว้นว่างไว้ก่อนรัน
หรือคัดลอกค่าตั้งเอง
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"s3": {
"command": "npx",
"args": [
"-y",
"s3-aws-mcp-server"
],
"env": {
"AWS_ACCESS_KEY_ID": "ใส่ค่าของคุณ",
"AWS_SECRET_ACCESS_KEY": "ใส่ค่าของคุณ",
"AWS_REGION": "ใส่ค่าของคุณ",
"AWS_ENDPOINT_URL": "ใส่ค่าของคุณ",
"S3_FORCE_PATH_STYLE": "ใส่ค่าของคุณ",
"S3_BUCKET": "ใส่ค่าของคุณ",
"S3_ENABLED_TOOLGROUPS": "ใส่ค่าของคุณ",
"S3_ENABLED_TOOLS": "ใส่ค่าของคุณ",
"S3_DISABLED_TOOLS": "ใส่ค่าของคุณ",
"SKIP_HEALTH_CHECKS": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
หรือคัดลอกค่าตั้งเอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"s3": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"s3-aws-mcp-server"
],
"env": {
"AWS_ACCESS_KEY_ID": "ใส่ค่าของคุณ",
"AWS_SECRET_ACCESS_KEY": "ใส่ค่าของคุณ",
"AWS_REGION": "ใส่ค่าของคุณ",
"AWS_ENDPOINT_URL": "ใส่ค่าของคุณ",
"S3_FORCE_PATH_STYLE": "ใส่ค่าของคุณ",
"S3_BUCKET": "ใส่ค่าของคุณ",
"S3_ENABLED_TOOLGROUPS": "ใส่ค่าของคุณ",
"S3_ENABLED_TOOLS": "ใส่ค่าของคุณ",
"S3_DISABLED_TOOLS": "ใส่ค่าของคุณ",
"SKIP_HEALTH_CHECKS": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าที่ต้องใส่เอง
- AWS access key ID for authentication.
- AWS secret access key for authentication.
AWS_REGIONenvAWS region for S3 operations.AWS_ENDPOINT_URLenvCustom S3 endpoint URL for MinIO or S3-compatible services.S3_FORCE_PATH_STYLEenvUse path-style addressing instead of virtual-hosted-style.S3_BUCKETenvConstrain all operations to a single bucket.S3_ENABLED_TOOLGROUPSenvComma-separated tool groups: readonly or readwrite.S3_ENABLED_TOOLSenvWhitelist specific tools by name.S3_DISABLED_TOOLSenvBlacklist specific tools by name.SKIP_HEALTH_CHECKSenvSkip AWS credential validation health checks at startup.
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ทำอะไรได้บ้าง
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
ผลตรวจเบื้องต้นi
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 10 พ.ย. 2569
- ✓ ผ่าน
ตัวตนผู้ทำตรงกับ repo
ชื่อใน registry ยืนยันโดเมน pulsemcp.com แล้ว (registry ตรวจความเป็นเจ้าของโดเมน)
- ✓ ผ่าน
ยังมีคนดูแล
มีการแก้โค้ดล่าสุด 32 วันที่ผ่านมา
- … ยังไม่ตรวจ
มีสัญญาอนุญาต (license)
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
- – ไม่เกี่ยว
endpoint ตอบ
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
- – ไม่เกี่ยว
ล็อกอินแบบ OAuth
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
- … ยังไม่ตรวจ
คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับตัวอื่นในหมวด เครื่องมือนักพัฒนาi
- ดาวมากกว่า 96% ของอีก 5723 ตัวในหมวดนี้
- ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 17% ของอีก 5723 ตัวในหมวดนี้
- ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 5723 ตัวในหมวดนี้
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
คำถามที่พบบ่อย
S3 ปลอดภัยไหม?
จากการตรวจเบื้องต้นของเรา ผ่าน 2 จาก 2 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใช้กุญแจหรือรหัสอะไรบ้าง?
ต้องใส่ค่าเหล่านี้: AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY
ตัวนี้รันบนเครื่องหรือบนคลาวด์?
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
ยังมีคนดูแลอยู่ไหม?
repo บน GitHub มีการแก้โค้ดล่าสุด 32 วันที่ผ่านมา และส่งรุ่นล่าสุด (0.0.5) เข้า registry 5 เดือนที่ผ่านมา
ใช้กับโปรแกรมไหนได้บ้าง?
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
มีตัวไหนใช้แทนได้บ้าง?
ในหมวดเดียวกันมี REA, Netdata, Front-End Checklist
ตัวที่ใช้แทนได้
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
Netdata
Real-time infrastructure monitoring with metrics, logs, alerts, and ML-based anomaly detection.
Front-End Checklist
Review frontend code and live pages against 386 quality-gated web development rules.
README จากผู้ทำ
เปิดอ่าน README
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
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
| Tool | Group | Description |
|---|---|---|
list_buckets | readonly | List all S3 buckets in the AWS account |
list_objects | readonly | List objects in a bucket with prefix and pagination |
get_object | readonly | Get object contents as text |
head_bucket | readonly | Check if a bucket exists and is accessible |
put_object | readwrite | Upload or update an object |
delete_object | readwrite | Delete an object from a bucket |
copy_object | readwrite | Copy an object within or across buckets |
create_bucket | readwrite | Create a new S3 bucket |
delete_bucket | readwrite | Delete an empty S3 bucket |
Resources
| Resource | Description |
|---|---|
s3://config | Server configuration and status (for debugging) |
Tool Groups
Control which tools are available via the S3_ENABLED_TOOLGROUPS environment variable:
| Group | Description |
|---|---|
readonly | Read-only operations (list, get, head) |
readwrite | Write operations (put, delete, copy, create) |
Examples:
S3_ENABLED_TOOLGROUPS="readonly"- Only read operationsS3_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 toolsS3_DISABLED_TOOLS="delete_bucket,delete_object"- Disable these tools
Single Bucket Mode
Constrain all operations to a specific bucket using S3_BUCKET:
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
bucketparameter 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
| Variable | Required | Description | Default |
|---|---|---|---|
AWS_ACCESS_KEY_ID | Yes | AWS access key ID | - |
AWS_SECRET_ACCESS_KEY | Yes | AWS secret access key | - |
AWS_REGION | No | AWS region for S3 operations | us-east-1 |
AWS_ENDPOINT_URL | No | Custom S3 endpoint (for MinIO, etc.) | - |
S3_FORCE_PATH_STYLE | No | Use path-style addressing (for MinIO) | false |
S3_BUCKET | No | Constrain operations to single bucket | - |
S3_ENABLED_TOOLGROUPS | No | Comma-separated tool groups | All enabled |
S3_ENABLED_TOOLS | No | Specific tools to enable | - |
S3_DISABLED_TOOLS | No | Specific tools to disable | - |
SKIP_HEALTH_CHECKS | No | Skip credential validation | false |
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
{
"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:
{
"env": { "S3_ENABLED_TOOLGROUPS": "readonly" } }
Using with S3-Compatible Services
For MinIO, LocalStack, or other S3-compatible services:
{
"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
npm run install-all
Build
npm run build
Running in Development Mode
npm run dev
Testing
# Run functional tests
npm 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 only npm run test:manual
Run all automated tests
npm run test:all
Manual Testing Setup
Create a .env file in the s3 directory:
AWS_ACCESS_KEY_ID=your_access_key
AWS_SECRET_ACCESS_KEY=your_secret_key AWS_REGION=us-east-1
Then run:
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