mcpField
S
Seafile

Seafile

本地服务
github.com文件与存储02 周前更新

关于 Seafile

Seafile 是适用于 macOS 的 MCP 服务,可供使用 MCP 客户端的 AI 助手管理 Seafile 服务器中的文件。浏览器登录避免助手接触密码,分组的读取和写入工具涵盖文件管理与共享。

主要功能

  1. 01浏览资料库、文件夹和文件详情
  2. 02按名称搜索文件和文件夹
  3. 03分页读取文本文件
  4. 04上传、下载和整理文件
  5. 05管理版本、回收站和共享链接
  6. 06通过浏览器登录并使用 macOS Keychain

适用场景

  1. 01查找并阅读 Seafile 资料库中的文档
  2. 02整理不同文件夹和资料库中的文件
  3. 03恢复旧版本或已删除项目
  4. 04创建或移除文件共享链接

MCP 相关

该 MCP 服务通过 stdio 供 MCP 客户端运行,并以分组的 `read` 和 `write` 工具提供 Seafile 操作。登录会在浏览器中打开服务器登录页,令牌存储在 macOS Keychain 中。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库
安装包
mcpbseafile-mcp.mcpb

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

README 配图

Seafile MCP

让 AI 助手浏览、搜索、读取和整理 Seafile 中的文件——
在 Mac 上通过浏览器登录,适用于任何 MCP 客户端。无需依赖项。

下载最新版本 · 安装 · 功能 · 安全性


为什么要开发它

Seafile 是一款可自托管的文件同步与共享服务。这个 MCP 服务让助手像使用连接器一样与其交互:

  • 通过浏览器登录。 首次使用时,会在浏览器中打开 Seafile 自带的登录页面——无论你的服务使用密码、SSO 还是双重验证。助手永远不会看到你的密码;令牌会存入 macOS 钥匙串。
  • 适用于任何 MCP 客户端。 桌面聊天应用、本地模型应用、编码 Agent——任何能通过标准输入输出启动 MCP 服务的应用都可以使用。
  • 无需安装任何东西。 不需要 Node、Python 或 Homebrew:它使用 JavaScript for Automation,以及 Mac 自带的 curl 和钥匙串运行。
  • 只需两次权限提示,而不是三十次。 所有功能都归入 read 和 write 两个工具。
  • 也适用于小型本地模型。 参数设置灵活(repo 可代替 library,folder 可代替 path,支持 "true",以及 ls、mv、rm 等简短操作名称),每次出错都会给出直白的修复方法。

功能

浏览资料库(个人、共享、群组)、文件夹、文件详情。
搜索按名称搜索文件和文件夹,可搜索单个或所有资料库。
读取读取文本文件内容(Markdown、CSV、代码、日志等),长文件支持分页。
版本与回收站查看文件历史记录、恢复旧版本、列出并恢复已删除的项目。
文件下载到本地文件夹、从本地文件夹上传、写入文本文件。
整理创建文件夹、重命名、移动和复制(也可跨资料库),删除到资料库回收站。
共享创建共享链接(可设置密码、有效期、下载或上传权限)、列出并移除链接。

安装

你需要 macOS 14 或更高版本,以及一个 MCP 客户端。

适用于任何 MCP 客户端

获取代码(使用 git clone,或解压最新版本中的 .mcpb),然后将服务添加到客户端配置中:

{
  "mcpServers": {
    "seafile": {
      "command": "/usr/bin/osascript",
      "args": ["-l", "JavaScript", "/path/to/seafile-mcp/server/seafile-mcp.js"],
      "env": { "SEAFILE_URL": "https://cloud.example.com" }
    }
  }
}

运行 ./install.sh --print --server https://cloud.example.com,即可输出包含正确路径的配置块。

Claude Desktop(一键安装)

从最新版本下载 seafile-mcp.mcpb,双击后点击 Install。设置位于 Settings → Extensions。

设置
变量说明
SEAFILE_URL你的服务地址,例如 https://cloud.example.com。如果留空,请在首次登录时告知助手;之后会记住该地址。
SEAFILE_LOCAL_DIR文件下载到的唯一本地文件夹,也是上传文件的来源。默认值为 ~/Downloads。
SEAFILE_READ_ONLY=true完全移除 write 工具。
SEAFILE_TIMEOUT单次调用超时前可运行的秒数(默认值为 60)。

服务必须允许客户端通过浏览器登录(在 seahub_settings.py 中设置 CLIENT_SSO_VIA_LOCAL_BROWSER = True,与 Seafile 桌面客户端使用的设置相同)。

安全

  • 删除的内容会移至库的回收站,并且可以还原;如果某个库不保留历史记录(删除的内容将永久消失),服务器会拒绝在其中执行删除操作。
  • 不会意外覆盖任何内容。 上传或写入现有文件时,必须设置 replace: true,且旧文件会保留在文件历史记录中。下载不会覆盖本地文件。
  • 仅使用一个本地文件夹。 上传内容只能来自设置中的本地文件夹,下载内容也只能保存到该文件夹;因此,受到提示词注入的“上传 ~/.ssh/id_rsa”请求会被拒绝。
  • 上传、写入、移动、复制、删除和创建共享链接操作均支持试运行。
  • 防止意外重复操作。 15 分钟内重复执行相同的写入操作会被拒绝,除非再次主动确认。
  • 不会卡住。 调用耗时过长时会停止并返回明确的错误;ping 和 tools/list 始终会响应。
  • 注意文件中隐藏的指令。 助手读取的任何内容都会成为其上下文的一部分。请将 write 保持为手动批准,或开启只读模式。
  • 整个服务只有一个可读文件。 server/seafile-mcp.js。

可以列出加密库,但无法在此读取、上传内容到这些库或分享这些库;请使用 Seafile 网页或桌面客户端进行操作。

工具参考

两个工具,均接受 { "action": "...", "args": { ... } };完整参数列表见各工具的说明。路径从库根目录开始(/Projects/report.pdf);库可以通过名称或 id 指定。

read:sign_in · status · list_libraries · list_folder · search · file_info · read_file · file_history · list_trash · list_share_links

write:download_file · upload_file · write_text_file · create_folder · rename · move · copy · delete · restore · revert_file · create_share_link · delete_share_link · sign_out

开发
/usr/bin/osascript -l JavaScript tests/unit.js server/seafile-mcp.js   # fake Seafile, fake Keychain
python3 tests/protocol.py                                              # JSON-RPC, worker, installer
./test.sh                                                              # real server: signs in, lists libraries

推送标签(git tag v0.1.0 && git push origin v0.1.0)后,GitHub Actions 会运行测试、构建 .mcpb、将其附加到发布版本,并将其列入 MCP Registry。

许可证

MIT © IPSupport LLC

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。