hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Provides tools for listing available S3 buckets, listing objects within a bucket, and retrieving object contents from AWS S3 storage.
S3 MCP 서버
S3 버킷 및 객체와 상호 작용하기 위한 도구를 제공하는 Amazon S3 모델 컨텍스트 프로토콜(MCP) 서버입니다.
https://github.com/user-attachments/assets/d05ff0f1-e2bf-43b9-8d0c-82605abfb666
개요
이 MCP 서버는 Claude와 같은 대규모 언어 모델(LLM)이 AWS S3 스토리지와 상호 작용할 수 있도록 지원합니다. 다음과 같은 도구를 제공합니다.
- 사용 가능한 S3 버킷 나열
- 버킷 내의 객체 나열
- 객체 내용 검색
이 서버는 TypeScript와 MCP SDK를 사용하여 구축되었으며, LLM이 S3와 상호 작용하는 안전하고 표준화된 방법을 제공합니다.
설치
필수 조건
- Node.js 18 이상
- npm 또는 yarn
- AWS 자격 증명이 구성됨(환경 변수 또는 AWS 자격 증명 파일을 통해)
설정
- npm을 통해 설치:
지엑스피1
- 소스에서 빌드하는 경우:
- AWS 자격 증명 및 S3 액세스를 구성합니다.
AWS 구성을 사용하여 .env
파일을 만듭니다.
또는 이를 환경 변수로 설정합니다.
구성
다음 환경 변수를 사용하여 서버를 구성할 수 있습니다.
변하기 쉬운 | 설명 | 기본 |
---|---|---|
AWS_REGION | S3 버킷이 있는 AWS 지역 | us-east-1 |
S3_BUCKETS | 허용된 S3 버킷 이름의 쉼표로 구분된 목록 | (비어 있는) |
S3_MAX_BUCKETS | 목록에 반환할 버킷의 최대 개수 | 5 |
AWS_ACCESS_KEY_ID | AWS 액세스 키(기본 자격 증명을 사용하지 않는 경우) | (AWS 구성에서) |
AWS_SECRET_ACCESS_KEY | AWS 비밀 키(기본 자격 증명을 사용하지 않는 경우) | (AWS 구성에서) |
서버 실행
Node.js로 서버를 실행할 수 있습니다.
Claude Desktop에 연결
Claude Desktop과 함께 이 서버를 사용하려면:
- Claude Desktop 구성 파일을 편집하세요.
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
- 구성에 S3 MCP 서버를 추가합니다.
중요 : 위의 구성을 사용할 때 다음 사항에 유의하세요.
AWS_ACCESS_KEY_ID
및AWS_SECRET_ACCESS_KEY
실제 자격 증명으로 바꾸세요.S3_BUCKETS
에는 액세스를 허용하려는 버킷의 쉼표로 구분된 목록이 포함되어야 합니다.AWS_REGION
버킷이 있는 지역으로 설정해야 합니다.
💣 Claude Desktop에서 오류가 발생하는 경우
Claude Desktop에서 위 구성과 관련하여 오류가 발생하는 경우 다음과 같이 절대 경로를 사용해 보세요.
사용 가능한 도구
리스트 버킷
서버가 액세스할 수 있는 사용 가능한 S3 버킷을 나열합니다. 이 도구는 표시되는 버킷을 제한하는 S3_BUCKETS
구성을 따릅니다.
매개변수: 없음
출력 예:
목록 객체
지정된 S3 버킷에 있는 객체를 나열합니다.
매개변수:
bucket
(필수): 객체를 나열할 S3 버킷의 이름prefix
(선택 사항): 객체를 필터링하기 위한 접두사(예: 폴더 경로)maxKeys
(선택 사항): 반환할 최대 개체 수
출력 예:
get-object
지정된 S3 버킷에서 객체를 검색합니다. 텍스트 파일은 일반 텍스트로 반환되고, 이진 파일은 제한된 세부 정보로 반환됩니다.
매개변수:
bucket
(필수): S3 버킷의 이름key
(필수): 검색할 객체의 키(경로)
텍스트 출력 예시:
이진 출력 예:
보안 고려 사항
- 서버는
S3_BUCKETS
환경 변수에 지정된 버킷에만 액세스합니다. - AWS 자격 증명에는 버킷에 대한 적절한 권한이 있어야 합니다.
- AWS 권한을 구성할 때 최소 권한 원칙을 사용하세요.
- 프로덕션 용도로는 특정 S3 권한이 있는 IAM 역할을 사용하는 것이 좋습니다.
Claude와 함께 사용
데스크톱 앱에서 Claude와 상호 작용할 때 다음과 같은 S3 작업을 수행하도록 요청할 수 있습니다.
- "내 모든 S3 버킷 나열"
- "내 이미지 버킷의 내용을 보여주세요"
- "my-documents-bucket에서 README.txt 파일을 가져옵니다"
클로드는 적절한 MCP 도구를 사용하여 요청을 수행하고 결과를 보여드립니다.
특허
MIT
You must be authenticated.
Claude와 같은 대규모 언어 모델이 AWS S3 스토리지와 상호 작용할 수 있도록 하는 Amazon S3 모델 컨텍스트 프로토콜 서버로, 버킷 나열, 객체 나열, 객체 콘텐츠 검색을 위한 도구를 제공합니다.