MemKernel
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| memkernel_append_decisionA | Record a canonical architectural decision on the active branch. Decisions are durable: they are never compacted away, and a new value for an existing key supersedes the old one (which is kept as a deprecated assumption). Example: decision_key="auth.method", decision_value="OAuth2 PKCE". |
| memkernel_query_stateA | Return the consolidated memory of a branch as JSON: tasks, decisions, active workspace facts, deprecated assumptions, execution blockers, file claims, active leases and recent events. Set include_ephemeral=true to also see raw tool-execution logs and scratchpad notes not yet compacted. |
| memkernel_acquire_leaseA | Acquire an exclusive, time-limited lease on a file before editing it. timeout_seconds is the lease TTL; renew it with memkernel_heartbeat_lease. Returns acquired=true and a fencing_token on success; on contention returns acquired=false with the current holder and how long until it expires. |
| memkernel_release_leaseA | Release a lease you hold. Returns false if the token is stale (the lease expired and was granted to someone else) or not yours. |
| memkernel_heartbeat_leaseB | Extend a lease you hold by its original TTL. False means the lease was lost: stop editing and re-acquire. |
| memkernel_fenced_append_decisionB | Record a decision only while this agent holds the current lease. The holder, token and expiry check shares the append's transaction. This protects the memory event; it does not write or lock the file. |
| memkernel_fork_investigationB | Fork the active branch at its head into a new branch and switch this session to it. Use for speculative work you may want to discard. |
| memkernel_checkoutC | Switch this session's active branch (it must exist). |
| memkernel_rollbackA | Roll the active branch's live timeline back to target_event_id. Later events are reverted but kept in the audit log (fork from them to recover). Find event ids with memkernel_history. |
| memkernel_trigger_gcA | Compact a branch's memory now, folding older tool logs and notes into a semantic snapshot. Reports token counts before/after. |
| memkernel_init_taskC | Record this agent's task directive and constraints on the active branch. |
| memkernel_log_executionA | Log a tool/terminal execution. A non-zero exit_code opens a blocker for this command; a later zero exit clears it. Put verified environment facts (e.g. {"python_version": "3.14.0"}) in facts; changed values are tracked as deprecated assumptions. |
| memkernel_noteA | Record an ephemeral scratchpad note (compacted by GC over time). |
| memkernel_historyB | List the most recent live events on the active branch (ids for rollback). |
| memkernel_diff_branchesB | Compare two branches: merge base, events ahead on each side, and conflicting decisions and facts. |
| memkernel_list_branchesA | List all branches and this session's active branch. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 16 tools
Most tools target distinct resources and actions (lease acquire/release/heartbeat, branch fork/checkout/rollback, memory query/history/diff). The only real risk is memkernel_append_decision vs memkernel_fenced_append_decision, but the descriptions clearly distinguish the lease-guarded variant, keeping confusion low.
All names share a consistent memkernel_ prefix with snake_case and are mostly verb_noun (append_decision, acquire_lease, trigger_gc, log_execution). A few are bare nouns/verbs (checkout, rollback, note, history), a minor deviation but still readable and predictable.
16 tools is slightly on the heavy side but each maps to a distinct capability spanning leases, branches, decisions, execution logging, notes, and GC. Nothing looks redundant enough to be padding, so the count fits the scope.
The surface covers the full memory-kernel lifecycle: tasks, decisions, leases, branch management, history, diff, GC, execution logging, and notes. Minor gaps like no explicit decision deletion or separate fact-listing tool exist, but query_state and GC largely compensate.