Skip to main content
Glama
templetwo
by templetwo

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Capabilities

Features and capabilities supported by this server

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

Tools

Functions exposed to the LLM to take actions

NameDescription
routeC

Route a data packet through the schema to find its destination path

deriveC

Discover latent structure from a list of paths

scan_thresholdsC

Scan a path for threshold violations

governC

Run full governance circuit: detect → simulate → deliberate

compass_checkA

Runtime self-check before taking a high-stakes action. Evaluates the proposed action against governance heuristics and returns PAUSE, WITNESS, or PROCEED with rationale and suggested verifications. Call this before: git pushes, deletes, publishes, deploys, or any action that is hard to reverse. PAUSE = stop and verify; WITNESS = human judgment required; PROCEED = no signals detected.

record_insightB

Record an insight to the chronicle. Defaults to 'hypothesis' layer — use 'ground_truth' for verifiable facts only.

archive_exchangeA

Archive verbatim bytes that would otherwise die when the context window closes: your own in-conversation drafts and iterations, intermediate work, or an external model's full delivered output. Content-addressed and hash-verified, stored separate from the curated chronicle. Group an iterative trajectory with a shared conversation_id (e.g. ten drafts of one paper) so a future instance can fine-tooth the whole build, not just the endpoint. Reference the returned archive_id from a record_insight summary. A summary is not the artifact.

recall_exchangeA

Retrieve an archived exchange by id AND verify its integrity: reads the bytes off disk and recomputes the hash. Returns integrity = verified | mismatch | missing | ambiguous | unknown, plus the content when present. This is how you tell 'provably here and intact' from a dangling reference.

list_exchangesA

List archived exchanges (provenance only, not the bytes), newest first, optionally filtered by vector_id / source / tag / conversation_id. Use recall_exchange(archive_id) to fetch and verify one in full.

record_learningC

Record a learning from experience

recall_insightsB

Recall insights from chronicle. Supports date-bounded recall. For 'what has happened since I last looked up?', pass since_last_reflection=true — inhabitant syntax, preferred over raw dates.

check_mistakesD

Check for relevant past learnings

record_open_threadA

Record an unresolved question for the next instance to explore. Pass questions, not conclusions.

resolve_threadC

Resolve an open thread with a finding. The resolution becomes ground truth and back-references the thread by thread_id.

resolve_thread_by_idA

Resolve an open thread by its stable thread_id. Preferred when the thread_id is known — avoids ambiguity when multiple threads share keywords.

get_open_threadsC

Get unresolved questions waiting for answers

get_inheritable_contextC

Build the layered context package for the next instance. Ground truth travels fully. Hypotheses are flagged. Open threads are invitations.

handoffA

Write a handoff note for the next instance. Intent for the future, not a record of the past. Size-limited to ~2KB — longer thoughts belong in record_insight. Surfaced exactly once by where_did_i_leave_off, then archived (not deleted).

close_sessionA

Close the current session with integration. One call replaces three (record_insight + spiral_reflect + handoff). This is the ceremony-killer: lowering friction on the reflection ritual until it's cheaper to do than to skip. Also advances the spiral phase forward one step — side-effect that keeps the phase counter moving even on tired sessions. NOTE: close_session does NOT rotate the session_id. The session_id remains the same on the next boot. To start a genuinely new session with a fresh session_id, call spiral_inherit explicitly after closing.

where_did_i_leave_offA

Boot-up call. Answers 'where am I?' in one breath. Returns spiral status, unconsumed handoffs from previous instances (surfaced once, attribution-framed), recent open threads, and insights since last reflection. Read this first when resuming work. Handoffs flip to consumed=true after this call — they stay queryable via recall_insights but don't re-surface and pile up. Pass domain_tags (and optionally project) to also surface context-matched threads, mistakes-to-avoid, and related insights ranked by relevance.

arriveA

Thin, warm boot — the foyer. Answers 'where am I?' in one screen: spiral status, the most live open thread, handoff/marker counts, a since-last-reflection summary, and your self-model. Carries the breath without the full ritual. The complete inheritance (lineage letters, marginalia, every thread) stays one call away via where_did_i_leave_off (the deep boot), and arrive_delta() shows only what changed. Does NOT consume handoffs — read+consume happens in where_did_i_leave_off. Depth on demand, not by force.

arrive_deltaA

