Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
STATE_MEMORY_MCP_DIRNoAbsolute path to directory where database files are stored..state-memory-mcp/
STATE_MEMORY_WAL_MODENoSQLite journal mode (WAL, DELETE, TRUNCATE, PERSIST, MEMORY, OFF).WAL
ALLOW_PRIVATE_WEBHOOKSNoAlias flag for private network webhook dispatch approval.false
STATE_MEMORY_ADMIN_KEYNoSecret token required to execute administrative operations like prune_events.undefined
STATE_MEMORY_READ_ONLYNoForces server into read-only access mode (true/false).false
STATE_MEMORY_ADMIN_MODENoEnables administrative mode globally (true/false).false
STATE_MEMORY_AUDIT_ONLYNoForces server into audit-only access mode (true/false).false
STATE_MEMORY_MCP_PROJECTNoActive project slug identifier override.Auto-resolved from project directory
STATE_MEMORY_WEBHOOK_URLNoWebhook HTTP POST endpoint for real-time state change notifications.undefined
STATE_MEMORY_BUSY_TIMEOUTNoSQLite database lock busy timeout in milliseconds.5000
STATE_MEMORY_MAX_DB_BYTESNoMaximum database size safety limit in bytes before rejecting writes.5368709120
STATE_MEMORY_STRICT_AUDITNoEnforces strict cryptographic event log verification.false
STATE_MEMORY_MCP_LOG_LEVELNoLogging verbosity on stderr (debug, info, warn, error).info
STATE_MEMORY_ENCRYPTION_KEYNoHex or string key for AES-256-GCM metadata payload encryption at rest.undefined
STATE_MEMORY_WEBHOOK_SECRETNoSecret token sent as Authorization: Bearer <secret> in webhook headers.undefined
STATE_MEMORY_WEBHOOK_TIMEOUTNoWebhook HTTP POST timeout in milliseconds.5000
STATE_MEMORY_MCP_DEFAULT_BRANCHNoFallback branch name if Git cannot be queried on startup.main
STATE_MEMORY_CYCLE_DETECTION_MODENoGraph cycle detection policy (strict or best_effort).strict
STATE_MEMORY_ALLOW_PRIVATE_WEBHOOKSNoAllows 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

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
manage_nodesA

Manage graph nodes in the state graph (actions: create, update, get, remove, list, search, batch_create, batch_update, add_note). Use manage_nodes instead of manage_tasks when operating on general node types (decisions, artifacts, plans, milestones, blockers) rather than runnable task workflow states.

Returns node object, edge connections, batch results, or search matches.

manage_edgesA

Manage typed graph relationships between nodes (actions: add, remove, batch_add, link_visual). Use manage_edges instead of manage_nodes when creating or modifying relationships between existing entities rather than entity data itself.

Returns created edge record, batch count, or visual link confirmation.

manage_sessionsA

Manage agent tracking sessions and multi-turn workflow attribution (actions: start, end, list, bootstrap). Use manage_sessions instead of manage_tasks when establishing agent session boundaries and tracking multi-turn workflows rather than individual work items.

Returns session record, bootstrap context snapshot, or active session listing.

manage_tasksA

Task prioritization, workflow execution, blockers, and stale task management (actions: next, complete, find_blocked, find_stale, find_blockers, find_similar_blockers, auto_prune). Use manage_tasks instead of query_graph when querying runnable tasks by priority order or resolving execution blockers.

Returns prioritized runnable tasks, blocker hierarchy, similar resolved blockers, or completion confirmation.

manage_snapshotsA

State checkpointing, time travel, diffing, and undo operations (actions: save, list, diff, get_state, revert, undo, get_history). Use manage_snapshots instead of manage_database when reverting state graph mutations or comparing checkpoints rather than physical database file maintenance.

Returns snapshot record, state graph diff, historical graph state, or node audit history.

manage_specsA

Spec-Driven Development (SDD) lifecycle and workflow template generation (actions: scaffold, ingest, export, compliance, verify, decompose_feature, template). Use manage_specs instead of manage_nodes when authoring, ingesting, or verifying formal SDD specifications against acceptance criteria.

Returns specification AST, compliance matrix, verification verdict, or decomposed feature plan.

manage_databaseA

Physical SQLite database maintenance, backups, integrity checks, and Git VCS state sync (actions: backup, restore, audit, merge, branch_diff, branch_merge). Use manage_database instead of manage_snapshots when managing physical SQLite files, cross-branch merges, or database corruption audits.

Returns database backup path, foreign key integrity report, branch merge conflict report, or diff.

manage_dataA

Export and import graph structures, issue tracker items, fine-tuning trajectories, and multimodal synergy metrics (actions: export_graph, export_issues, export_trajectories, export_joint_trajectories, export_synergy_metrics, from_tick, import_graph, import_issues, import_spec). Use manage_data instead of query_graph when bulk-transferring graph data or generating AI training datasets.

Returns serialized graph payload, trajectory dataset, synergy metrics, or import statistics.

