One local-first MCP server: clipboard history & snippets, TTL cache, file-organizer overlay, and a knowledge graph. SQLite everywhere, no daemons, no network.
Search workspace entries by full-text (notes + rel_path) or by tag.
Delete ALL entries in a namespace.
Get a cached value. Returns {hit:false} on miss or expiry.
Canonical cache key (sorted-key SHA-256) from arbitrary JSON — use so 'same prompt+params' always hits.
Delete entries by exact key or key prefix within a namespace.
Set per-namespace policy: default TTL seconds (null = permanent).
Store a value. ttl_seconds overrides the namespace default; omit both for a permanent entry.
Entry counts, bytes, and hit totals per namespace.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 11 | 2026-07-28+ | v2 |
Read a channel's pending entries without consuming them.
Put a payload in a named channel — a label lane inside this machine's clipboard (session-class TTL).
Take (read + consume) the oldest pending entry from a channel. Returns null when empty.
Delete a clipboard entry.
Fetch one clipboard entry by id.
Recent clipboard entries, newest first. Filter by channel, tag, or a contains substring (matches content/label).
Pin an entry so it never expires.
Add an entry to the clipboard. ttl_class: ephemeral (24h, default), session (7d), pinned (never expires). Credential-looking content is refused.
Set free-text notes on an entry (replaces existing notes).
Set a key/value metadata pair on an entry.
Pin an entry so it appears in workspace_open's pinned section.
Add tags to a file/dir entry (by workspace-relative path).
Unpin a previously pinned entry.
List children of a node by edge type, newest-first.
Delete a node and all its descendants.
Fetch a knowledge graph node by id with its content and metadata.
Create a fact (node) in the knowledge graph with optional parent/edge relationships.
List recently modified nodes in a garden (by created_at, newest-first).
Full-text search of node titles, content and types within a garden.
Set a node's stage (one of the enum values, or a custom string — no constraints).
Get node counts and basic stats about a garden.
Add tags to a knowledge graph node (tags are additive).
Reconcile a workspace against disk: discover new files/dirs, refresh existing, flag missing. Run after workspace_create and whenever files changed.
Fetch a snippet by name.
List all saved snippets.
Save (or overwrite) a named permanent snippet.
Add an entry to a stalk (by workspace-relative path).
Create a named collection (stalk) of entries within a workspace.
List all stalks in a workspace.
Remove an entry from a stalk.
Register a directory as a named Bamboo workspace (metadata overlay — files are never modified).
List all workspaces.
Open a workspace: top-level outline, pinned entries, recently seen, stalks, counts.