Dateiverwaltungs-Skill
Verwende diesen Skill, wenn du Dateien hochladen oder finden, Download-Links abrufen, ZIP-Archive erstellen oder Text- und Code-Dateien speichern möchtest.
---name: file-management-skilldescription: Upload, download, list, search, and manage files with companyFILES MCP tools. Use when asked to upload a file, find a document, list stored files, get a download link, search documents by name or type, create a ZIP archive, or save a text/code file. Also covers discovering LibreChat file IDs for use in other tools.---
# File Management Skill
Tools for uploading, listing, searching, downloading, archiving, and creating text files in companyFILES.
## Tools in This Skill
| Tool | Purpose ||------|---------|| `upload_file` | Upload any file (base64) for storage — returns document ID || `download_stored_file` | Get a download URL for a stored file || `list_documents` | List all your documents (optionally filter by folder) || `search_documents` | Search documents by filename, type, folder, or date range || `list_my_files` | List all accessible files (LibreChat + PVC storage) || `create_zip_from_stored_files` | Bundle stored documents into a ZIP archive || `create_text_file` | Create and store any text/code file (.sql, .csv, .json, .py, etc.) |
## Decision Guide
```User wants to upload a file → upload_fileUser wants a download link for a stored file → download_stored_fileUser wants to browse / list documents → list_documents (or open_companyfiles_ui from settings-ui-skill)User wants to find a specific document → search_documentsUser wants to see all files including chat uploads → list_my_filesUser wants to bundle files into a ZIP → create_zip_from_stored_filesUser wants to create a code/text file → create_text_file```
## Tool Usage
### upload_file
Max size: 15 MB. Content must be base64-encoded.
```json{ "content": "<base64-encoded file content>", "filename": "logo.png", "mime_type": "image/png", "folder": "assets"}```
Returns `{id, filename, downloadUrl, markdownLink}`. Use `id` as `document_id` in other tools.
---
### download_stored_file
```json{ "document_id": "abc12345-...", "return_content": false}```
Set `return_content: true` to also get base64 content (files < 1 MB only).
> To **read** the contents of Excel/Word/PDF files, use `read_excel` / `read_word` / `read_pdf` — not this tool.
---
### list_documents
```json{ "folder": "invoices"}```
Omit `folder` to list all documents. Also opens an embedded UI view for interactive browsing.
---
### search_documents
```json{ "search": "invoice", "type": "pdf", "folder": "invoices", "created_after": "2025-01-01", "created_before": "2025-06-01"}```
All parameters are optional. `search` is a case-insensitive substring match on filename. `type` values: `word`, `excel`, `powerpoint`, `pdf`, `text`, `image`, `archive`, `file`.
---
### list_my_files
```json{}```
Returns files from both LibreChat (chat uploads) and PVC (companyFILES storage). Each entry has either `file_id` (LibreChat) or `document_id` (PVC) or both. Use these IDs in read tools (`read_excel`, `read_word`, `read_pdf`) and `convert_document`.
---
### create_zip_from_stored_files
Max total uncompressed size: 50 MB.
```json{ "document_ids": ["uuid-1", "uuid-2", "uuid-3"], "filename": "project_files", "compression_level": 6, "folder": "archives"}```
ZIP archives are **temporary** (auto-deleted after 1 day by default). They do not appear in `list_documents`.
---
### create_text_file
Supported extensions: `.sql`, `.csv`, `.json`, `.xml`, `.html`, `.css`, `.js`, `.ts`, `.py`, `.java`, `.go`, `.rs`, `.rb`, `.php`, `.c`, `.cpp`, `.yaml`, `.yml`, `.md`, `.txt`, `.sh`, `.bash`, `.env`, `.ini`, `.conf`
```json{ "content": "SELECT * FROM orders WHERE status = 'pending';", "filename": "pending_orders.sql", "folder": "queries"}```
```json{ "content": "#!/bin/bash\necho 'Hello World'", "filename": "hello.sh", "folder": "scripts"}```
## Key Notes
- `upload_file` validates file size (max 15 MB) and extension.- `document_id` from any create/upload tool can be reused in ZIP creation, template image injection (`document_id` in image placeholders), and `doc:` URI references in Markdown/HTML.- Documents are auto-deleted after `DOCUMENT_RETENTION_DAYS` (default 365 days).- For interactive file browsing, use `open_companyfiles_ui` from the **settings-ui-skill**.