mcp-server-aistor

Official
by minio
Verified

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Supports running the MCP server in Docker containers, allowing containerized deployment and access to object storage services.

  • Provides support for macOS environments, with specific configuration paths and integration with the macOS file system.

  • Enables interaction with MinIO object storage, allowing users to manage buckets and objects, perform file operations, access metadata, generate presigned URLs, and retrieve administrative information about the storage cluster.

AIStor MCP 서버

이는 AIStor 객체 저장소와 상호 작용하기 위한 MCP(Model Context Protocol) 서버입니다.

MCP에 대한 자세한 내용은 공식 사이트 에서 확인할 수 있습니다.

AIStor MCP 서버에 대한 자세한 내용은 블로그 게시물 에서 확인할 수 있습니다.

특징

읽기 작업

  • 버킷 목록
  • 버킷에 있는 객체 나열
  • 객체의 메타데이터와 태그 가져오기
  • 객체에 대한 만료일이 있는 사전 서명된 URL을 만듭니다.

AI 운영

  • ask-object 함수를 사용하여 객체의 내용을 설명합니다.

쓰기 작업

이러한 작업은 config에서 --allow-write 플래그를 사용하여 활성화해야 합니다.

  • 버킷을 생성하세요
  • 버킷에 객체 업로드
  • 객체에 태그 추가

삭제 작업

이러한 작업은 config에서 --allow-delete 플래그를 사용하여 활성화해야 합니다.

  • 객체 삭제
  • 버킷 삭제

관리 작업

이러한 작업은 config에서 --allow-admin 플래그를 사용하여 활성화해야 합니다.

  • 인간이 읽을 수 있는 형식으로 클러스터 정보(구성, 상태, 사용 가능한 공간)를 가져옵니다.

구성

필수 조건

  1. Claude 에서 Claude for Desktop 애플리케이션을 다운로드하여 설치하세요. 이 MCP 서버는 다른 MCP 지원 클라이언트와도 호환되지만, 우선 Claude부터 시작해 보겠습니다.
  2. 데스크톱/노트북에 Docker나 Podman이 설치되어 있고 사용할 준비가 되어 있는지 확인하세요.
  3. AIStor(또는 MinIO) 객체 저장소 자격 증명( MINIO_ACCESS_KEYMINIO_SECRET_KEY )과 엔드포인트 위치를 가져오세요. 사용 가능한 AIStor 또는 MinIO 서버가 없는 경우 MinIO Playground 서버 의 값을 사용해도 됩니다.

구성 파일

선호하는 텍스트 편집기로 Claude for Desktop 구성 파일을 여세요. 시스템에서 구성 파일을 찾으려면 Model Context Protocol 사이트의 빠른 시작 지침을 따르세요. 기본 위치는 다음과 같습니다.

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

다음 줄을 구성 파일에 추가하고 자격 증명, 엔드포인트, YOUR_USERNAME 실제 값으로 바꾸세요. 이 예제에서는 Podman을 사용하지만, Docker를 사용하는 경우 command: 에서 podman docker 로 바꾸세요. 다른 MCP 서버가 구성되어 있는 경우 목록에 AIStor 구성을 삽입하기만 하면 됩니다.

--allow-* 플래그를 추가할 때는 주의하세요. 기본적으로 플래그가 없으면 서버는 읽기 전용 모드로 실행됩니다. --allow-write--allow-delete 플래그는 필요한 경우에만 이 구성에 추가하세요. --allow-admin 플래그는 클러스터 정보를 수집하는 관리 기능을 활성화합니다.

지엑스피1

기본적으로 서버가 LLM에 나열하고 전송하는 객체 또는 버킷의 수는 1,000개로 제한됩니다. 이는 토큰에서 모델의 컨텍스트 윈도우 제한에 도달하는 것을 방지하기 위한 것입니다. 모델에서 더 넓은 컨텍스트 윈도우를 허용하는 경우, 구성 파일에 --max-keys 매개변수를 추가하여 이 수를 늘릴 수 있습니다. 각 객체 레코드에는 수십 개의 토큰이 포함되어 있다는 점에 유의하세요.

용법

다음은 귀하가 할 수 있는 일의 몇 가지 예입니다.

기본 작업

  • "내 AIStor 서버에 있는 모든 버킷을 나열합니다"
  • "버킷 테스트 내용을 나열하세요"

파일 작업

  • "example.pdf 파일을 내 다운로드 디렉토리에 다운로드하세요"
  • "my-bucket 버킷을 생성하세요"
  • "다운로드에서 document.pdf를 버킷 my-bucket으로 업로드"

메타데이터 작업

  • "my-bucket 버킷에 있는 file.pdf의 메타데이터를 가져옵니다"
  • "config.json 객체에 대한 모든 태그를 나열합니다"

