Skip to main content

Domain-agnostic vault-governance engine: frontmatter schema profiles, indexing, ranked search, a task ledger, atomic writes, and a composable MCP core (register_core). The reusable core behind severino-vault-mcp and severino-edu-mcp.

Project description

vault-engine

A domain-agnostic vault-governance engine — the reusable core behind severino-vault-mcp and severino-edu-mcp. It governs a Git-backed, frontmatter-tagged Markdown vault (Obsidian-style) and exposes that governance both as a library and as a composable MCP tool surface.

What's in it

  • SchemaProfile — a vault's frontmatter contract (doc-types, statuses, id-prefixes, the task lifecycle), with as_dict() (HQ/CI contract) and check_doc_enums(). One engine, many profiles: a different vault is a different profile, not a fork.
  • Index + search — a lenient frontmatter index and ranked, section-scoped retrieval (find_sections) that returns menus, never raw bodies.
  • Task ledgerdoc_type: task docs derived from the index, with a validated write path.
  • Atomic writes — a single serializer and atomic_write_text / transactional_replace, so every writer shares one escaping + durability rule.
  • register_core(mcp, ctx) — composes the generic MCP tools (search, doc read with a sensitivity gate, project inventory, daily progress, the task ledger, schema-validated frontmatter writes) onto any FastMCP server.

Install

pip install vault-engine        # or:  uv add vault-engine

Use

from vault_engine.config import Config
from vault_engine.context import ServerContext
from vault_engine.core_tools import register_core
from mcp.server.fastmcp import FastMCP

ctx = ServerContext(Config.from_env())          # your vault + profile
mcp = FastMCP("my-vault-mcp")
register_core(mcp, ctx)                          # + your own tool groups

The servers in the family own only their domain (writeup/topology tools, course tools) and a thin entrypoint; everything generic lives here.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

severino_vault_engine-0.1.0.tar.gz (56.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

severino_vault_engine-0.1.0-py3-none-any.whl (63.8 kB view details)

Uploaded Python 3

File details

Details for the file severino_vault_engine-0.1.0.tar.gz.

File metadata

  • Download URL: severino_vault_engine-0.1.0.tar.gz
  • Upload date:
  • Size: 56.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.13 {"installer":{"name":"uv","version":"0.11.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for severino_vault_engine-0.1.0.tar.gz
Algorithm Hash digest
SHA256 7ae089c4e4e537c79aefab9455c29f86082e465bb2ed3b44383d9288817126f4
MD5 58407f1d95d207ae6c5d197e0b843341
BLAKE2b-256 571731f5b5d8690130d1ae20686bf6b740ed52b4da54e1e16966d68a10ab0497

See more details on using hashes here.

File details

Details for the file severino_vault_engine-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: severino_vault_engine-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 63.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.13 {"installer":{"name":"uv","version":"0.11.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for severino_vault_engine-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dcdc1834f1c769a63cd5d5109ed7f82e5d08a16a0254c78f17386723c1b4ddc1
MD5 8dde3297c05d2c2593d4088fff233250
BLAKE2b-256 3704edcab3deaf12ec8daf371706947543068438a153d09489b0fe920fb0733c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page