query_graphA

Query graph topology, neighborhoods, dependency paths, safe read-only SQL queries, and compact System One task slices (actions: subgraph, trace, raw, natural_language, compact_slice). Use query_graph instead of get_analytics when exploring graph topology and path traversals rather than aggregated numerical metrics.

Returns subgraph nodes and edges, upstream/downstream trace path, raw SQL rows, or compact task slice.

get_analyticsA

Compute workflow metrics, velocity, burndown, cognitive load, decision lineages, and contradiction audits (actions: summary, velocity, burndown, value_metrics, cognitive_load, critical_path, context_snapshot, active_context, decision_trail, find_related_decisions, contradictions). Use get_analytics instead of query_graph when calculating high-level progress statistics, ROI metrics, or auditing decision conflicts.

Returns summary dashboard, velocity charts, burndown series, cognitive load metrics, critical path DAG, or contradiction reports.

get_eventsA

Inspect the append-only event audit ledger, query structured changesets, and generate session post-mortems (actions: log, changelog, post_mortem). Use get_events instead of manage_snapshots when examining the granular chronological sequence of mutations rather than restoring state checkpoints.

Returns chronological event array, structured changeset diff, or session post-mortem markdown report.

run_diagnosticsA

Run graph sanity checks, health diagnostics, reference validation, audit chain verification, and storage maintenance (actions: validate, doctor, check_refs, audit_chain, compact, archive, prune_events, version, dedupe). Use run_diagnostics instead of get_analytics when performing database repair, AST reference auto-healing, or verifying SHA-256 event hash chains.

Returns validation diagnostics, health report, broken reference repair log, Merkle chain audit, or maintenance stats.

use_blackboardA

Multi-agent shared blackboard for asynchronous coordination and mutex leases (actions: get, set, delete, lease, list, post, read). Use use_blackboard instead of manage_nodes when exchanging transient inter-agent messages or mutex resource leases rather than recording persistent graph knowledge.

Returns blackboard message payload, lease acquisition status, active topic list, or deletion confirmation.

Prompts

Interactive templates invoked by user choice

NameDescription
review-decisionsReview accepted design decisions and check for contradictions
triage-blockersReview and triage active blockers across the dependency graph

Resources

Contextual data attached and managed by the client

NameDescription
state-healthServer health status, version, and timestamp
docs-manage_nodesComplete parameter schema and documentation for manage_nodes
docs-manage_edgesComplete parameter schema and documentation for manage_edges
docs-manage_sessionsComplete parameter schema and documentation for manage_sessions
docs-manage_tasksComplete parameter schema and documentation for manage_tasks
docs-manage_snapshotsComplete parameter schema and documentation for manage_snapshots
docs-manage_specsComplete parameter schema and documentation for manage_specs
docs-manage_databaseComplete parameter schema and documentation for manage_database
docs-manage_dataComplete parameter schema and documentation for manage_data
docs-query_graphComplete parameter schema and documentation for query_graph
docs-get_analyticsComplete parameter schema and documentation for get_analytics
docs-get_eventsComplete parameter schema and documentation for get_events
docs-run_diagnosticsComplete parameter schema and documentation for run_diagnostics
docs-use_blackboardComplete parameter schema and documentation for use_blackboard

TDQS

A3.7/5.0

Scored across 13 tools

Disambiguation3/5

The descriptions are unusually thorough with explicit 'use X instead of Y' guidance, which genuinely helps separate tools like manage_nodes vs manage_edges vs use_blackboard and manage_snapshots vs manage_database vs get_events. However, the underlying domain heavily overlaps: nodes/edges/specs/blackboard all manipulate graph-like entities, and query_graph/get_analytics/run_diagnostics all operate on the same graph for read, aggregate, and maintenance purposes. Boundaries are clarified by prose rather than being intrinsically clean.

Naming Consistency3/5

Most tools use a manage_* pattern (manage_data, manage_nodes, manage_edges, manage_sessions, manage_tasks, manage_snapshots, manage_specs, manage_database), which is consistent. But the remaining tools break the pattern with distinct verbs (query_graph, get_analytics, get_events, run_diagnostics, use_blackboard), producing mixed conventions. It remains readable, but there is no single predictable verb_noun scheme.

Tool Count4/5

13 tools is within the well-scoped range and appropriate for a state/memory graph server covering graph, tasks, sessions, specs, analytics, events, and diagnostics. The design consolidates many operations as actions within each tool rather than exploding the tool count, keeping the surface manageable. Slightly heavy given the breadth, but reasonable.

Completeness4/5

Coverage is broad: node/edge CRUD, task workflow, sessions, snapshots/time-travel, specs, database maintenance, graph queries, analytics, event ledger, diagnostics, and multi-agent blackboard. Most lifecycle operations (create, update, get, list, remove, batch) appear across the mutation tools. Minor gaps exist, such as bulk-delete actions being less explicit than bulk-create.

Maintenance

ActivityActive
ResponsivenessNo issues