Virtual Fs vs Markitdown

A side-by-side look at the Virtual Fs and Markitdown MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

Virtual Fs logoVirtual FsFile Systems · Local subprocess (stdio)PostgreSQL-backed virtual filesystem for AI agents with persistent, session-isolated storage.51GoodAuth: not declaredMarkitdown logoMarkitdownFile Systems · Local subprocess (stdio)MCP tool access to MarkItDown -- a library that converts many file formats (local or remote) to Markdown for LLM consumption.67GreatAuth: no auth required

Verdict: choose Virtual Fs for file systems work as a local process; choose Markitdown for file systems as a local process. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

Virtual Fs logoChoose Virtual Fs when

  • You need dedicated capabilities in the File Systems domain.
  • You prefer a local stdio subprocess transport.
  • You have the keys it needs: DATABASE_URL.
  • You want tools like read, write, append.
Explore Virtual Fs

Markitdown logoChoose Markitdown when

  • You need dedicated capabilities in the File Systems domain.
  • You prefer a local stdio subprocess transport.
  • Its auth model fits you: No auth required.
  • You want tools like convert_to_markdown.
Explore Markitdown

Feature & specification comparison

Rows where the two servers differ are marked.

SpecVirtual Fs logoVirtual FsMarkitdown logoMarkitdown
CategoryFile SystemsFile Systems
Quality signal51/100 · Good67/100 · Great
Install commandConfirmedConfirmed
TransportLocal subprocess (stdio)Local subprocess (stdio)
AuthNot declaredNo auth required
PricingNot declaredFree
Required env varsDATABASE_URLNone listed
Verified ownerCommunity listingCommunity listing
GitHub stars3191,918
Directory activity 1 views 0 installs 0 upvotes 6 views 0 installs 0 upvotes
Tools111

Tools & capabilities

Virtual Fs tools 11

  • readRead file contents
  • writeWrite file (creates parents automatically)
  • appendAppend to file (creates if missing)
  • statCheck existence and get metadata
  • lsList directory (dirs first, then alphabetical)
  • mkdirCreate directory and parents (mkdir -p)
  • rmRemove file or directory recursively
  • mvMove/rename file or directory
  • globFind files by glob (e.g., `**/*.ts`, `**/*.{js,ts}`)
  • grepSearch file contents by regex
  • storesList all persistent store names

Markitdown tools 1

  • convert_to_markdownConvert a resource described by an http:, https:, file: or data: URI to markdown

Ready-to-paste client configs

Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.

Virtual Fs

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "virtual-fs": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-virtual-fs"
      ],
      "env": {
        "DATABASE_URL": "YOUR_DATABASE_URL_HERE"
      }
    }
  }
}

Markitdown

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "microsoft-markitdown": {
      "command": "uvx",
      "args": [
        "markitdown-mcp"
      ]
    }
  }
}

Frequently asked questions

Virtual Fs is categorized under File Systems and uses a local stdio subprocess. Markitdown belongs to File Systems and uses a local stdio subprocess. Pick Virtual Fs for file systems work and Markitdown for file systems.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.

Virtual Fs has no declared pricing — check the project's own site. Markitdown is listed as free. Auth: no auth required. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add virtual-fs and microsoft-markitdown as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, Virtual Fs has a quality signal of 51/100 (Good) with 1 views, 0 installs and 3 GitHub stars. Markitdown has 67/100 (Great) with 6 views, 0 installs and 191,918 GitHub stars.