
Virtual Filesystem
lu-zhengdaMIT
2 звёзд1 форков
MCP-сервер, который превращает PostgreSQL в виртуальную файловую систему для AI-агентов. Обычные агенты хранят данные во временной памяти или на локальном диске. Когда контейнер перезапускается или сессия завершается, файлы теряются. Virtual Filesystem решает эту проблему: все файлы живут в PostgreSQL и не исчезают после рестарта.
Сервер подходит для команд, которые разрабатывают сложных AI-агентов: мультиагентные системы, долгоживущие ассистенты, CI/CD-пайплайны. Вы получаете привычный POSIX-интерфейс, но данные остаются в базе.
Установка
npx -y mcp-virtual-fsХарактеристики
Общее
- СтатусСообщество
- Разработчикlu-zhengda
- ЛицензияMIT
Технологии
- ЯзыкиTypeScript
- Транспортstdio
Описание
Возможности
- Постоянное хранение файлов: данные сохраняются в PostgreSQL, переживают рестарт процесса, контейнера и переразвёртывание.
- Изоляция сессий: каждая сессия агента автоматически получает отдельное пространство имён — файлы одного агента не видны другому.
- Общие хранилища: создавайте именованные сториджи (shared stores), чтобы агенты обменивались файлами и данными.
- POSIX-инструменты: сервер реализует 11 команд — read, write, append, stat, ls, mkdir, rm, mv, glob, grep, stores.
- Поиск по шаблону и содержимому: glob (
**/*.ts) и grep (регулярные выражения) работают через триграммные индексы PostgreSQL. - Безопасность на уровне строк (RLS): для мультитенантных развёртываний PostgreSQL сам изолирует данные между сессиями.
- Почти без настроек: включите
VFS_AUTO_INIT=true, и сервер сам создаст нужные таблицы при первом запуске.
Как подключить
Установите Node.js 20 или новее и PostgreSQL 14+ (требуется расширение pg_trgm — оно входит в стандартную поставку большинства дистрибутивов).
1. Установка
Запустите команду в терминале:
npx -y mcp-virtual-fs
2. Настройка конфигурации
Добавьте блок в файл конфигурации вашего MCP-клиента. Пример для Claude Desktop:
{
"mcpServers": {
"virtual-fs": {
"command": "npx",
"args": ["-y", "mcp-virtual-fs"],
"env": {
"DATABASE_URL": "postgresql://user:password@localhost:5432/virtual_fs"
}
}
}
}
3. Перезапустите клиент
Перезапустите MCP-клиент. Сервер автоматически создаст таблицы в указанной базе данных.
Примеры запросов
- «Сохрани этот конфиг в файл /workspace/nginx/default.conf»
- «Найди все markdown-файлы в проекте с помощью глоба
**/*.md» - «Запиши результат анализа логов в shared store "team-log"»
- «Прочитай содержимое файла /workspace/data/results.json и сделай краткую выжимку»
Технические детали
- Язык разработки: TypeScript
- Транспорт: stdio
- База данных: PostgreSQL (версии 14 и выше)
- Лицензия: MIT
- Совместимые клиенты: Claude Desktop, Claude Code, Cursor, Windsurf, Cline и любые MCP-клиенты, поддерживающие транспорт stdio.