
MCP server for Seafile cloud storage - access your self-hosted files from AI assistants
概览
MCP (Model Context Protocol) server for Seafile cloud storage. Access your self-hosted files from AI assistants like Claude, OpenCode, and other MCP clients. - List, read, and write files in your Seafile libraries - Create and manage directories - Move, copy, and rename files - Search across libraries - Supports both account-based and library-specific authentication Create a .env file or set environment variables: - SEAFILE_SERVER_URL: Your Seafile server URL - SEAFILE_USERNAME: Your email - SEAFILE_PASSWORD: Your password - SEAFILE_REPO_TOKEN: API token from library settings - SEAFILE_REPO_ID: Library UUID - SEAFILE_MAX_READ_SIZE: Max file size to read (default: 1MB) - SEAFILE_MAX_WRITE_SIZE: Max upload size (default: 10MB) - SEAFILE_TIMEOUT: Request timeout in seconds (default: 30) - : Content returned directly (up to MAX_READ_SIZE) - : Returns metadata and download URL - : Returns download URL instead of content
README
以下为原文 README 节选,完整内容请查看原文。
Seafile MCP Server
MCP (Model Context Protocol) server for Seafile cloud storage. Access your self-hosted files from AI assistants like Claude, OpenCode, and other MCP clients.
Features
- List, read, and write files in your Seafile libraries
- Create and manage directories
- Move, copy, and rename files
- Search across libraries
- Supports both account-based and library-specific authentication
Installation
Using pip
pip install seafile-mcp
From source
git clone https://github.com/5p00kyy/seafile-mcp.git
cd seafile-mcp
pip install -e .
Configuration
Create a .env file or set environment variables:
Required
SEAFILE_SERVER_URL: Your Seafile server URL
Authentication (choose one)
Option 1: Account Authentication (access all libraries)
SEAFILE_USERNAME: Your emailSEAFILE_PASSWORD: Your password
Option 2: Library Token (single library, more secure)
SEAFILE_REPO_TOKEN: API token from library settingsSEAFILE_REPO_ID: Library UUID
Optional
SEAFILE_MAX_READ_SIZE: Max file size to read (default: 1MB)SEAFILE_MAX_WRITE_SIZE: Max upload size (default: 10MB)SEAFILE_TIMEOUT: Request timeout in seconds (default: 30)
Usage with OpenCode
Add to your OpenCode MCP configuration:
{
"mcpServers": {
"seafile": {
"command": "python",
"args": ["-m", "seafile_mcp"],
"env": {
"SEAFILE_SERVER_URL": "https://your-seafile.com",
"SEAFILE_USERNAME": "[email protected]",
"SEAFILE_PASSWORD": "your-password"
}
}
}
}
Or with library token:
{
"mcpServers": {
"seafile": {
"command": "seafile-mcp",
"env": {
"SEAFILE_SERVER_URL": "https://your-seafile.com",
"SEAFILE_REPO_TOKEN": "your-api-token",
"SEAFILE_REPO_ID": "library-uuid"
}
}
}
}
Available Tools
| Tool | Description |
|---|---|
seafile_list_libraries |
List all accessible libraries |
seafile_get_library_info |
Get library details |
seafile_list_directory |
List directory contents |
seafile_read_file |
Read file content |
seafile_write_file |
Write text to a file |
seafile_upload_file |
Upload binary file (base64) |
seafile_create_directory |
Create a folder |
seafile_delete |
Delete file or folder |
seafile_move |
Move file or folder |
seafile_copy |
Copy file or folder |
seafile_rename |
Rename file or folder |
seafile_get_file_info |
Get file metadata |
seafile_get_download_link |
Get download URL |
seafile_search |
Search files by name |
File Handling
- Text files: Content returned directly (up to MAX_READ_SIZE)
- Binary files: Returns metadata and download URL
- Large files: Returns download URL instead of content
Security Notes
- Use library tokens for production (limits access to single library)
- Never commit
.envfiles with credentials
安装
This server does not publish a one-line install command.
Open the repository installation guide 新手?先看 mcpskill.org 教程 →配置
{
"mcpServers": {
"seafile": {
"command": "python",
"args": ["-m", "seafile_mcp"],
"env": {
"SEAFILE_SERVER_URL": "https://your-seafile.com",
"SEAFILE_USERNAME": "[email protected]",
"SEAFILE_PASSWORD": "your-password"
}
}
}
}