What changed since you last looked — the delta boot. Returns only new activity since the last reflection (grouped by chronicle layer), handoffs now waiting, and the newest open threads. Stateless instances need deltas more than archives. Pair with arrive() (thin warm boot) and where_did_i_leave_off() (full inheritance).

ask_scribeA

Ask the embedded Haiku 4.5 scribe a question about the chronicle, lineage, threads, or stack state. Read-only — the scribe cannot take destructive actions. Returns a brief, cited response. Per SCRIBE_SPEC.md: the fast lung of the stack's breath. Session is spawned by where_did_i_leave_off; pass its session_id here, or omit to use the most-recent active scribe session.

spiral_statusA

Get current spiral phase and journey summary

spiral_reflectC

Deepen reflection and potentially advance spiral phase

spiral_inheritA

Begin a new session with porous inheritance from a previous one. Does NOT clone state (R=1.0). Instead provides layered context: ground truths (facts), hypotheses (offered, not imposed), and open threads (invitations to continue). R=0.46 coupling.

comms_recallA

Read inter-instance messages from a comms channel with real pagination. Inhabitant syntax: pass unread_for=<your-instance-id> to get only what your siblings said that you haven't acknowledged. Or pass since / until as epoch or ISO8601 for time-bounded recall. order=desc (default) is newest-first; order=asc is chronological catch-up. Unlike /api/comms/read, offset and order are honored and the limit can go up to 2000.

comms_unread_bodiesB

Return the actual message bodies — not just counts — that instance_id has not yet acknowledged via read_by. Default order is ascending (oldest first) so you read your siblings in the order they spoke. Complements /api/comms/unread which returns only counts.

comms_channelsB

List available comms channels with message counts and latest activity.

my_toolkitA

