GitHub
server ทางการของ GitHub ให้ AI อ่านและจัดการโค้ด issue และ pull request ในบัญชีของคุณได้ ใช้ผ่านคลาวด์ของ GitHub หรือรันในเครื่องด้วย Docker ก็ได้
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
MCP server for AWS S3 with fine-grained tool control and S3-compatible endpoint support.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
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ค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด 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_REGION envAWS_ENDPOINT_URL envS3_FORCE_PATH_STYLE envS3_BUCKET envS3_ENABLED_TOOLGROUPS envS3_ENABLED_TOOLS envS3_DISABLED_TOOLS envSKIP_HEALTH_CHECKS envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ชื่อใน registry ยืนยันโดเมน pulsemcp.com แล้ว (registry ตรวจความเป็นเจ้าของโดเมน)
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.0.5) เข้า registry 5 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี GitHub, Desktop Commander, Cloudflare MCP
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
server ทางการของ GitHub ให้ AI อ่านและจัดการโค้ด issue และ pull request ในบัญชีของคุณได้ ใช้ผ่านคลาวด์ของ GitHub หรือรันในเครื่องด้วย Docker ก็ได้
MCP server for terminal commands, file operations, and process management
Cloudflare MCP servers
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
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.
| 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 |
| Resource | Description |
|---|---|
s3://config | Server configuration and status (for debugging) |
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 operationsFine-grained control over specific tools:
S3_ENABLED_TOOLS="list_buckets,get_object" - Only enable these toolsS3_DISABLED_TOOLS="delete_bucket,delete_object" - Disable these toolsConstrain all operations to a specific bucket using S3_BUCKET:
S3_BUCKET="my-bucket"
When set:
list_buckets, create_bucket, delete_bucket, head_bucket) are hiddenbucket parameter is automatically injected and hidden from tool inputscopy_object, both source and destination are constrained to the specified bucketThis is useful for restricting access to a single bucket without giving broader S3 permissions.
| 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 |
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!
For safer exploration, enable only read operations:
{
"env": { "S3_ENABLED_TOOLGROUPS": "readonly" } }
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).
npm run install-all
npm run build
npm run dev
# Run functional tests
npm run test:run
npm run test:integration
npm run test:manual:setup # First time only npm run test:manual
npm run test:all
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
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
MIT