🗂️ LiveFolders v0.22.0 — Now with concurrent shell session isolation — per-session invocation slots, async dispatch, SIGKILL escalation — Landlock (Linux) + sandbox-exec (macOS) — Apache 2.0 — Star us on GitHub! ★

LiveFolders vs MCP

MCP (Model Context Protocol) is the leading alternative. Both approaches are valid — the right choice depends on your environment.

Criterion LiveFolders MCP
Setup 6-line YAML, no runtime Python server + package install required
Hot-Reload ~1s, no restart Server kill + restart + reconnect (~1–3s)
Publishing One GitHub URL, no registry No official registry; npm/PyPI or manual config
Discoverability Human how_to.md + machine schema.json (mirrors list_tools) Typed JSON schema via list_tools (protocol-only)
Stateful Tools Durable file state + flock locking — survives restarts, no handler-side coordination In-process memory — fast but lost on server restart
Composability Declarative pipe: chains — stdout→stdin in one LLM write, per-stage validation Python function calls within one server; cross-server needs LLM orchestration
Observability [ERROR:CODE] message + <endpoint>.log with timing & stderr per invocation Typed exception objects with stack context
LLM Compatibility Shell-capable agents (Claude Code, POSIX environments);
anthropic_tools.json enables structured tool calling without shell for API clients
Any MCP-native host incl. web clients
Token Efficiency 6–10% fewer tokens via anthropic_tools.json native schemas — 100% task completion across 8-task benchmark Baseline (0%)
Input Validation Opt-in per-endpoint: min_length, max_length, pattern, JSON schema: Unconditional at protocol layer — every tool validated automatically
Sandbox / Isolation OS-enforced per handler — Landlock+seccomp (Linux), sandbox-exec (macOS); network blocked by default; strict mode aborts mount if unavailable Process-level isolation depends on host; no built-in per-tool sandbox

Neither is universally better. Read the full comparison →

Research backing: Multiple teams independently converged on the filesystem abstraction for LLM tool integration — without coordination, across different languages and OS layers. This convergence motivated a systematic study.

The paper “Files All the Way Down: A Design Space Analysis of Filesystem-Native LLM Tool Integration” proposes a two-axis taxonomy (coupling depth × invocation interface), empirically evaluates seven systems (LiveFolders, MCP, ToolFS, AgentFS, llm9p, InferNode, Quine) across ten criteria, and derives three design principles from the observed tradeoffs. Central finding: coupling depth predicts ergonomics ceiling; invocation interface predicts safety floor. LiveFolders scores ✓ on 8 of 10 criteria (T1 live experiments).

New — Token Efficiency Benchmark: LiveFoldersFS's native tool schema approach (anthropic_tools.json) achieves 6–10% lower token consumption than MCP across an 8-task benchmark suite, with 100% task completion on all tasks. Server-side composition (pipe chains, filter endpoints, get-by-ID handlers) provides the largest per-task gains on multi-step workloads.

Notable findings from the survey: ToolFS's WASM sandbox was an unimplemented stub at T2 inspection (early 2025). llm9p binds an unauthenticated TCP port accessible to any network process, the worst security finding in the survey.

See full empirical findings →    Read the paper →

7-System Comparison Matrix

The paper evaluates all seven systems across ten criteria using three evidence tiers: T1 = live experiments · T2 = structured assessment (code + install) · T3 = paper-only. Rating: ✓ strong · ~ partial · ✗ weak · — N/A.

Criterion LiveFolders
T1
MCP
T1
ToolFS
T2
AgentFS
T2
llm9p
T2
InferNode
T3
Quine
T3
01 Setup complexity~~~~~
02 LLM compatibility~~~~~~~
03 Discoverability~~~~
04 I/O expressiveness~~~~~~
05 Security~✗ ~
06 Stateful tools~~~~~
07 Composability~~~
08 Observability~~~
09 Hot-reload~~~
10 Publishing~~~
✓ count 8 3 1 1 0 3 2

⚠ ToolFS criterion 05: documented WASM sandbox is an unimplemented stub (InMemorySandbox). llm9p criterion 05: unauthenticated TCP port accessible to any network process.


Three Design Principles

Derived from the empirical comparison in the paper:

📏 Principle 1

Coupling depth determines ergonomics ceiling.

OS-coupled systems inherit decades of POSIX tooling — any shell command is immediately a tool handler. The worked example shows this concretely: 10-line YAML vs 18-line Python, with the gap growing at scale. The tradeoff is portability: cloud-hosted agents accessing tools over a network favor protocol-decoupled approaches.

🛡️ Principle 2

Invocation interface determines safety floor.

RPC systems (MCP) enforce input schemas unconditionally before any handler runs. POSIX systems historically concentrated security on handler authors. LiveFolders narrows this gap with opt-in per-endpoint validation + VFS-layer sandboxing (Landlock, seccomp-BPF). The remaining gap: MCP validation is unconditional; LiveFolders requires explicit opt-in per endpoint.

📦 Principle 3

Publishing model is underexplored.

LiveFolders is the only surveyed system that treats tool distribution as a first-class design concern. livefolders install github.com/you/repo requires no registry, no package upload, no config editing. All other systems require manual configuration or informal community registries. As the ecosystem matures, install friction will determine whether tool ecosystems grow organically or stay fragmented.