Seafile

Official registry Search and web

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

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

MCPB package https://github.com/ipsupport-llc/seafile-mcp/releases/download/v0.1.1/seafile-mcp.mcpb

Environment variables

  • SEAFILE_URL Seafile server address; if empty, given at the first sign-in
  • SEAFILE_LOCAL_DIR The only local folder for downloads and uploads (default ~/Downloads)
  • SEAFILE_READ_ONLY true hides the write tool

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. Seafile MCP
  2. Why this exists
  3. What it can do
  4. Install
  5. Safety
  6. License

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:

{
  "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

/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

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

Frequently asked questions

What is Seafile?

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

How do I install Seafile?

Follow the installation steps in its documentation, shown on this page and in its repository.

Does Seafile need an API key?

Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.

Is Seafile open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains Seafile?

It is published by ipsupport-llc. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.