Virtual MCP Server

PostgreSQL-backed virtual filesystem for AI agents with persistent, session-isolated storage.

Local serverstdioTypeScript

What is the Virtual MCP Server?

PostgreSQL-backed virtual filesystem for AI agents with persistent, session-isolated storage.

What you get

Works with any MCP client: Claude Desktop, Claude Code, Cursor, Windsurf, Cline, and others.

  • Persistent file storage — — files are stored in PostgreSQL and survive process restarts, container recycling, and redeployments
  • Session isolation — — each agent session gets its own namespace automatically, no configuration needed
  • Cross-session stores — — named persistent stores for sharing data between agents or for long-term agent memory
  • 11 POSIX-style tools — — read, write, append, stat, ls, mkdir, rm, mv, glob, grep, stores
  • Glob and grep search — — find files by pattern (**/*.ts) or search content by regex, powered by PostgreSQL trigram indexes
  • Row Level Security — — optional database-enforced isolation between sessions for multi-tenant deployments

Configuration and credentials

  • Node.js 20 or later - PostgreSQL 14 or later (with pg_trgm extension — included in most distributions)

More MCP options

Compare MCP servers by category, or browse hosted MCP servers if you prefer an endpoint over a local process.

Maintainer setup documentation.

Recorded tools

Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.

ToolWhat it does
readpath
writepath, content
appendpath, content
statpath
mkdirpath
globpattern
greppattern, path_filter?
stores*(none)*

How to install the Virtual MCP Server

{
  "mcpServers": {
    "virtual-fs": {
      "command": "npx",
      "args": ["-y", "npm"],
      "env": {
        "DATABASE_URL": "your-value",
        "VFS_AUTO_INIT": "your-value",
        "VFS_SESSION_ID": "your-value",
        "VFS_ENABLE_RLS": "your-value"
      }
    }
  }
}

Add to claude_desktop_config.json, then restart Claude Desktop.

Configuration

  • Node.js 20 or later - PostgreSQL 14 or later (with pg_trgm extension — included in most distributions)
VariableDescriptionRequired
DATABASE_URLEndpoint or connection string the server talks to.Yes
VFS_AUTO_INITConfiguration value read at startup.Optional
VFS_SESSION_IDConfiguration value read at startup.Optional
VFS_ENABLE_RLSConfiguration value read at startup.Optional

Example prompts to try

  • “Use Virtual to read.”
  • “Use Virtual to write.”
  • “Use Virtual to append.”

Frequently asked questions

PostgreSQL-backed virtual filesystem for AI agents with persistent, session-isolated storage. Confirm the tools offered by your installed version in the connected client. Tool availability and permissions depend on the server and account configuration.