Skip to main content
Glama
Albiemark

Dropbox MCP Server

dbx-mcp-서버

Dropbox와 통합을 제공하는 MCP(Model Context Protocol) 서버로, MCP 호환 클라이언트가 강력한 도구 세트를 통해 Dropbox와 상호 작용할 수 있습니다.

중요 고지 사항: 이 프로젝트는 Dropbox와 제휴, 보증 또는 후원 관계가 없습니다. Dropbox의 공개 API를 사용하는 독립적인 통합 솔루션입니다.

목차

Related MCP server: MCP Toolkit

빠른 시작

  1. 저장소를 복제합니다

  2. npm install 실행하여 종속성을 설치합니다.

  3. npm run build 실행하여 프로젝트를 빌드합니다.

  4. Dropbox 앱 콘솔 에서 Dropbox 앱을 등록하세요:

    • "범위가 지정된 액세스" API를 선택하세요

    • 앱에 필요한 액세스 유형을 선택하세요

    • 앱 이름을 지정하고 "앱 만들기"를 클릭하세요.

    • "권한"에서 필요한 권한을 선택하세요.

      • files.metadata.read

      • files.content.read

      • files.content.write

      • sharing.write

      • account_info.read

    • 리디렉션 URI로 http://localhost:3000/callback 추가합니다.

    • 앱 키와 앱 비밀번호를 기록해 두세요

  5. 설치 스크립트를 실행합니다.

    지엑스피1

  6. 서버를 사용하도록 MCP 클라이언트를 구성하세요.

설치

  1. 저장소를 복제합니다

    git clone https://github.com/your-username/dbx-mcp-server.git cd dbx-mcp-server
  2. 종속성을 설치하고 빌드합니다.

    npm install npm run build
  3. 설치 스크립트 실행

    npm run setup
  4. MCP 설정에 추가

    MCP 설정 파일에 다음을 추가하세요.

    { "mcpServers": { "dbx": { "command": "node", "args": ["/path/to/dbx-mcp-server/build/index.js"] } } }

입증

서버는 Dropbox와의 보안 인증을 위해 PKCE가 포함된 OAuth 2.0을 사용합니다.

환경 변수

필수의:

  • DROPBOX_APP_KEY : Dropbox 앱의 키

  • DROPBOX_APP_SECRET : Dropbox 앱의 비밀

  • DROPBOX_REDIRECT_URI : OAuth 리디렉션 URI

  • TOKEN_ENCRYPTION_KEY : 토큰 암호화를 위한 32자 이상의 키

선택 과목:

  • TOKEN_REFRESH_THRESHOLD_MINUTES : 토큰 만료 전 새로 고침 시간(분) (기본값: 5)

  • MAX_TOKEN_REFRESH_RETRIES : 새로 고침 시도 최대 횟수(기본값: 3)

  • TOKEN_REFRESH_RETRY_DELAY_MS : 새로 고침 시도 간 지연 시간(ms)(기본값: 1000)

사용 가능한 도구

파일 작업

  • list_files : 디렉토리의 파일 목록

  • upload_file : 파일 업로드

  • download_file : 파일 다운로드

  • safe_delete_item : 휴지통 지원을 통해 안전하게 삭제

  • create_folder : 새 폴더를 만듭니다

  • copy_item : 파일이나 폴더를 복사합니다

  • move_item : 파일/폴더를 이동하거나 이름을 변경합니다.

메타데이터 및 검색

  • get_file_metadata : 파일/폴더 메타데이터 가져오기

  • search_file_db : 파일 및 폴더 검색

  • get_sharing_link : 공유 링크 생성

  • get_file_content : 파일 내용 가져오기

계정 운영

  • get_account_info : 계정 정보 가져오기

사용 예

// List files in root directory await mcp.useTool("dbx-mcp-server", "list_files", { path: "" }); // Upload a file await mcp.useTool("dbx-mcp-server", "upload_file", { path: "/test.txt", content: Buffer.from("Hello World").toString("base64"), }); // Search for files await mcp.useTool("dbx-mcp-server", "search_file_db", { query: "report", path: "/Documents", max_results: 10, });

테스트

테스트 모음을 실행합니다.

npm test

테스트는 인증, 파일 작업, 오류 처리를 포함한 모든 작업을 검증합니다.

테스트 구조

테스트 모음은 여러 모듈로 구성됩니다.

  • Dropbox Operations : 기본 파일 작업(업로드, 다운로드, 나열 등)을 테스트합니다.

  • 계정 운영 : 계정 정보 접근 테스트

  • 검색 및 삭제 : 휴지통 지원을 통한 검색 기능 및 안전한 삭제 테스트

  • 리소스 시스템 : MCP 리소스 시스템 통합을 위한 테스트

테스트 데이터 처리

테스트는 충돌을 방지하기 위해 타임스탬프를 기반으로 동적으로 생성된 파일 및 폴더 이름을 사용합니다. 테스트 데이터는 테스트 실행 후 자동으로 정리됩니다.

특정 테스트 실행

특정 테스트 파일이나 테스트 그룹을 실행하려면:

npm test -- tests/dropbox/search-delete.test.ts # Run specific test file npm test -- -t "should search for files" # Run tests matching description

문제 해결 테스트

타이밍이나 인증 문제로 테스트가 실패하는 경우:

  1. tests/setup.ts 의 모의 구현이 테스트 기대치와 일치하는지 확인하세요.

  2. 테스트 도우미가 올바르게 구성되었는지 확인하세요.

  3. Jest 범위 오류의 경우 모의 팩토리 함수에서 가져온 변수를 참조하지 마십시오.

개발

다음으로 구성됨:

  • 타입스크립트

  • 모델 컨텍스트 프로토콜 SDK

  • 드롭박스 SDK v10.34.0

  • 드롭박스 API v2

특허

MIT 라이센스

저작권 (c) 2025 MCP 서버 기여자

본 소프트웨어 및 관련 문서 파일(이하 "소프트웨어")의 사본을 취득한 모든 사람에게 소프트웨어를 제한 없이 거래할 수 있는 권한을 무상으로 부여합니다. 여기에는 소프트웨어 사본을 사용, 복사, 수정, 병합, 게시, 배포, 하위 라이선스 및/또는 판매할 수 있는 권한이 포함되나 이에 국한되지 않으며, 소프트웨어가 제공된 사람에게도 이러한 권한을 부여합니다. 단, 다음 조건에 따라야 합니다.

위의 저작권 고지와 본 허가 고지는 소프트웨어의 모든 사본 또는 실질적인 부분에 포함되어야 합니다.

본 소프트웨어는 상품성, 특정 목적 적합성 및 비침해에 대한 보증을 포함하되 이에 국한되지 않는 명시적 또는 묵시적 보증 없이 "있는 그대로" 제공됩니다. 어떠한 경우에도 저작자 또는 저작권자는 본 소프트웨어 또는 본 소프트웨어의 사용 또는 기타 거래와 관련하여 발생하는 계약, 불법 행위 또는 기타 소송을 포함한 모든 청구, 손해 또는 기타 책임에 대해 책임을 지지 않습니다.

대장간 배지

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Albiemark/dbx-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server