File Storage MCP Server
The File Storage server exposes a single folder on a machine to DMJBot. All paths are resolved relative to that root and any access outside it is rejected, so DMJBot can work only with the files you choose to share. It is the simplest way to give DMJBot access to local files via the bridge.
What DMJBot can do
folder_contents— list the contents of a folder.file_metadata— get size, modified time and type for a file.file_contents/file_contents_base64— read a file as text or base64.file_contents_as_text— read a file as text, extracting from PDF/DOCX where possible.image_file_contents— read an image (optional thumbnail resize).create_folder— create a folder.save_file— upload a file from base64 content.delete_file/delete_folder— delete a file or folder (recursive optional).move_path— move or rename a file or folder.
Notification
new_file— a new file is detected in a monitored folder during polling. Monitoring is non-recursive: only files added directly to each listed folder are reported.
Add the server
This server runs on the machine whose files you want to expose, through the DMJBot bridge:
dmjbot-bridge install file-storage
dmjbot-bridge configure file-storage
dmjbot-bridge start
Point it at one folder or drive root (for example /Volumes/Work, /mnt/work, or
D:\Work). You can run several instances for several folders — give each a distinct
Storage Title so DMJBot can tell them apart.
Configuration
| Field | Required | Default | Description |
|---|---|---|---|
| Root Folder | yes | — | Absolute path to the single folder exposed. All access is sandboxed to it. |
| Storage Title | no | File Storage |
Short label prefixed into the server name and tool descriptions so DMJBot can pick the right storage when several are loaded. |
| Monitored Folders | no | (empty) | Comma-separated relative paths (under the root) to watch for new files (non-recursive). Empty disables monitoring. |
| Monitor Interval (s) | no | 30 |
How often monitored folders are polled. |
| Monitor New Files | no | true |
Run the new-file poller. |
| Max Scan Items | no | 10000 |
Max entries returned from a folder listing (and scanned when monitoring). |
| Max Returned File Size (bytes) | no | 1048576 |
Max bytes returned in a single file-contents response. |
| Max Read File Size (bytes) | no | 20971520 |
Max bytes the server will read from disk. |
| Excluded Folders | no | (empty) | Comma-separated absolute paths to exclude from all operations and listings. |
| Ignore Files Regex | no | (empty) | Regular expression matching file names to hide from listings. |
| Ignore Folders Regex | no | (empty) | Regular expression matching folder names to hide from listings. |
Boolean fields accept true/false, 1/0, t/f.
Tips
- Choose the narrowest root folder that still covers your task — DMJBot can never reach files outside it.
- Use Excluded Folders / Ignore … Regex to hide sensitive or noisy
subfolders (e.g.
.git,node_modules).