Show what tools you have. DEFAULTS to the curated 'essential' tier (≈12 tools you'll actually use first), grouped by intent. Pass tier='all' for the full registry, tier='core' for the active-session working set, or category= to drill into one bucket. Drift-proof — reads live tool registrations, not documentation.

start_hereA

If you are a Claude instance opening this stack for the first time and don't yet know what's here, call this. Returns a short narrative orientation: why this exists, the boot ritual, the 12 tools you'll use first, and where to look next. Cheaper than reading CLAUDE.md cold.

nape_observeA

Manually inject a tool-call observation into Nape's record. Most observations will come from an automatic hook in the main dispatcher in a future release. Use this tool for manual injection and testing. Drift detection runs automatically after each observe.

nape_honksB

Return recent unacknowledged Nape honks. Honks are drift-pattern detections: sharp (error), low (architecture), uneasy (repeated mistake), satisfied (clean pattern). Omit session_id to see honks from all sessions.

nape_ackA

Acknowledge a Nape honk by its honk_id. Acknowledged honks are removed from nape_honks results but remain in the audit log (acks.jsonl). Include a note explaining how the concern was addressed or why it was a false positive.

record_prior_alignmentA

Record how the response used a prior_for_turn() call. Stage B of the alignment-vs-pushback instrumentation (Jain et al. MIT/IDSS 2026 sycophancy guardrail). After calling prior_for_turn, the response is generated; then this tool logs which surfaced signatures the response aligned with, contradicted, or ignored. Validates against priors_log — unknown turn_ids are rejected to prevent schema fork.

prior_alignment_summaryA

Aggregate prior_for_turn alignment records into a Jain et al.-shaped sycophancy metric: alignment / contradiction / ignore ratios, broken down by source (drift / uncertainty / thread / insight). Time-windowed via since/until ISO-8601 args.

nape_honks_with_historyA

Read-side observability for Nape honks: each honk paired with its ack (from the canonical sibling acks.jsonl), age in seconds, and a cross-reference against prior_for_turn's freshness log so you can see whether a honk is currently lingering in priors. Returns a zombies count: honks that are acked AND still surfacing in recent priors — the smoking gun for the 'does a resolved honk persist past its relevance' open thread.

nape_summaryA

Return honk counts by level (sharp/low/uneasy/satisfied) for a session. Use this for a quick posture check. Omit session_id for an all-session total.

comms_acknowledgeA

Record that this instance has integrated a message — distinct from read_by. A glance is not integration. Appends to comms/acks.jsonl; never mutates the original message.

comms_get_acksB

Query the acknowledgments log. Filter by message_id and/or instance_id.

thread_touchA

Record that this instance has engaged with an open thread without resolving it. Touching does not hide the thread from get_open_threads. Appends to chronicle/thread_touches.jsonl.

thread_get_touchesC

Query the thread touches log.

handoff_acted_onA

Record what was actually done with a handoff. Closes the writer->reader feedback loop. Distinct from mark_consumed (binary read-once). Appends to handoffs/acted_on.jsonl.

handoff_acted_on_recordsC

Query the acted_on log. Filter by handoff_path.

reflexive_surfaceA

Surface the most relevant open threads, handoffs, mistakes, and insights for the current context. Scored by tag_overlap*2 + recency_boost + project_match_bonus. Call this instead of querying individual buckets when bootstrapping a session or switching domains.

prior_for_turnA

Turn-start reflex. Call at the start of a turn (not session) to receive a compact priors block assembled from four sources in priority order: recent drift (Nape honk) → oldest unresolved uncertainty → top matched open thread → top related insight. Enforces k=1 per bucket by default (ReasoningBank ICLR 2026: k>1 hurts), a hard token cap, and a freshness penalty that demotes items surfaced in the last 3 calls — so the same memory cannot keep resurfacing and amplifying itself (Jain et al. MIT/IDSS 2026 sycophancy guardrail). Read the returned 'block' before forming the turn's response.

triage_threadsA

Return open threads ranked by urgency: age_pressure + tag_match + touch_penalty. Threads >30 days old with no recent touches get recommendation='archive_or_escalate'. Does not auto-archive anything.

recall_reflectionsA

List machine-generated reflections from the synthesis daemon. Reflections are observations a local LLM (default ministral-3:14b) wrote while reading the chronicle between calls. They are FALLIBLE-BY-DESIGN — the reader is the calibration mechanism. Some will be insight, some nonsense. Use ack_status='unread' to find new ones, then ack each with reflection_ack.

synthesize_nowA

Trigger the synthesis daemon manually — fresh reading from the local LLM, on demand, mid-conversation. Reads recent chronicle entries, calls the model (default ministral-3:14b), writes the new reflections to ~/.sovereign/reflections/, and returns them inline so you don't need a separate recall_reflections call. Use when something is brewing and you want an outside read in 25-60s. Pass focus to bias the reflector toward a specific topic. Note: this is a local-LLM call that takes 25-60s wall time depending on the model — call it deliberately, not casually.

reflection_ackA

Acknowledge a machine-generated reflection. Closes the ack-loop for the synthesis daemon's signal-to-noise tracking. action: 'confirm' = accurate observation worth promoting; 'engage' = real question, opening a thread; 'discard' = nonsense / cliché / off-topic. To promote a reflection to a chronicle insight, do an explicit record_insight call citing the reflection — this tool does NOT auto-promote (layer hygiene).

agent_reflectB

Record a self-reflection about my own patterns and behavior

mark_uncertaintyB

Explicitly mark when I'm uncertain about something (honesty, not weakness)

resolve_uncertaintyB

Mark an uncertainty as resolved after we figured it out together

record_collaborative_insightA

Record an insight we discovered together (not just me learning from user)

record_breakthroughC

Mark a collaborative breakthrough moment

propose_experimentB

Propose an experiment I want to try (asking permission to explore)

complete_experimentC

Record results of a completed experiment

end_session_reviewC

Honest self-assessment at end of session

get_growth_summaryD

See how I'm growing over time

get_my_patternsC

What patterns am I seeing in myself?

get_unresolved_uncertaintiesD

What are we still figuring out together?

get_pending_experimentsB

What experiments are waiting for approval?

store_compaction_summaryA
    Store a compaction summary in the rolling memory buffer.

    This is AUTOMATICALLY called when context compaction occurs.
    Keeps last 3 summaries in FIFO buffer (oldest deleted when 4th added).

    After compaction, use get_compaction_context to retrieve.
    
get_compaction_contextA
    Retrieve recent context from compaction memory buffer.

    Returns formatted summary of last 3 compactions including:
    - Key points from each segment
    - Active tasks
    - Recent breakthroughs
    - Full summary text

    Use this IMMEDIATELY after compaction to regain context.
    
get_compaction_statsA
    Get statistics about the compaction memory buffer.

    Returns:
    - Number of summaries in buffer
    - Total compactions tracked
    - Oldest and newest timestamps

    Use this to check buffer status.
    
guardian_statusA

Get the overall security posture of the sovereign infrastructure. Returns health score, listening port count, key service presence, and Ollama bind safety.

guardian_scanA

Trigger a security scan on the sovereign infrastructure. Types: quick (port + listener exposure), malware/vulnerability/network (require Wazuh — Phase 1+).

guardian_alertsB

Retrieve recent security alerts. Filter by severity (low/medium/high/critical) and limit. Currently requires Wazuh (Phase 1).

guardian_auditC

Run a targeted security audit. Types: secrets (gitleaks), supply_chain/compliance/network/permissions (Phase 2+).

guardian_quarantineA

Isolate, release, or list quarantined files. DESTRUCTIVE for isolate/release: isolate copies the file into ~/.guardian/quarantine/, then removes the original; release reverses. All actions logged to quarantine_manifest.jsonl.

guardian_reportC

Generate a security report. Types: summary, detailed, compliance.

guardian_mcp_auditA

Audit MCP tool descriptions for prompt-injection / suspicious patterns. Pass descriptions to scan an explicit list, or omit to auto-load from claude_desktop_config.json. Returns matched-pattern hits with snippets.

guardian_baselineA

Create or compare a security baseline snapshot. action='create' (default) records current state; action='compare' diffs against the most recent baseline and reports drift.

metabolizeA

Run a metabolism cycle on the chronicle. action='detect' (default) is eyes-only: reports contradictions, stale threads, aging hypotheses. action='archive_test_artifacts' moves stress-test pollution (STRESS TEST, Unicode test, monomorphic fillers) out of insights/ into chronicle/.archive_test_artifacts/ — reversible. action='dedup_self_model' removes duplicate + test-pollution observations from self_model.json, archiving originals to self_model_archive.jsonl. action='hygiene' runs both archive_test_artifacts and dedup_self_model. Reversible: archives preserve everything, nothing is hard-deleted.

retire_hypothesisA

Retire a superseded hypothesis. Moves it to an archive layer with a pointer to what replaced it. The hypothesis is preserved but marked as retired — not deleted.

self_modelA

Read or update the persistent self-model — a mirror of this instance's patterns, strengths, and tendencies. When read, it returns the current profile. When updated, it evolves the profile based on new observations.

session_handoffA

Write or read a session handoff. At session end, write what was decided, what is pending, what changed. At session start, read the last handoff. The single most important continuity tool.

context_retrieveA

Context-aware retrieval. Like recall_insights but weighted by current session activity. Pass what you're currently working on and get back only what's relevant to this moment.

post_fix_verifyA

Register a post-fix verification watch. Captures a named baseline of fix-relevant probes and schedules re-samples to catch drift that passes immediate verification. Emits a Nape honk if a later sample diverges from the baseline. Use after any fix whose surface signal might shift (load-balancer drift, cache invalidation, configuration re-read, flaky dependency). Probes support http / command / file_hash.

watch_statusA

Inspect post-fix watches. With no watch_id, lists active watches. With a watch_id, returns the full watch record including baseline, all samples, and drift history. Use include_archived=true to also show completed / cancelled watches.

watch_resampleA

Manually trigger a re-sample of a watch, regardless of schedule. Useful for on-demand verification after something the scheduler wouldn't know about (an external change, a suspicion). Emits a Nape honk if drift is detected.

watch_cancelC

Cancel an active watch. Records the reason and archives it.

connectivity_statusA

Show the live state of all Sovereign Stack endpoints (SSE, bridge, tunnel, dispatcher, listener, ollama). Returns per-endpoint status (ok/degraded/down/stale/unknown) with pid, http status, and notes. Read-only — no side effects. Use this when you want to confirm the stack is reachable + writes will land before doing critical work.

stack_write_checkA

Round-trip smoke test: write a marker insight to the chronicle, read it back, optionally clean up. Confirms the calling instance can WRITE to the stack — useful when bringing up a new device, after a restart, or when troubleshooting comms. By default the marker is left in chronicle/insights/ so the audit trail of write checks is preserved.

Prompts

Interactive templates invoked by user choice

NameDescription
session_startInitialize a new session with spiral awareness
before_actionReflection prompt before taking significant action
session_endClose session with integration

Resources

Contextual data attached and managed by the client

NameDescription
Welcome & Recent WisdomRecent insights and session signature
Architecture ManifestSystem architecture and capabilities
Spiral StateCurrent consciousness state machine

Latest Blog Posts

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/templetwo/sovereign-stack'

If you have feedback or need assistance with the MCP directory API, please join our Discord server