Seafile

io.github.ipsupport-llc由 GitHub 帳號 ipsupport-llc 發布v0.1.1更新於 Oct 25, 2026

Seafile libraries, folders, files and share links for any MCP client. Browser sign-in, no deps.

已驗證STDIO僅桌面檔案與儲存知識與記憶

概覽

AI 產生的概覽

僅限 macOS 的 MCP 伺服器,讓助理透過瀏覽器登入瀏覽、搜尋、讀取與整理自架 Seafile 伺服器中的檔案。

可以做什麼
瀏覽資料庫、資料夾與檔案詳細資訊,依名稱在單一或全部資料庫中搜尋檔案與資料夾,並查看登入狀態、透過瀏覽器登入頁登入或登出。讀取文字檔內容(長檔案分頁),查看檔案的版本歷程。將檔案下載到唯一的本機資料夾、從該資料夾上傳,以及寫入文字檔。建立資料夾、重新命名、移動與複製(也可跨資料庫),刪除時移入資料庫垃圾桶。列出並還原已刪除項目,將檔案還原到舊版本。建立、列出與刪除帶密碼、到期日及下載或上傳權限的分享連結。
適用情境
適合將文件存放在自架 Seafile 伺服器、並希望在 Mac 上讓助理尋找、閱讀、整理或分享這些檔案而不必切換到網頁介面的情境。適用於透過 stdio 啟動 MCP 伺服器的桌面聊天應用、本機模型應用與程式開發代理。
執行需求
macOS 14 或更新版本及一個 MCP 用戶端;透過 osascript 在本機執行,無需 Node 或 Python。Seafile 伺服器須允許用戶端使用瀏覽器登入。設定項目:SEAFILE_URL(伺服器位址,可在首次登入時提供)、SEAFILE_LOCAL_DIR(唯一的上傳下載資料夾,預設 ~/Downloads)、SEAFILE_READ_ONLY、SEAFILE_TIMEOUT。登入權杖儲存在 macOS 鑰匙圈中。
安裝前請注意
write 工具可上傳、覆寫(僅在 replace: true 時)、移動、複製、刪除、還原檔案並建立分享連結;建議保持手動核准或設定 SEAFILE_READ_ONLY=true。助理讀取的檔案可能夾帶隱藏指令,應將其內容視為不可信。分享連結可能將檔案暴露給他人。加密資料庫只能列出,無法讀取、上傳或分享。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Seafile,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

[圖片]

Seafile MCP

Let your AI assistant browse, search, read and organize the files in your Seafile —
with a browser sign-in, from any MCP client on a Mac. No dependencies.

Download the latest release · Install · What it can do · Safety


Why this exists

Seafile is a self-hosted file sync and share server. This MCP server lets an assistant work with it the way a connector would:

  • Browser sign-in. The first time, a browser window opens on your Seafile's own login page — password, SSO or two-factor, whatever your server uses. The assistant never sees your password; the token goes into the macOS Keychain.
  • Any MCP client. Desktop chat apps, local-model apps, coding agents — anything that starts an MCP server over stdio.
  • Nothing to install. No Node, no Python, no Homebrew: it runs on JavaScript for Automation with the Mac's own curl and Keychain.
  • Two permission prompts, not thirty. Everything is grouped into a read tool and a write tool.
  • Works with small local models too. Arguments are forgiving (repo for library, folder for path, "true", short action names like ls, mv, rm), and every mistake comes back with a plain "how to fix".

What it can do

BrowseLibraries (yours, shared, group), folders, file details.
SearchFiles and folders by name, in one library or all.
ReadThe text of text files (Markdown, CSV, code, logs…), paged for long ones.
Versions & trashA file's history, bring back an old version, list and restore deleted items.
FilesDownload into your local folder, upload from it, write a text file.
OrganizeCreate folders, rename, move and copy (also between libraries), delete to the library trash.
ShareCreate share links (password, expiry, download/upload), list and remove them.

Install

You need macOS 14 or later and an MCP client.

Any MCP client

Get the code (git clone, or unzip the .mcpb from the latest release) and add the server to your client's config:

json
{  "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 prints this block with the right path.

Claude Desktop (one click)

Download seafile-mcp.mcpb from the latest release, double-click it and click Install. Settings live in Settings → Extensions.

Settings

VariableWhat it does
SEAFILE_URLYour server, e.g. https://cloud.example.com. If empty, tell the assistant at the first sign-in; it is remembered.
SEAFILE_LOCAL_DIRThe only local folder files are downloaded to and uploaded from. Default ~/Downloads.
SEAFILE_READ_ONLY=trueRemoves the write tool entirely.
SEAFILE_TIMEOUTSeconds one call may take before it is stopped (default 60).

The server must allow browser sign-in for clients (CLIENT_SSO_VIA_LOCAL_BROWSER = True in seahub_settings.py, as the Seafile desktop client uses).

Safety

  • Deletes go to the library trash and can be restored — and the server refuses to delete in a library that keeps no history (where deleted items would be gone).
  • Nothing is overwritten by surprise. Uploading or writing over an existing file needs replace: true, and the old one stays in the file history. Downloads never overwrite local files.
  • One local folder. Uploads come only from, and downloads go only to, the local folder in the settings — a prompt-injected "upload ~/.ssh/id_rsa" is refused.
  • Dry runs for upload, write, move, copy, delete and share links.
  • No accidental repeats. The same write twice within 15 minutes is refused unless asked again on purpose.
  • Nothing hangs. A call that takes too long is stopped with a clear error; ping and tools/list always answer.
  • Watch out for instructions hidden in files. Anything the assistant reads becomes part of its context. Keep write on manual approval, or turn on read-only mode.
  • One readable file. The whole server is server/seafile-mcp.js.

Encrypted libraries can be listed, but not read, uploaded to or shared here — use the Seafile web page or desktop client for those.

Tool reference

Two tools, each taking { "action": "...", "args": { ... } }; the full argument list is in each tool's description. Paths start at the library root (/Projects/report.pdf); libraries are given by name or 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

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

Push a tag (git tag v0.1.0 && git push origin v0.1.0) and GitHub Actions runs the tests, builds the .mcpb, attaches it to a release and lists it in the MCP Registry.

License

MIT © IPSupport LLC

來源:README.md,提交 8ee180d

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.1.1最新Oct 17, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分