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 |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| add_nodeB | Create a new node in the workflow graph (e.g. task, decision, artifact, plan, blocker, milestone, observation). |
| update_nodeB | Update properties of an existing node in the workflow graph. |
| get_nodeA | Get a single node by its unique ID, including all its connected inbound and outbound edges. |
| remove_nodeA | Delete a node from the workflow graph. Connected relationships (edges) are cascade deleted automatically. |
| add_edgeA | Create a relationship/edge between two nodes. Cycles are rejected for depends_on, blocks, and child_of. |
| remove_edgeA | Delete a specific relationship between two nodes. |
| list_nodesA | List nodes with filtering by type, status, tags, and git branch. |
| search_nodesA | Search nodes using full-text search (FTS5) or local TF-IDF vector similarity across title, metadata, and tags. |
| get_subgraphA | Retrieve a node and its N-hop neighborhood (nodes and connecting edges). |
| trace_dependenciesA | Trace dependency chains upstream (what depends_on or blocks) or downstream (what is blocked/depended on). |
| find_blockersA | List active blockers and the nodes they block, either project-wide or for a specific node. |
| find_similar_blockersA | Semantic TF-IDF search over solved blockers and observations to discover past resolution patterns. |
| auto_prune_stale_tasksA | Automatically transition inactive in_progress tasks idle for longer than a specified threshold. |
| get_project_summaryA | Retrieve a high-level project summary: counts, status breakdowns, progress, decisions, and blockers. |
| decision_trailA | Trace the full chain of decisions that led to a given state: what was decided, what it updated/superseded, and what it contradicts. |
| critical_pathA | Compute the longest dependency chain to a milestone — the minimum set of tasks that must complete. |
| impact_analysisA | Calculate downstream affected nodes if a target node is modified or deleted. |
| detect_contradictionsA | Scan for contradictions (tasks marked done but blocked, accepted contradicting decisions). |
| export_graphA | Export project nodes and edges in JSON, DOT, Mermaid, or interactive HTML format. |
| import_graphA | Bulk import nodes and edges (replaces existing project data, requires force parameter if data exists). |
| query_graphA | Run safe, read-only SELECT SQL queries against the graph database. |
| natural_language_queryA | Query state graph using natural language free-text ("what is blocking auth?", "decisions led here"). |
| post_blackboardA | Post an ephemeral message or state update to the multi-agent blackboard. |
| read_blackboardA | Read recent messages from the multi-agent blackboard. |
| plan_and_decompose_featureA | Atomically create a feature plan, optional milestone, subtasks, and dependency edges in a single turn. |
| post_mortem_from_sessionA | Analyze an agent session event log and generate a post-mortem observation and report artifact. |
| get_state_at_timestampA | Reconstruct historical state memory (nodes and edges) as it existed at a specific ISO timestamp. |
| revert_to_timestampB | Roll back state graph memory to a historical point in time, removing subsequent nodes and edges. |
| validate_memory_referencesB | Validate cross-memory references to external file paths and code symbols, optionally auto-healing broken links. |
| velocity_analyticsA | Calculate velocity analytics, task completion rate, average cycle time, and daily throughput breakdown. |
| burndown_chartA | Generate burndown chart time-series data, remaining scope, and estimated completion date. |
| export_issuesA | Export tasks and blockers as external issue tracker JSON payloads (GitHub Issues / Jira). |
| import_issuesA | Import external issue tracker issues (GitHub Issues / Jira) into state graph memory. |
| vcs_branch_syncA | Analyze state memory nodes created or modified on the current git branch vs a target branch. |
| vcs_merge_resolutionA | Simulate or resolve state memory graph conflicts when merging Git branches. |
| compact_graphA | Rebuild database indexes, prune orphaned edges, and reclaim unused SQLite disk storage. |
| archive_completed_nodesA | Flag completed tasks updated before a specified cutoff threshold as archived. |
| doctor_reportA | Run system health diagnostics, check schema integrity, WAL status, orphaned edge counts, and generate recommendations. |
| watch_graph_changesA | Observe recent state graph mutations and event log entries since a timestamp or session. |
| backup_project_dbA | Backup the project's sqlite database file to a target destination. |
| restore_project_dbA | Restore the project's sqlite database from a backup file (destructively overwrites current project database). |
| audit_project_dbA | Audit the project's database for physical integrity, foreign key violations, orphaned edges, circular dependencies, and contradictions. |
| merge_project_dbA | Merge an external sqlite database file into the existing project database, resolving conflicts by keeping the newer updated_at nodes. |
| get_context_snapshotA | Get a comprehensive high-level context snapshot combining summary, active blockers, and immediate pending tasks. |
| find_related_decisionsA | Find all decisions that affected a given artifact (either directly produces it or decided_in a milestone that produces it). |
| find_blocked_tasksA | List all tasks that are currently blocked by a given decision node (either directly or transitively). |
| scaffold_templateA | Scaffold standard feature (fdd) or decision (rfc) workflow templates into the project graph. |
| value_metricsA | Retrieve ROI and productivity health metrics for a project (e.g. estimated time and tokens saved, graph health). |
| start_sessionB | Start a new tracked session with agent identity and metadata. |
| end_sessionA | End an active tracked session. |
| list_sessionsB | List active and completed sessions for a project. |
| get_event_logC | Query the project event log with filters. |
| verify_audit_chainA | Mathematically verify the cryptographic SHA-256 event audit chain for non-repudiable tamper resistance. |
| subscribe_context_changesC | Subscribe to Context-Aware Shared Context Store (CA-MCP) state reactor triggers for constant O(1) LLM coordination. |
| traceback_to_nodeA | Reset task execution state back to a prior validated node when downstream test/verification fails. |
| get_cognitive_loadB | Calculate Intrinsic (ICL) and Extraneous (ECL) cognitive load metrics for the active task graph. |
| get_node_historyA | Get the full chronological mutation history of a specific node. |
| undo_lastB | Revert the last recorded mutation for a specific node. |
| save_snapshotA | Save a persistent context snapshot of the current graph state. |
| list_snapshotsA | List saved snapshots for the project. |
| diff_snapshotsA | Compare two snapshots and return semantic node/edge changes. |
| export_trajectoriesA | Export event transition logs in JSONL format for fine-tuning models. |
| batch_updateA | Update the status, metadata, or tags of multiple nodes in a single atomic transaction. Max 100 IDs. |
| next_tasksA | Get the next unblocked runnable tasks, ordered by blocking impact and age. |
| what_changedA | Retrieve a structured diff of all graph changes since a timestamp or session start. |
| get_stale_nodesA | Find nodes of a given status/type that have not been updated for a specified duration. |
| validate_graphA | Check the graph for logical issues (blocked done tasks, circular dependencies, empty milestones, orphan nodes, dangling edges). |
| prune_eventsA | Prune old event log entries older than a specified duration, preserving the latest event for each entity. |
| add_noteA | Attach a quick developer note or observation to a node or the project. |
| bootstrap_sessionA | Single-turn session initialization combining start_session, context snapshot, and next unblocked tasks. |
| complete_taskA | Single-turn task completion: updates task status to done, optionally creates an artifact node, and links them via a produces relationship. |
| batch_create_nodesA | Atomically create multiple nodes in a single transaction with FTS5 search index synchronization. |
| batch_add_edgesA | Atomically add multiple edges with cycle detection and complete transaction rollback on failure. |
| ingest_specA | Parse and ingest a Markdown PRD, OpenSpec, or Gherkin BDD specification file into graph nodes. |
| export_specA | Export a graph-managed specification node and child requirements back to clean Markdown or Gherkin text. |
| get_spec_complianceB | Calculate real-time Spec Compliance matrix, requirement coverage ratio, and unfulfilled criteria. |
| scaffold_specA | Scaffold a standard feature specification template in .specs/ and ingest it into memory. |
| verify_requirementA | Mark an acceptance criterion as verified, failing, or skipped, optionally linking a test observation. |
| link_visual_stateA | Link a task or artifact to a visual memory state ID via renders_state, blocked_by_visual_state, or verifies_visual_state edge. |
| export_joint_trajectoriesA | Export unified, interleaved event and visual observation trajectories correlated by session ID for agent training. |
| get_synergy_metricsB | Get combined dual-memory metrics: token savings, UI task verification ratio, and visual blocker health. |
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 | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/putervision/state-memory-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server