WebDAV MCP Server

WebDAV MCP Server

支持在具有基本身份验证的WebDAV端点上执行CRUD操作的模型上下文协议(MCP)服务器。

概述

WebDAV MCP 服务器支持在 WebDAV 端点上进行 CRUD 操作,让 Claude Desktop 和其他 MCP 客户端能通过自然语言与 WebDAV 文件系统交互。

安装

# 方法 1: NPM 全局安装
npm install -g webdav-mcp-server

# 方法 2: 从源代码
git clone https://github.com/yourusername/webdav-mcp-server.git
cd webdav-mcp-server
npm install
npm run build

# 方法 3: 使用 Docker
docker run -p 3000:3000 \
  -e WEBDAV_ROOT_URL=http://your-webdav-server \
  -e WEBDAV_USERNAME=admin \
  -e WEBDAV_PASSWORD=password \
  webdav-mcp-server

配置

创建 .env 文件:

# WebDAV 配置
WEBDAV_ROOT_URL=http://localhost:4080
WEBDAV_ROOT_PATH=/webdav
WEBDAV_USERNAME=admin
WEBDAV_PASSWORD=password

# 服务器配置
SERVER_PORT=3000
AUTH_USERNAME=user
AUTH_PASSWORD=pass

安全提示: 可使用加密密码,运行 npm run generate-hash -- yourpassword 然后添加到 .env 文件: WEBDAV_PASSWORD={bcrypt}$2y$10$...

运行

# 基本运行 (用于 Claude Desktop)
webdav-mcp-server

# HTTP/SSE 模式
webdav-mcp-server --http

与 Claude Desktop 集成

  1. 在 Claude Desktop 中启用 MCP 功能
  2. 打开设置 → MCP 服务器部分
  3. 添加新服务器:
    • stdio 方式: 类型选择"命令",输入 npx webdav-mcp-server
    • HTTP 方式: 类型选择 HTTP,URL 填写 http://localhost:3000/sse,启用基本认证并填入用户名密码

在 Claude 中使用示例

  • "列出我的 WebDAV 根目录中的文件"
  • "创建一个名为 notes.txt 的文本文件,内容为: Hello World"
  • "读取 document.txt 文件"
  • "创建一个名为 projects 的目录"
  • "将 old_name.txt 重命名为 new_name.txt"

可用工具

  • create-file - 创建新文件
  • read-file - 读取文件内容
  • update-file - 更新现有文件
  • delete - 删除文件或目录
  • create-directory - 创建新目录
  • move - 移动或重命名文件/目录
  • copy - 复制文件/目录
  • list-directory - 列出目录内容

故障排除

  1. 检查日志中的错误信息
  2. 确认 WebDAV 服务器可访问
  3. 验证账号密码正确