remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Integrations
Supports configuration through .env files to set WebDAV connection parameters, authentication credentials, and server options.
Provides containerized deployment of the MCP server with configurable environment variables for WebDAV connectivity and authentication.
Offers programmatic usage within Node.js applications through an importable API for custom MCP server implementations.
WebDAV MCP 서버
기본 인증을 통해 WebDAV 엔드포인트에서 CRUD 작업을 수행할 수 있는 모델 컨텍스트 프로토콜(MCP) 서버입니다. 이 서버를 통해 Claude Desktop 및 기타 MCP 클라이언트는 자연어 명령을 통해 WebDAV 파일 시스템과 상호 작용할 수 있습니다.
특징
- 선택적 인증을 통해 모든 WebDAV 서버에 연결
- 파일 및 디렉토리에 대한 CRUD 작업 수행
- 파일 작업을 MCP 리소스 및 도구로 노출
- stdio 전송(Claude Desktop 통합용) 또는 HTTP/SSE 전송을 통해 실행
- 기본 인증 옵션을 통한 보안 액세스
- MCP 서버 인증을 위한 bcrypt 암호화 암호 지원(프로토콜 제한으로 인해 WebDAV 암호는 일반 텍스트여야 함)
- WebDAV 서버로 더 나은 성능을 위한 연결 풀링
- Zod를 사용한 구성 검증
- 더 나은 문제 해결을 위한 구조화된 로깅
필수 조건
- Node.js 18 이상
- npm 또는 yarn
- WebDAV 서버(실제 파일 작업용)
설치
옵션 1: npm 패키지에서 설치
지엑스피1
옵션 2: 소스에서 복제 및 빌드
옵션 3: Docker
구성
다음 변수를 사용하여 루트 디렉토리에 .env
파일을 만듭니다.
MCP 서버 인증을 위한 암호화된 비밀번호
MCP 서버의 보안을 강화하려면(WebDAV 연결은 아님) 일반 텍스트로 저장하는 대신 bcrypt로 암호화된 비밀번호를 사용할 수 있습니다.
- bcrypt 해시를 생성합니다.Copy
- {bcrypt} 접두사를 사용하여 .env 파일에 해시를 추가합니다.Copy
이렇게 하면 MCP 서버 비밀번호가 안전하게 저장됩니다. 프로토콜 요구 사항으로 인해 WebDAV 비밀번호는 항상 일반 텍스트 형식이어야 합니다.
용법
stdio 전송으로 실행
이 모드는 Claude Desktop과 직접 통합하는 데 이상적입니다.
HTTP/SSE 전송으로 실행
이 모드를 사용하면 서버에서 보낸 이벤트를 통해 HTTP를 통해 서버에 접근하여 실시간 통신이 가능합니다.
Docker Compose로 빠르게 시작하기
WebDAV 서버와 MCP 서버를 시작하는 가장 쉬운 방법은 Docker Compose를 사용하는 것입니다.
이 설정은 Go로 작성된 간단한 독립형 WebDAV 서버인 hacdias/webdav 를 사용합니다. WebDAV 서버 설정은 webdav_config.yml
에 저장되어 있으며, 이를 수정하여 권한을 조정하고, 사용자를 추가하고, 기타 설정을 변경할 수 있습니다.
WebDAV 서버는 모든 파일을 webdav_data
라는 Docker 볼륨에 저장하며, 이 볼륨은 컨테이너가 다시 시작되어도 유지됩니다.
WebDAV 서버 구성
webdav_config.yml
파일은 Docker Compose 설정에 사용되는 hacdias/webdav 서버를 구성합니다. 사용자 정의 가능한 항목은 다음과 같습니다.
더욱 고급 구성 옵션에 대해서는 hacdias/webdav 문서를 참조하세요.
테스트
테스트를 실행하려면:
Claude Desktop과 통합
- Claude Desktop에서 MCP 기능이 활성화되어 있는지 확인하세요.
사용 가능한 MCP 리소스
webdav://{path}/list
- 디렉토리의 파일 나열webdav://{path}/content
- 파일 내용 가져오기webdav://{path}/info
- 파일 또는 디렉토리 정보 가져오기
사용 가능한 MCP 도구
webdav_create_remote_file
- 원격 WebDAV 서버에 새 파일을 만듭니다.webdav_get_remote_file
- 원격 WebDAV 서버에 저장된 파일에서 콘텐츠를 검색합니다.webdav_update_remote_file
- 원격 WebDAV 서버의 기존 파일 업데이트webdav_delete_remote_item
- 원격 WebDAV 서버에서 파일이나 디렉토리를 삭제합니다.webdav_create_remote_directory
- 원격 WebDAV 서버에 새 디렉토리를 만듭니다.webdav_move_remote_item
- 원격 WebDAV 서버에서 파일/디렉토리를 이동하거나 이름을 바꿉니다.webdav_copy_remote_item
- 원격 WebDAV 서버의 새 위치로 파일/디렉토리 복사webdav_list_remote_directory
- 원격 WebDAV 서버에 있는 파일 및 디렉토리 나열
사용 가능한 MCP 프롬프트
webdav_create_remote_file
- 원격 WebDAV 서버에 새 파일을 만들지 묻습니다.webdav_get_remote_file
- 원격 WebDAV 파일에서 콘텐츠를 검색할지 묻습니다.webdav_update_remote_file
- 원격 WebDAV 서버의 파일을 업데이트하라는 메시지를 표시합니다.webdav_delete_remote_item
- 원격 WebDAV 서버에서 파일/디렉토리를 삭제할지 묻습니다.webdav_list_remote_directory
- 원격 WebDAV 서버의 디렉토리 내용을 나열할지 묻습니다.webdav_create_remote_directory
- 원격 WebDAV 서버에 디렉토리를 만들 것인지 묻습니다.webdav_move_remote_item
- 원격 WebDAV 서버에서 파일/디렉토리를 이동하거나 이름을 바꾸라는 메시지를 표시합니다.webdav_copy_remote_item
- 원격 WebDAV 서버에서 파일/디렉토리를 복사할지 묻습니다.
Claude의 예제 쿼리
WebDAV MCP 서버가 연결되면 Claude Desktop에서 사용할 수 있는 몇 가지 쿼리 예는 다음과 같습니다.
- "내 원격 WebDAV 서버에 있는 파일 나열"
- "원격 WebDAV 서버에 다음 내용을 포함하는 notes.txt라는 새 텍스트 파일을 만듭니다: Hello World"
- "원격 WebDAV 서버에서 document.txt의 내용을 가져옵니다"
- "이 새로운 구성으로 원격 WebDAV 서버의 config.json을 업데이트합니다."
- "원격 WebDAV 서버에 projects라는 디렉토리를 만듭니다."
- "report.docx를 원격 WebDAV 서버의 백업 위치로 복사합니다."
- "원격 WebDAV 서버에서 old_name.txt 파일을 new_name.txt로 이동합니다."
- "원격 WebDAV 서버에서 temp.txt를 삭제합니다"
프로그래밍 방식 사용
이 패키지를 자신의 프로젝트에서 프로그래밍 방식으로 사용할 수도 있습니다.
특허
MIT
This server cannot be installed
Claude Desktop 및 기타 MCP 클라이언트가 CRUD 작업을 위한 자연어 명령을 통해 WebDAV 파일 시스템과 상호 작용할 수 있도록 하는 모델 컨텍스트 프로토콜 서버입니다.