state-memory-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| STATE_MEMORY_MCP_DIR | No | Absolute path to directory where database files are stored. | .state-memory-mcp/ |
| STATE_MEMORY_WAL_MODE | No | SQLite journal mode (WAL, DELETE, TRUNCATE, PERSIST, MEMORY, OFF). | WAL |
| ALLOW_PRIVATE_WEBHOOKS | No | Alias flag for private network webhook dispatch approval. | false |
| STATE_MEMORY_ADMIN_KEY | No | Secret token required to execute administrative operations like prune_events. | undefined |
| STATE_MEMORY_READ_ONLY | No | Forces server into read-only access mode (true/false). | false |
| STATE_MEMORY_ADMIN_MODE | No | Enables administrative mode globally (true/false). | false |
| STATE_MEMORY_AUDIT_ONLY | No | Forces server into audit-only access mode (true/false). | false |
| STATE_MEMORY_MCP_PROJECT | No | Active project slug identifier override. | Auto-resolved from project directory |
| STATE_MEMORY_WEBHOOK_URL | No | Webhook HTTP POST endpoint for real-time state change notifications. | undefined |
| STATE_MEMORY_BUSY_TIMEOUT | No | SQLite database lock busy timeout in milliseconds. | 5000 |
| STATE_MEMORY_MAX_DB_BYTES | No | Maximum database size safety limit in bytes before rejecting writes. | 5368709120 |
| STATE_MEMORY_STRICT_AUDIT | No | Enforces strict cryptographic event log verification. | false |
| STATE_MEMORY_MCP_LOG_LEVEL | No | Logging verbosity on stderr (debug, info, warn, error). | info |
| STATE_MEMORY_ENCRYPTION_KEY | No | Hex or string key for AES-256-GCM metadata payload encryption at rest. | undefined |
| STATE_MEMORY_WEBHOOK_SECRET | No | Secret token sent as Authorization: Bearer <secret> in webhook headers. | undefined |
| STATE_MEMORY_WEBHOOK_TIMEOUT | No | Webhook HTTP POST timeout in milliseconds. | 5000 |
| STATE_MEMORY_MCP_DEFAULT_BRANCH | No | Fallback branch name if Git cannot be queried on startup. | main |
| STATE_MEMORY_CYCLE_DETECTION_MODE | No | Graph cycle detection policy (strict or best_effort). | strict |
| STATE_MEMORY_ALLOW_PRIVATE_WEBHOOKS | No | Allows dispatching webhooks to local/private network IP addresses. | false |
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": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| manage_nodesC | Manage graph nodes in the state graph. Supported actions: create (add single node), update (modify node properties), get (fetch node with edges), remove (delete node and cascade edges), list (filter nodes), search (FTS5 or TF-IDF search), batch_create (create multiple nodes atomically), batch_update (update multiple nodes atomically), add_note (log observation node with optional context link). |
| manage_edgesB | Manage typed graph relationships between nodes. Supported actions: add (create typed relationship), remove (delete relationship), batch_add (create multiple relationships atomically), link_visual (link task or artifact to visual memory state). |
| manage_sessionsA | Manage agent tracking sessions and multi-turn workflow attribution. Supported actions: start (begin tracked session), end (conclude session), list (view active/historical sessions), bootstrap (single-turn start + context snapshot + next tasks). |
| manage_tasksB | Task prioritization, workflow execution, blockers, and stale task management. Supported actions: next (query prioritized unblocked tasks), complete (mark done and optionally create artifact), find_blocked (find tasks blocked by a decision), find_stale (find idle/untouched tasks), find_blockers (find active blockers), find_similar_blockers (TF-IDF search for previously resolved blockers), auto_prune (cancel stale in-progress tasks). |
| manage_snapshotsB | State checkpointing, time travel, diffing, and undo operations. Supported actions: save (create named checkpoint), list (list checkpoints), diff (compare two snapshots), get_state (reconstruct graph state at historical timestamp), revert (rollback graph to historical timestamp), undo (revert last mutation on a node), get_history (chronological audit log for a node). |
| manage_specsA | Spec-Driven Development (SDD) lifecycle and workflow template generation. Supported actions: scaffold (generate spec template in .specs/), ingest (parse PRD/Gherkin into graph nodes), export (export spec node back to Markdown/Gherkin), compliance (calculate requirement coverage matrix), verify (mark acceptance criterion verified/failing), decompose_feature (decompose feature into plan/milestones/subtasks), template (scaffold FDD or RFC template). |
| manage_databaseB | Physical SQLite database maintenance, backups, integrity checks, and Git VCS state sync. Supported actions: backup (online SQLite backup), restore (destructive restore from backup), audit (foreign keys and physical integrity check), merge (merge external SQLite state DB), branch_diff (diff state nodes across git branches), branch_merge (resolve graph conflicts during branch merge). |
| manage_dataB | Export and import graph structures, issue tracker items, fine-tuning trajectories, and multimodal synergy metrics. Supported actions: export_graph (export to JSON/DOT/Mermaid/HTML), export_issues (export to GitHub/Jira JSON), export_trajectories (export JSONL fine-tuning data), export_joint_trajectories (export interleaved state + vision data), export_synergy_metrics (compute dual-memory metrics), import_graph (bulk import nodes & edges), import_issues (import GitHub/Jira issues), import_spec (import PRD/Gherkin spec). |
| query_graphA | Query graph topology, neighborhoods, dependency paths, and safe read-only SQL queries. Supported actions: subgraph (fetch N-hop neighborhood around root node), trace (trace dependency chain upstream or downstream with cycle detection), raw (execute safe read-only SELECT query against SQLite), natural_language (translate natural language query into graph operations). |
| get_analyticsA | Compute workflow metrics, velocity, burndown, cognitive load, decision lineages, and contradiction audits. Supported actions: summary (project overview), velocity (throughput and duration), burndown (time-series remaining tasks chart), value_metrics (token savings and ROI), cognitive_load (ICL and ECL context complexity), critical_path (longest unfinished task chain), context_snapshot (consolidated overview), decision_trail (trace decision lineage), find_related_decisions (find decisions related to an artifact), contradictions (audit for conflicting decisions or broken states). |
| get_eventsB | Inspect the append-only event audit ledger, query structured changesets, and generate session post-mortems. Supported actions: log (query event ledger with filters), changelog (get structured graph diff since timestamp or session), post_mortem (analyze a session and produce a structured markdown report). |
| run_diagnosticsB | Run graph sanity checks, health diagnostics, reference validation, audit chain verification, and storage maintenance. Supported actions: validate (check cycles, orphans, dangling edges), doctor (database WAL mode, schema version, storage health), check_refs (validate file paths and AST symbols with auto-heal), audit_chain (verify SHA-256 event hash integrity), compact (reclaim SQLite storage), archive (archive old completed tasks), prune_events (permanently prune events - admin mode required), version (retrieve package version info), dedupe (detect and merge duplicate nodes). |
| use_blackboardA | Multi-agent shared blackboard for asynchronous agent coordination. Supported actions: post (publish ephemeral notice with topic, content, and TTL expiration), read (read active non-expired blackboard notices). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| review-decisions | Review accepted design decisions and check for contradictions |
| triage-blockers | Review and triage active blockers across the dependency graph |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 13 tools
Each tool has a clearly distinct domain: snapshots, nodes, edges, sessions, tasks, specs, database, data, query, analytics, events, diagnostics, and blackboard. Even where actions overlap (e.g., query_graph vs. get_analytics), the intended use is distinct—topology vs. metrics. No two tools appear to do the same thing.
All tools follow a consistent verb_noun pattern (manage_*, query_*, get_*, run_*, use_*) with snake_case throughout. The verbs are semantically appropriate and the pattern is uniform across the entire set.
With 13 tools, the server is well-scoped for a state memory system. Each tool covers a distinct area and none feel redundant or excessive. The count falls within the ideal 3–15 range.
The tool set offers comprehensive coverage for graph CRUD, snapshots, sessions, specs, database maintenance, export/import, analytics, events, and diagnostics. A minor gap exists in manage_tasks: it lacks explicit create/update/delete actions, though tasks might be managed via nodes. Overall, the surface is nearly complete for the stated purpose.