AI & ML
Give your AI agent a real local drive — MeshDrive 2.0 + MCP (stdio)
Hardik Patel DEV Community
1 views
_ Local-first JuiceFS storage for Linux, with MCP tools for Cursor, Claude Code, and Hermes.
_
The Problem
Most AI agents can read files — but only if you point them at random folders on your laptop. That’s fragile, hard to isolate, and useless when you want durable storage (multi-volume, quotas, web UI) that agents can use safely.
MeshDrive is a local-first Linux storage layer (JuiceFS + SQLite metadata) with a terminal UI, loopback Filebrowser, and a free MCP server so agents can list, read, and write files only inside an isolated root (/opt/meshdrive by default).
No cloud required for the free tier.. Your data stays on your disks.
What you get
JuiceFS volumes mounted under one install root
Filebrowser on http://127.0.0.1:8080 (human UI)
MCP tools for AI clients: health_check, list_storage_backends, read_file, write_file, list_directory, and more
Path isolation — agents cannot escape the MeshDrive root
Optional OpenFGA for authorization (free add-on)
GitHub:vix-gateway/MeshDrive
Docs: MCP clients guide
Install on Ubuntu/Debian (.deb)
Requirements: Ubuntu/Debian amd64, FUSE, Python 3.10+, outbound HTTPS on first install.
curl https://github.com/Hardik94/vix-gateway/releases/download/v2.0.0/meshdrive_2.0.0_amd64.deb
sudo dpkg -i meshdrive_2.0.0_amd64.deb
Verify:
meshdrive doctor
meshdrive status
sudo systemctl status meshdrive-agent
Create storage (one-time)
meshdrive-tui
In the TUI: Storage → Add backend → Mount. Then open Filebrowser: http://127.0.0.1:8080
Enable the MCP add-on (free)
sudo meshdrive-addons install mcp
Smoke test (no LLM needed — proves MCP works):
/opt/meshdrive/venv/bin/python packaging/mcp-smoke-test.py --stdio
You should see: tools (8) and health_check → PASS.
Connect Cursor (stdio — recommended)
Run Cursor on the same machine as MeshDrive (or use SSH — see below).
Create .cursor/mcp.json in your project (or ~/.cursor/mcp.json globally):
{
"mcpServers": {
"meshdrive": {
"command": "/opt/meshdrive/bin/meshdrive-mcp",
"args": [],
"env": {
"MESHDRIVE_ROOT": "/opt/meshdrive",
"MESHDRIVE_MCP_TRANSPORT": "stdio"
}
}
}
}
Cursor Settings → MCP → enable meshdrive
In chat: “Use meshdrive health_check”
Then: “list_storage_backends” and “list_directory /opt/meshdrive/mnt/…”
Why stdio? Cursor’s URL mode often uses Streamable HTTP. MeshDrive’s HTTP mode is legacy SSE (GET /sse + POST /messages/). stdio avoids that mismatch entirely.
Cursor on Local, MeshDrive on Remote (SSH bridge)
{
"mcpServers": {
"meshdrive": {
"command": "ssh",
"args": [
"user@YOUR_SERVER_IP",
"MESHDRIVE_ROOT=/opt/meshdrive",
"MESHDRIVE_MCP_TRANSPORT=stdio",
"/opt/meshdrive/bin/meshdrive-mcp"
]
}
}
}
Set up passwordless SSH first (ssh-copy-id).
Connect Claude Code (stdio)
On the MeshDrive host:
claude mcp add meshdrive \
--env MESHDRIVE_ROOT=/opt/meshdrive \
-- /opt/meshdrive/bin/meshdrive-mcp
claude mcp list
In a session: “Call meshdrive health_check and list_storage_backends.”
Project-level config (.mcp.json) — same JSON as Cursor’s mcpServers block.
Connect Hermes + open-source models (stdio)
Run Hermes on the MeshDrive machine (same host as Ollama). Do not use HTTP/SSE for local models — many never trigger tool_calls.
~/.hermes/config.yaml:
mcp_servers:
meshdrive:
command: /opt/meshdrive/bin/meshdrive-mcp
args: []
env:
MESHDRIVE_ROOT: /opt/meshdrive
MESHDRIVE_MCP_TRANSPORT: stdio
enabled: true
hermes mcp test meshdrive
Use a model with solid function-calling (e.g. Qwen2.5, Llama 3.1+). Set context ≥ 8192 so tool schemas aren’t truncated.
Connect Hermes + open-source models (HTTP/SSE)
~/.hermes/config.yaml:
mcp_servers:
meshdrive:
url: "http://localhost:9000/sse"
transport: sse
enabled: true
connect_timeout: 30
hermes mcp test meshdrive
Release message: “MeshDrive MCP works today with Cursor, Claude Code, and Hermes via stdio.”
Architecture in one sentence
AI client (stdio) → meshdrive-mcp → isolated paths under /opt/meshdrive → JuiceFS mounts
Humans use Filebrowser; agents use MCP. Same storage, different interfaces.
Try it
Install the .deb
meshdrive-tui → add storage
meshdrive-addons install mcp
Paste stdio config into Cursor or Claude or Hermes
Ask: “Use meshdrive to list my storage backends”
Issues & feedback: GitHub Issues on that repo.
MeshDrive 2.0 — local-first storage for the agentic era. Built by Vistrix Labs.
Read original: https://dev.to/hardikprl94/give-your-ai-agent-a-real-local-drive-meshdrive-20-mcp-stdio-472a
Related
Redis Rate Limits for LLM API Keys and Tenant Quotas
AI & ML
2
DEV Community
Integrating Machine Learning Models into Android Apps
AI & ML
1
DEV Community
I Replaced My TTS Engine. The API Call Was the Easy Part.
AI & ML
1
DEV Community
One rule set, four places: inline +3,330 tokens, @import +3,442, paths +0 until read
AI & ML
0
DEV Community
Comments0
No comments yet — be the first