Vlfs Local
БесплатноНе проверенA local, lightweight Model Context Protocol (MCP) server implementing the OpenViking standard. Turns any workspace into an intelligent, semantic virtual filesys
Описание
A local, lightweight Model Context Protocol (MCP) server implementing the OpenViking standard. Turns any workspace into an intelligent, semantic virtual filesystem (VLFS) for LLM agents to prevent context window exhaustion.
README
A local, lightweight, and powerful implementation of the Virtualized Log-Structured File System (VLFS) principles, adhering to the OpenViking standard.
This project automatically turns your local workspace into a contextual Model Context Protocol (MCP) server. By simply running the server within your project, you empower any connected LLM agent with semantic memory, intelligent structural discovery, and isolated cognition layers.
Why VLFS Local?
When working with LLM agents on large codebases or projects, context window exhaustion is a constant threat. Standard approaches involve either dumping massive files into the prompt or relying on black-box external RAG systems.
VLFS Local provides a transparent, local-first alternative:
- Naive but Powerful: It uses standard POSIX-like verbs and simple SQLite vector indexing (
sqlite-vec). No complex infrastructure required. - Context Preservation: It gives your agent a dedicated, persistent memory layer that survives across sessions.
- The Discovery Funnel: It strictly enforces a hierarchical search strategy (L0 -> L1 -> L2) to minimize token usage while maximizing context retrieval.
The OpenViking Virtual Filesystem (viking://)
The MCP server exposes a unified virtual filesystem to the agent under the viking:// URI scheme. This root behaves like a real directory containing three isolated partitions:
viking://resources/: Your actual workspace/project files. This is where your code, documents, and assets live. The server respects your.gitignore.viking://skills/: Executable instructions and procedural guidance for the agent. Physically stored in.viking/skills/.viking://user/memories/: The agent's episodic cognition layer. A place for the agent to write reflections, session summaries, and long-term context. Physically stored in.viking/user/memories/.
Note: By adding .viking/ to your project's .gitignore, your agent's memory and skills are kept cleanly isolated from your actual source code repository.
The L0/L1/L2 Discovery Hierarchy
To prevent token exhaustion, the MCP tools enforce a strict discovery funnel, teaching the connected LLM how to efficiently navigate the project:
L0 Layer: Discovery & Metadata
Tools: fs_ls, fs_tree
- Provides the structural map of the workspace.
- Uses minimal tokens to show directory trees and file names without loading any raw content.
- Agents use this to understand the shape of the project and locate potential areas of interest.
L1 Layer: Scanning & Routing
Tools: memory_find / memory_recall
- Semantic vector search across the workspace.
- Instead of searching raw text, VLFS automatically generates a 1-2 sentence abstract (L1 Summary) for every file and stores its embedding in a local
sqlite-vecdatabase. - Agents use this to "fuzzy search" for concepts (e.g., "authentication logic") without committing to a deep, token-heavy read.
L2 Layer: Deep Reading & Exact Matching
Tools: fs_cat, fs_grep
- Retrieves the raw, unadulterated file contents (L2 Memory).
fs_catloads the full file into the context window.fs_grepperforms an exact literal string match across the raw text.- Agents are instructed to only use L2 tools once they have narrowed down their target via L0 or L1.
Registration & Synchronization (Indexing)
Creating or saving a file in your project directory does not automatically place it into the agent's semantic memory. Just like git add, files must be ingested and registered with the vector index to be discoverable via memory_find.
VLFS Local handles indexing in two ways:
- Single File Registration (
memory_store): When an agent explicitly writes a memory or updates a file using thememory_storetool, the core engine saves the raw file and immediately triggers a background extraction loop to index it. - Bulk Synchronization (
memory_sync): Because VLFS Local does not run a background daemon watching your filesystem, any file created or modified out-of-band is "unregistered" or "stale". This includes you (the human) modifying files in your IDE or pulling a PR, as well as the agent itself modifying code via standard CLI tools (e.g.,sed,echo, orreplace). To make these files discoverable in the semantic index, you or the agent must manually callmemory_sync(e.g.,ov ingest). This tool recursively scans the specifiedviking://partition, identifies files that are newer than their.meta.yamlsidecar (or lack one entirely), and bulk-processes them.
For each unregistered or stale file, the engine uses a local or cloud LLM (configurable) to generate an L1 abstract, embeds it, and updates the SQLite vector database. A .meta.yaml sidecar file is dropped next to the original file to act as the synchronization receipt.
Architecture
The system is split into two primary python packages:
vlfs_core(The Foundation): Handles raw data ingestion, abstract generation, chunking, embedding, and semantic database persistence.vlfs_mcp(The Agent Interface): Wraps the core engine into standard FastMCP tools, enforcing the OpenVikingviking://routing and exposing the L0/L1/L2 verbs to the LLM.
Setup & Configuration
Detailed setup instructions coming soon...
- Uses
vlfs_config.jsonfor overriding storage paths and model providers (supports Local Dev Mode via Ollama/CLI, Google GenAI, OpenAI).
Установка Vlfs Local
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/fedevela/vlfs-localFAQ
Vlfs Local MCP бесплатный?
Да, Vlfs Local MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Vlfs Local?
Нет, Vlfs Local работает без API-ключей и переменных окружения.
Vlfs Local — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить Vlfs Local в Claude Desktop, Claude Code или Cursor?
Открой Vlfs Local на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
Fetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
автор: modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
автор: xuzexin-hzCompare Vlfs Local with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории ai