관리 작업

  • "서버 상태 표시"
  • "저장소 사용 통계 가져오기"

각 명령은 관련 정보가 포함된 사람이 읽을 수 있는 응답을 반환합니다.

사용 가능한 도구

일반적으로 대규모 언어 모델(LLM)은 요청에 사용할 도구를 파악할 수 있습니다. 경우에 따라 모델에 사용할 도구를 명시적으로 지정해야 할 수도 있습니다. 이러한 경우와 이 MCP 서버에서 가능한 다른 기능을 알려드리기 위해, 이 버전에서 사용 가능한 도구 목록을 다음과 같습니다.

Claude for Desktop 애플리케이션에서 망치 아이콘을 클릭하면 언제든지 이 목록을 볼 수 있습니다.

ask-object : AI를 사용하여 객체의 콘텐츠에 대해 질문하고, 다양한 파일 형식을 지원하며 상황에 맞는 답변을 반환합니다.

copy-object : 메타데이터를 보존하고 선택적으로 속성을 수정하면서 한 버킷에서 다른 버킷으로 객체를 복사합니다. 버전 ID를 지정하여 객체의 특정 버전을 복사할 수도 있습니다.

create-bucket : 지정된 구성 및 선택적 버전 설정으로 새 버킷을 만듭니다.

delete-bucket : 버킷을 삭제하고 선택적으로 포함된 모든 객체를 강제로 제거합니다.

delete-object : 버킷에서 특정 객체 또는 버전을 삭제합니다. 소프트 삭제 기능도 선택적으로 지원합니다. 버전 ID를 지정하여 객체의 특정 버전을 삭제할 수도 있습니다.

download-object : 메타데이터를 보존하면서 지정된 버킷에서 로컬 파일 시스템으로 객체를 다운로드합니다. 버전 ID를 지정하여 객체의 특정 버전을 다운로드할 수도 있습니다.

get-admin-info : 상태, 성능 측정 항목, 구성을 포함하여 AIStor 개체 저장소에 대한 포괄적인 기술 정보를 가져옵니다.

get-bucket-lifecycle : 지정된 버킷의 수명 주기(ILM 구성이라고도 함)를 가져옵니다.

get-bucket-replication : 지정된 버킷의 복제 구성을 가져옵니다.

get-bucket-tags : 지정된 버킷의 태그를 가져옵니다.

get-bucket-versioning : 지정된 버킷의 버전 상태 및 구성을 가져옵니다.

get-data-usage-info : 저장된 총 데이터, 객체 수, 각 버킷별 사용량을 포함한 AIStor 객체 저장소에 대한 데이터 사용 정보를 가져옵니다.

get-object-metadata : 콘텐츠 유형, 크기, 사용자 정의 헤더 및 시스템 속성을 포함한 객체의 자세한 메타데이터를 가져옵니다.

get-object-presigned-url : 버킷에 있는 객체의 미리 서명된 URL을 가져옵니다. 만료 시간은 선택적으로 지정할 수 있습니다. 기본값은 7일입니다.

get-object-tags : 버킷의 특정 객체와 연관된 모든 태그를 가져옵니다.

get-object-versions : 버킷에 있는 객체의 모든 버전을 가져옵니다.

list-allowed-directories : 서버와의 작업이 허용되는 모든 디렉토리를 나열합니다.

list-bucket-contents : 지정된 버킷에 있는 모든 객체를 크기와 마지막 수정 날짜를 포함하여 나열합니다. 객체를 필터링하고 버전 목록을 표시할지 여부를 지정하는 접두사를 지정할 수도 있습니다.

list-buckets : AIStor 객체 저장소의 모든 버킷을 기본 정보와 함께 나열합니다.

list-local-files : 지정된 로컬 디렉토리 경로에 있는 모든 파일과 디렉토리를 속성과 함께 나열합니다.

move-object : 대상에 복사하고 소스에서 제거하여 버킷 간에 객체를 이동합니다. 버전 ID를 지정하여 객체의 특정 버전을 이동할 수도 있습니다.

set-bucket-tags : 지정된 버킷에 대한 태그를 설정합니다.

set-bucket-versioning : 관리자 권한으로 버킷의 버전 관리 설정을 구성합니다.

set-object-tags : 버킷에 있는 기존 객체의 태그를 설정하거나 업데이트합니다. 여러 키-값 쌍을 지원합니다. 버전 ID를 지정하여 객체의 특정 버전에 대한 태그를 설정할 수도 있습니다.

upload-object : 메타데이터 및 태그를 지원하여 로컬 파일 시스템에서 지정된 버킷으로 파일을 업로드합니다.

ID: ou30p8kwqr