seafile-mcp

seafile-mcp

An MCP server that connects to Seafile, enabling file management, search, and library operations with per-user token authentication and configurable safety modes (read-only, safe-write, full).

Category
访问服务器

README

seafile-mcp

An MCP server for Seafile, designed for multi-user deployments: one server instance serves many people, and each user supplies their own Seafile API token as the MCP API key.

How authentication works

The Seafile token is the API key. There is no separate account, no registration, and no credential storage — "authenticated" simply means "Seafile accepted this token."

Two kinds of Seafile token work, and the server auto-detects which one you gave it:

Token How to get it Scope
Library API token (recommended) In Seafile: library → Advanced → API Token, choose read-only or read-write One library. Cannot delete, move, or copy — Seafile itself offers no such endpoints for these tokens.
Account token POST /api2/auth-token/ with your username and password Your whole account, all libraries. Needed for search, move, copy, and delete.

Prefer a read-only library token unless you specifically need more. It is the single most effective way to limit what an assistant can do on your behalf.

The server is a stateless pass-through: it stores no credentials, keeps no user database, and retains nothing between requests. Isolation between users is structural — each request carries its own token and no per-user state exists to leak.

Safety

Deployments choose a mode via SEAFILE_MCP_MODE; tools outside the active tier are never registered, so a model cannot call what it cannot see.

  • read_only — no mutating tools at all.
  • safe_write — default. Write, upload, create directory, rename, move, copy. Every one is reversible via Seafile's file history or an inverse operation.
  • full — additionally exposes delete.

Nothing this server exposes can irreversibly destroy data: deletes go to the library trash, and overwrites create a new version in file history. The trash purge endpoint is deliberately not wrapped as a tool.

Reading PDFs

(This feature is still under development, parsing functionality will be extended)

Most files in a typical Seafile library are PDFs, so seafile_read_file extracts their text layer instead of returning raw bytes as mojibake. There is no OCR — a scanned or image-only PDF comes back with an explicit notice instead of an error or garbage — and layout, tables, and images are not preserved.

A bare call returns the whole document, except that a PDF longer than a configurable page threshold (15 pages by default) is previewed (first 2 pages only) instead, to keep a single call cheap; pass start_page/end_page (1-indexed, inclusive) to read a specific range instead. The response's notice field always states the document's true page count and whether what you got was a preview or the full text, so the two are never ambiguous.

System admins can tune or disable the threshold with SEAFILE_MCP_PDF_PREVIEW_THRESHOLD_PAGES:

SEAFILE_MCP_PDF_PREVIEW_THRESHOLD_PAGES=30    # preview only past 30 pages
SEAFILE_MCP_PDF_PREVIEW_THRESHOLD_PAGES=all   # never preview; always extract the whole document

Running it

See docs/clients.md for client configuration (LibreChat, Claude Desktop, Claude Code, generic HTTP, and local stdio) and docs/deploy.md for the Docker + Caddy deployment.

# local, single user
export SEAFILE_SERVER_URL=https://seafile.example.org
export SEAFILE_API_TOKEN=your_token
uvx seafile-mcp --transport stdio

License

MIT

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选