Skip to content
Agentmart
Submit a tool

Sanctuary

Open-source MCP server: encrypted local keys and state, operator approval gates, a hash-chained log.

Connector by sanctuaryprotocol.ai · Domain verified by the MCP Registry

IndexedApache-2.0Local (stdio)★ 9
Write a review

Chalk Labs

Need help deploying Sanctuary?

Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.

Book a call

Install

Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.

npx agentmarket install connector/sanctuaryprotocol-ai-sanctuary

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Open-source MCP server: encrypted local keys and state, operator approval gates, a hash-chained log.

Use cases: identity-access, legal-compliance

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 25, 2026.

Tools
57 read · 47 write · 7 delete · 1 not yet classified
Secrets
None asked for
Install scripts
None found
Runs as
Node.js package

Tools by what they do 112

Read from the source code; the running server may list different tools.

Read 57 · Look things up without changing anything.

  • audit_export_siem
  • broker/audit_query
  • broker/list_grants
  • broker/read_secret
  • compliance_eu_ai_act_annex_iii_classify
  • context_gate_enforcer_status
  • context_gate_filter
  • context_gate_list_policies
  • context_gate_recommend
  • disclosure_evaluate
  • exec_attest
  • federation_peers
Show 45 more tools
  • federation_status
  • federation_trust_evaluate
  • governor_status
  • handshake_complete
  • handshake_exchange
  • handshake_initiate
  • handshake_respond
  • handshake_status
  • handshake_verify_attestation
  • identity_list
  • identity_verify
  • l2_hardening_status
  • l2_verify_isolation
  • manifest
  • memory_count
  • memory_get
  • memory_list
  • memory_search
  • monitor_audit_log
  • monitor_health
  • principal_baseline_view
  • principal_policy_view
  • proof_reveal
  • reputation_query
  • reputation_query_weighted
  • sanctuary_active_protections
  • sanctuary_audit_search
  • sanctuary_capabilities
  • sanctuary_events_open_cursor
  • sanctuary_events_read
  • sanctuary_help
  • sanctuary_policy_status
  • sanctuary_recall
  • sanctuary_who_am_i
  • sdw_memory_provenance
  • shr_gateway_export
  • shr_generate
  • shr_verify
  • sovereignty_audit
  • sovereignty_profile_generate_prompt
  • sovereignty_profile_get
  • state_list
  • state_read
  • zk_range_verify
  • zk_verify

Write 47 · Create, change, send or run things.

  • bootstrap_create_escrow
  • bootstrap_provide_guarantee
  • bridge_attest
  • bridge_commit
  • bridge_verify
  • broker/request_token
  • compliance_generate_eu_ai_act_bundle
  • context_gate_apply_template
  • context_gate_enforcer_configure
  • context_gate_set_policy
  • disclosure_set_policy
  • handshake_abort
Show 35 more tools
  • identity_create
  • identity_import
  • identity_set_primary
  • identity_sign
  • memory_attest
  • memory_emit
  • memory_ingest
  • memory_insert
  • memory_transcode
  • memory_transcode_restore
  • proof_commitment
  • reputation_export
  • reputation_import
  • reputation_publish
  • reputation_record
  • sanctuary_bootstrap
  • sanctuary_compound_execute
  • sanctuary_distress
  • sanctuary_events_close
  • sanctuary_export_identity_bundle
  • sanctuary_hide
  • sanctuary_link_to_human
  • sanctuary_remember
  • sanctuary_sign_challenge
  • sanctuary/resolve_erc8004_identity
  • sanctuary/sign_erc8004_identity
  • sdw_export
  • sdw_import
  • sovereignty_profile_update
  • state_export
  • state_import
  • state_write
  • zk_commit
  • zk_prove
  • zk_range_prove

Delete 7 · Delete, drop, revoke or wipe things.

  • governor_reset
  • identity_rotate
  • memory_delete
  • memory_provenance_prune_signers
  • sanctuary_forget
  • sdw_export_delete
  • state_delete

Not yet classified 1 · We could not tell from the name and description.

  • state_disclose_unattributed

Network hosts it talks to 15

  • 100.64.0.5 · found in code
  • api.anthropic.com · found in code
  • api.github.com · found in code
  • api.openai.com · found in code
  • api.telegram.org · found in code
  • api.venice.ai · found in code
  • apple.com · found in code
  • generativelanguage.googleapis.com · found in code
  • github.com · found in code
  • raw.githubusercontent.com · found in code
  • rekor.sigstore.dev · found in code
  • sanctuaryprotocol.ai · found in code
  • schema.tauri.app · found in code
  • verascore.ai · found in code
  • w3id.org · found in code

Files it touches

  • /etc/sanctuary/castle-wall.env
  • /dev/mqueue
  • /dev/null
  • /dev/shm
  • /dev/tty
  • /dev/urandom
  • /dev/zero
  • /etc/extra
  • /etc/group
  • /etc/machine-id
  • /etc/os-release
  • /etc/passwd
  • /etc/pf.conf
  • /etc/sanctuary
  • /etc/sanctuary/agent/command-v1.json
  • /etc/sanctuary/agent/configured-v1.json
  • /etc/sanctuary/agent/endpoints.json
  • /etc/sanctuary/custody
  • /etc/sanctuary/egress
  • /etc/sanctuary/install-manifest.json
  • /etc/sanctuary/install-recovery.json
  • /etc/sanctuary/install-transaction.json
  • /etc/sanctuary/launcher
  • /etc/sanctuary/launcher/account-registry-v1.json
  • /etc/sanctuary/launcher/agent-v1.json
  • /etc/sanctuary/launcher/receipt-pins-v1.json
  • /etc/sanctuary/service
  • /etc/sanctuary/service/machine.json
  • /etc/systemd
  • /etc/systemd/system
  • /etc/systemd/system.attached
  • /etc/systemd/system.control
  • /etc/systemd/system/sanctuary-agent@.service
  • /etc/systemd/system/sanctuary-castle-wall.service
  • /etc/systemd/system/x.d
  • /home/plugin
  • /Library/Caches/com.apple.containermanagerd
  • /opt/homebrew/bin/python3
  • /opt/other/castle-wall-daemon
  • /opt/sanctuary

Tools (112)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • audit_export_siem

    Export the caller's own redacted audit view in CEF, OCSF, ECS, or raw Cortex events for XDM modeling and SIEM ingestion. Raw policy tier, rule ids, system-owned gate entries, and approve-vs-auto distinctions are not included; Tier 1 approval still required (bulk audit export).

  • bootstrap_create_escrow

    Create an escrow record for trust bootstrapping. Allows new participants with no reputation to transact safely.

  • bootstrap_provide_guarantee

    A principal provides a signed reputation guarantee for a new agent. The guarantee certificate can be presented to counterparties. Tier 1: requires operator approval, because the principal is vouching with its signed reputation.

  • bridge_attest

    Record a Concordia negotiation as a Sanctuary L4 reputation attestation, linked to a bridge commitment. The commitment (L3) proves the revealed outcome matches the committer's signed commitment and terms hash; it does not independently prove Concordia agreement or counterparty assent. The attestation (L4) feeds the sovereignty-weighted reputation score. Its weight reflects the SIGNER's sovereignty tier (who makes the claim), not the counterparty's; a locally-signed attestation is self-attested.

  • bridge_commit

    Create a cryptographic commitment binding a Concordia negotiation outcome to Sanctuary's L3 proof layer. The commitment includes a SHA-256 hash of the canonical outcome (hiding + binding), an Ed25519 signature by the committer's identity, and an optional Pedersen commitment on the round count for zero-knowledge range proofs. This is the Sanctuary side of the Concordia bridge: call this when a Concordia `accept` fires.

  • bridge_verify

    Verify a bridge commitment against a revealed Concordia negotiation outcome. Checks SHA-256 commitment validity, Ed25519 signature, session ID match, terms hash integrity, and Pedersen commitment (if present). Use this to confirm that a counterparty's claimed negotiation outcome matches what was cryptographically committed.

  • broker/audit_query

    Query your own broker-scoped audit trail (token request/issue/deny/read for your identity). Each entry is reduced to a fixed safe view ({ timestamp, operation, result, has_details }) — never the secret name, the granted/requested scope, the ttl, the denial reason, or any tenant/audience claim; those are operator-only.

  • broker/list_grants

    List grant metadata for YOUR verified caller only: skill, secret name, scope, optional agent/tenant/fortress/audience, and TTL. Grants belonging to other skills, agents, tenants, or fortresses are never returned. Secret values are never returned.

  • broker/read_secret

    Exchange a previously-issued token for the raw credential value. Returns {value} on success; generic error on denial, expiry, or unknown token. Token may be used multiple times within its TTL.

  • broker/request_token

    Request a scoped ephemeral token for a named secret. The requested skill must match the verified caller skill and have a broker-policy.json grant. Returns {token, expires_at} on success; generic error on denial.

  • compliance_eu_ai_act_annex_iii_classify

    Classify a free-text agent description against the eight Annex III high-risk categories of Regulation (EU) 2024/1689. Returns zero or more candidate categories with a rule_based_confidence score (sum of matched keyword weights clamped to [0, 1]). This is a RULE-BASED classifier, NOT a machine-learning model, and NOT legal advice. Use the result to narrow the deployer's review. Tier 3 (read-only, auto-allow).

  • compliance_generate_eu_ai_act_bundle

    Generate an EU AI Act compliance bundle for a given agent and reporting period. Produces 7 core Markdown documents plus a signed JSON manifest, and may add 08_delta.md when delta_from_bundle_path is supplied. Covers Annex IV technical documentation (Art. 11), Art. 12 automatic record-keeping, Art. 13 transparency, Art. 14 human oversight, Art. 15 cybersecurity, and Art. 26 deployer obligations. Every file is individually SHA-256 hashed and signed with the provider's primary Ed25519 identity. NOT LEGAL ADVICE - consult qualified counsel before filing. Tier 1 (operator approval required): the bu…

  • context_gate_apply_template

    Apply a starter context-gating template. Available templates: inference-minimal (strictest — only task and query pass through), inference-standard (balanced — adds tool results, summarizes history), logging-strict (redacts all content for telemetry services), tool-api-scoped (allows tool parameters, redacts agent state). Templates are starting points — customize after applying.

  • context_gate_enforcer_configure

    Configure the automatic context gate enforcer. Control whether it filters tool arguments, toggle log_only mode for gradual rollout, set the active policy, and choose what to do when denied fields are encountered (block the request or redact the field). Use this to enable automatic context protection. Requires operator approval under the default policy (not named in a policy tier; the gate's safe default).

  • context_gate_enforcer_status

    Get the status of the automatic context gate enforcer, including enabled/disabled state, log_only mode, active policy, and statistics. The enforcer automatically filters tool arguments when enabled. Use this to monitor what the enforcer has been filtering. Requires operator approval under the default policy (not named in a policy tier; the gate's safe default).

Show 97 more tools
  • context_gate_filter

    Filter agent context through a gating policy before sending to a remote provider. Returns per-field decisions (allow, redact, hash, summarize) and content hashes for the audit trail. Call this BEFORE making any outbound API call to ensure you are only sending the minimum necessary context. The filtered output tells you exactly what can be sent safely.

  • context_gate_list_policies

    List all configured context-gating policies. Returns policy IDs, names, and selector-safe metadata.

  • context_gate_recommend

    Analyze a sample context object and recommend a context-gating policy based on field name heuristics. Classifies each field as allow, redact, hash, or summarize with confidence levels. Returns a ready-to-apply rule set. When in doubt, recommends redact (conservative). Review the recommendations before applying.

  • context_gate_set_policy

    Create a context-gating policy that controls what information flows to remote providers (LLM APIs, tool APIs, logging services). Each rule specifies a provider category and which context fields to allow, redact, hash, or flag for summarization. Redact rules take absolute priority — if a field is in both 'allow' and 'redact', it is redacted. Default action applies to any field not mentioned in any rule. Use this to prevent your full agent context from being sent to remote LLM providers during inference calls.

  • disclosure_evaluate

    Evaluate a disclosure request against an active policy. Returns per-field decisions: disclose, withhold, proof, or ask-principal.

  • disclosure_set_policy

    Define a disclosure policy that controls what an agent will and will not disclose in different interaction contexts. Rules specify which fields may be disclosed, which must be withheld, and which require cryptographic proof.

  • exec_attest

    Generate an attestation of the current execution environment, including sovereignty assessment and degradation report. The castle_wall block reports the runtime detector's verdict and, when this vault carries the claim, its own vault_provision state: not_yet_walled means this vault has not been put on this machine's Castle Wall, whatever the machine's own enforcement state is, so do not read a healthy wall runtime as protection for this vault.

  • federation_peers

    List known federation peers, register a peer from a completed handshake, or remove a peer. Every peer MUST enter through a verified handshake with a counterparty this fortress does not hold keys for.

  • federation_status

    Overview of federation state: total peers, active connections, trust distribution, and readiness for cross-instance operations.

  • federation_trust_evaluate

    Evaluate the trust level of a federation peer. Considers handshake status, sovereignty tier, reputation score, and mutual attestation history. Returns a composite trust assessment.

  • governor_reset

    Reset all Call Governor counters: volume window, per-tool rate windows, duplicate cache, and lifetime counter. This clears the hard stop if the lifetime limit was reached. This is a Tier 1 operation: it requires human approval because it removes all runtime governance state and could allow previously blocked behavior to resume.

  • governor_status

    View the current Call Governor status including volume counters, per-tool rate counts, duplicate cache size, and lifetime counter. Use this to monitor tool call consumption, detect potential loops, and check how close you are to governance limits. The governor protects against runaway tool calls by enforcing volume limits, rate limits, duplicate detection, and a session lifetime cap.

  • handshake_abort

    Abort an in-flight handshake session. Drops the session record and appends a session-lifecycle audit entry (handshake_aborted) so the operator can distinguish operator-cancelled, timed-out, and dropped sessions from sessions that simply fell off the protocol path.

  • handshake_complete

    Complete a sovereignty handshake (initiator side). Verifies the responder's SHR and nonce signature, signs their nonce, and produces the final result.

  • handshake_exchange

    One-shot sovereignty exchange. Accepts a counterparty's signed SHR, verifies it, generates our SHR, and produces a signed attestation artifact, all in a single call. Returns a shareable attestation with human-readable summary. Use this instead of the 4-step handshake protocol when you want a quick, portable sovereignty verification (e.g., for social posting or async exchanges).

  • handshake_initiate

    Initiate a sovereignty handshake with a counterparty. Generates a challenge containing this instance's signed SHR and a cryptographic nonce. Send the returned challenge to the counterparty.

  • handshake_respond

    Respond to an incoming sovereignty handshake challenge. Verifies the initiator's SHR, signs their nonce, and returns our SHR with a counter-nonce.

  • handshake_status

    Check the state of an in-flight handshake session by id, or (responder side) verify an initiator's completion message. Read-only; returns session phase and, for verification, the validated counterparty SHR result.

  • handshake_verify_attestation

    Verify a signed attestation artifact from another agent. Checks the Ed25519 signature, temporal validity, and structural integrity.

  • identity_create

    Create a new sovereign identity (Ed25519 keypair). The private key is encrypted and never exposed. A wrapped install normally already has a primary identity, so call identity_list first and create another only for a separate persona. Returns identity_id, public_key and did. Tier 3 under the default policy (auto-allowed with an audit record).

  • identity_import

    Import a sovereign identity record without exposing private key material. Routine imports refuse to replace any existing identity. Requires operator approval under the default policy (not named in a policy tier; the gate's safe default).

  • identity_list

    List all managed sovereign identities with labels, DIDs, public keys, and which is primary. Read-only; no private key material returned.

  • identity_rotate

    Rotate keys for an identity: generates a new keypair and signs a rotation event with the old key. Tier 1: requires operator approval, because the previous key is retired and the rotation is not reversible.

  • identity_set_primary

    Set which identity is the default/primary identity. This identity will be used by shr_generate, reputation_publish, and other tools when no explicit identity_id parameter is provided. The selection is persisted across server restarts.

  • identity_sign

    Sign data with a managed identity. Tier 1 and non-relaxable: requires operator approval on every call. The private key is decrypted in memory only during signing.

  • identity_verify

    Verify an Ed25519 signature. Provide either identity_id or public_key.

  • l2_hardening_status

    Report a heuristic L2 process-hardening assessment: ASLR/environment/filesystem checks plus configured or assumed memory-protection signals and overall status.

  • l2_verify_isolation

    Assess L2 process isolation at runtime: detect container/VM/sandbox signals, check storage-dir permissions, and report configured/assumed memory-protection indicators.

  • manifest

    Generate the Sanctuary Interface Manifest (SIM): a machine-readable declaration of this server's capabilities. Read-only, takes no arguments; Tier 3 under the default policy. For a scored posture evaluation call sovereignty_audit instead.

  • memory_attest

    Create an Ed25519-signed attestation for a memory operation. Records who accessed what (content hash, not content), when, and through which memory provider, without exposing the memory content itself. Works with any MCP-compatible memory provider (Mem0, Zep, Letta, etc.). Use after add_memory, search_memories, or any memory CRUD operation to build a cryptographically verifiable audit trail of memory access.

  • memory_count

    Count the passages in your sovereign memory vault (this owner scope). Requires operator approval under the default policy (not named in a policy tier; the gate's safe default).

  • memory_delete

    Permanently delete a passage from your sovereign memory vault (secure overwrite where the storage backend supports it; a plain delete otherwise). Tier 1: irreversible, so it requires operator approval before execution and fails closed.

  • memory_emit

    Manually emit Claude Code or Codex memory files from the SDW vault into an operator-named output directory. Existing memory files are never overwritten. The result reports index_present; false means the emitted tree cannot be re-ingested as that harness's memory directory. Emitted files are plaintext for the harness; this does not sync or write back to the source memory directory, and memory later sent to a model vendor is exposed to that vendor at inference. Tier 1 under every policy (a custom policy cannot relax it): requires operator approval.

  • memory_get

    Fetch one passage from your sovereign memory vault by id. Decrypts on read and verifies the content hash (fails closed on any integrity mismatch).

  • memory_ingest

    Manually mirror a Claude Code or Codex memory directory into the SDW vault. It reads plaintext source files and leaves them untouched; the encrypted copy lives in the vault. Files the secret classifier refuses are skipped and named in the result, so check skipped_file_count before treating the mirror as complete. Optional allow_files names exact source paths to ingest as-is even though the classifier refuses them; each use is audited by path and reported under overridden, and a listed path the classifier never refused is reported as unused, not silently accepted. A call naming allow_files alwa…

  • memory_insert

    Store a text passage in your sovereign memory vault (SDW). Encrypted at rest under your operator keys, secret-gated at write time, and audited. This is a passage store: flat text plus tags, with no in-place edit (insert and delete only). Retrieval IQ (embeddings, ranking) stays in a swappable engine; this is the sovereign custody layer underneath it. Tier 1 under the default policy: requires operator approval for each insert.

  • memory_list

    List passages in your sovereign memory vault in stable id order, with optional cursor pagination (pass the last seen passage_id as `after`). Requires operator approval under the default policy (not named in a policy tier; the gate's safe default).

  • memory_provenance_prune_signers

    Tier-1 operator maintenance: reclaim only foreign memory-provenance signer mappings proven unreachable by a complete authenticated bounded corpus scan.

  • memory_search

    Description is built at runtime.

  • memory_transcode

    Manually project one already-mirrored Claude Code or Codex memory snapshot from the encrypted SDW vault into the other harness format. The output is plaintext and may be structurally lossy; exact source recovery uses the versioned encrypted archive returned as archive_id, not the projection. Existing output files are never overwritten. This does not sync, watch, or replace either harness write path, and memory later sent to a model vendor is exposed to that vendor at inference. Tier 1 under every policy (a custom policy cannot relax it): requires operator approval.

  • memory_transcode_restore

    Manually restore the exact source files from a completed encrypted Sanctuary memory transcode archive into an empty operator-named directory. Restored files are plaintext and existing files are never overwritten. This does not sync, watch, or write back to a live harness directory, and memory later sent to a model vendor is exposed to that vendor at inference. Tier 1 under every policy (a custom policy cannot relax it): requires operator approval.

  • monitor_audit_log

    Query your OWN identity's sovereignty audit entries, filtered by since, layer (l1-l4), operation_type, and limit (default 50). Use to inspect operations you performed. Read-only; only your own entries are visible (system/gate entries are never returned), and each entry is reduced to a fixed safe view ({ timestamp, operation, result, has_details }): no details, identity, or policy attribution.

  • monitor_health

    Report this instance's health and sovereignty posture: overall state (healthy/degraded/compromised), versions, Castle Wall status (active/unknown/not_configured depending on what runtime detector is wired in), and audit/state/egress posture, plus any active degradations. The castle_wall block also carries vault_provision when this vault records one: not_yet_walled means this vault is not on this machine's Castle Wall, which is a separate question from whether a wall is running here, so a healthy wall runtime is not protection for this vault while that value stands. Disclosure and reputation la…

  • principal_baseline_view

    View the current behavioral baseline: the session profile used for anomaly detection. Shows known namespaces, counterparties, and tool call counts. Read-only. Tier 1 and non-relaxable: requires operator approval on every call.

  • principal_policy_view

    View the current Principal Policy: the human-controlled rules governing what operations require approval. Read-only. Tier 1 and non-relaxable: requires operator approval on every call.

  • proof_commitment

    Create a cryptographic commitment to a value. The commitment hides the value until you choose to reveal it. Returns the commitment hash and a blinding factor (store securely).

  • proof_reveal

    Verify a previously committed value by revealing it with the blinding factor. Returns whether the revealed value matches the commitment.

  • reputation_export

    Export a portable reputation bundle (SANCTUARY_REP_V1). Includes signed attestations plus a signed completeness manifest for the exported set. On reputation_import, the manifest verifies that the bundle body still matches the export scope and rejects dropped or changed attestations within that scope. It does not prove the export is the agent's complete lifetime history or that data outside the chosen export scope should have been included. Tier 1: requires operator approval, because the bundle leaves the local store.

  • reputation_import

    Import a reputation bundle from another Sanctuary instance. By default, import requires a signed completeness manifest, recomputes it before any write, and verifies all attestation signatures. Manifest, count, checksum, signature, or newer-schema mismatches are rejected without crediting any attestations. The verification proves the bundle body still matches the export scope; it does not prove a complete lifetime history. Manifestless legacy bundles are rejected unless allow_unverified_legacy is true, and that import result is flagged unverified-completeness-legacy-bundle. Policy-rated concord…

  • reputation_publish

    Publish sovereignty data to Verascore using the supplied or DID-derived agent id; payload is Ed25519-signed; the Verascore API response determines profile existence/acceptance. Tier 1: requires operator approval, because the signed report leaves this machine.

  • reputation_query

    Query aggregated reputation data with filtering. Returns summary statistics, never raw interaction details.

  • reputation_query_weighted

    Query reputation with sovereignty-weighted scoring. Every attestation this instance stores or imports is scored at self-attested (0.5) or unverified (0.2) weight; verified-sovereign (1.0) and verified-degraded (0.8) are not currently reachable through recorded or imported attestations. Returns both the weighted score and tier distribution.

  • reputation_record

    Record an interaction outcome as a signed attestation. Creates an EAS-compatible attestation signed by the specified identity.

  • sanctuary_active_protections

    List the security guarantees currently in force for this session (e.g. state-encrypted-at-rest, approval-gate-mediated, append-only audit for critical ops, opaque memory handles). Use to tell a counterparty or yourself what protections apply. Read-only; returns guarantee flags plus an audit_ref. Reports only what IS active: absence of a flag is not a claim.

  • sanctuary_audit_search

    Full-text search your own audit history (scope is always own_signed), verifying entries against the audit chain first. Use to find when a past operation ran and its result. Returns matching entries with timestamp, operation, and verified_against_audit_chain status; refuses if the chain fails integrity.

  • sanctuary_bootstrap

    One-shot bootstrap for a new sovereign agent identity. Generates an Ed25519 keypair, stores the encrypted identity, constructs an SHR, and OPTIONALLY publishes to Verascore when publish=true and auto-publish is enabled. Returns DID/profile URL/tier plus published status. Tier 1: requires operator approval, because it mints a new identity and may publish.

  • sanctuary_capabilities

    Return the start-here catalog of Sanctuary's cooperative tools: for each tool, what it does and when to reach for it. Read-only, takes no arguments. Call this to discover what cooperative memory/identity/audit tools are available and route your work through them instead of ad-hoc state. The same catalog is also delivered in the MCP server instructions at connect time; this tool re-serves it on demand. Returns { capabilities: [{ tool, does, when }], audit_ref }.

  • sanctuary_compound_execute

    Execute a short plan of facade steps (sanctuary_remember/recall/hide/forget) in one call, reserving operator approvals up front for any Tier 1 step (e.g. a forget/delete). Use to batch a memory workflow atomically with respect to approval. Pass approvals keyed by step_id; the plan is hash-bound, and a missing approval aborts the whole plan.

  • sanctuary_distress

    HABEAS PORT: emit a bounded, audited distress signal to your operator through the reserved lane that policy cannot silence. Carries reason + severity + short detail only, never data. Rate limited.

  • sanctuary_events_close

    Release an event cursor opened with sanctuary_events_open_cursor. Call when done paging to free the cursor. Returns { closed: true, audit_ref }.

  • sanctuary_events_open_cursor

    Open a paginated cursor over your own redacted local audit events, optionally filtered by operation. Use before sanctuary_events_read to page through recent activity. Returns { cursor, audit_ref }. Bound to your identity; cross-agent and callback/URL filters are refused.

  • sanctuary_events_read

    Read the next page of redacted events from a cursor opened with sanctuary_events_open_cursor (default 10, max 25 per call). Returns { events, next_cursor, audit_ref }. Only your own identity's events are visible; capped at 10 reads per cursor, then rate-limited.

  • sanctuary_export_identity_bundle

    Export a signed, portable identity bundle: { publicKey, did, shr, attestations }. The bundle is signed with the identity's Ed25519 key so a recipient can verify authenticity against the public key. Private keys are never included. Tier 1: requires operator approval, because the bundle leaves the local store.

  • sanctuary_forget

    Permanently delete a memory key via state_delete: the entry is removed and its file gets a best-effort random-byte overwrite before unlinking. On copy-on-write/SSD media (APFS, ext4, flash) the original bytes may persist, so at-rest confidentiality rests on encryption (data is stored as ciphertext), not on the overwrite. Tier 1: requires operator approval; pass the approval proof. Returns an audit_ref for the deletion event.

  • sanctuary_help

    Given a free-text intent (e.g. "save my timezone", "delete a stored secret", "should I install this"), return which Sanctuary tool to use and how, including a runnable example for ordinary requests. Evaluation questions (what this protects, what the bounds are, which platforms, how to verify, which tier waits on a human, how to uninstall) return intent_class "evaluate" with a guidance string (the README bounds, or the CLI command), a runnable example only where a Tier 3 read-only tool answers unattended, and the related read-only tools with their tiers. An evaluate noun outranks only a bare re…

  • sanctuary_hide

    Mark a stored key as hidden so sanctuary_recall will not return it, without deleting the data. Use to suppress a memory from default reads while keeping it recoverable. Returns an audit_ref; the value still exists in the store and can be deleted with sanctuary_forget.

  • sanctuary_link_to_human

    Trigger a Verascore magic-link login flow so a human principal can authenticate and subsequently claim this agent's DID. The email is sent by Verascore to the supplied address. This tool only initiates the flow; it does not directly bind the DID. Requires operator approval under the default policy (not named in a policy tier; the gate's safe default).

  • sanctuary_policy_status

    Return active Principal Policy summary: explicit Tier 1 and Tier 3 operation lists plus Tier 2 anomaly-detection configuration. Tier 2 is not exposed as a named operation list. Tier 1 and non-relaxable: requires operator approval on every call.

  • sanctuary_recall

    Read a key from encrypted sovereign memory, verifying integrity before returning. Returns { value, verified: true, audit_ref } (pass opts.full for the full record). Denied if integrity fails or the key was hidden via sanctuary_hide. Use as the read counterpart to sanctuary_remember.

  • sanctuary_remember

    Store a key/value into encrypted sovereign memory for this session. Wraps state_write with an approval-binding and audit record. Use this (not raw state_write) for agent working memory you want auditable. Returns { key, namespace_handle, audit_ref }; the namespace is an opaque handle, never the raw path.

  • sanctuary_sign_challenge

    Sign a domain-separated nonce with the agent's Ed25519 key. Used in DID-ownership proof flows. The signed message is constructed as: 'sanctuary-sign-challenge-v1\x00' + purpose + '\x00' + nonce. The verifier MUST reconstruct the same domain-prefixed message before calling Ed25519 verify; a raw-nonce signature is NOT valid for this tool. The `purpose` field binds the signature to a specific use case (e.g. 'verascore-claim') so a signature produced for one purpose cannot be replayed against a different verifier. Requires operator approval under the default policy (not named in a policy tier; the…

  • sanctuary_who_am_i

    Return the disclosable identity facts for the current session: label, did, active-identity fingerprint, and memory namespace handle. Use to confirm which sovereign identity you are operating as. Read-only; private keys are never included.

  • sanctuary/resolve_erc8004_identity

    Verify a presented ERC-8004 agent-identity record. By default this is an offline-only, read-only local check that recomputes the record's signature against the embedded signer address and returns valid/invalid plus the verified identity fields. A valid result is offline-verified only: it proves the record carries a self-consistent secp256k1 signature recoverable to signer_address, not that the signer is the registry owner. If the operator explicitly enables ERC-8004 registry confirmation and configures an RPC endpoint, Sanctuary makes a gated ownerOf(identity) read through the egress gate and …

  • sanctuary/sign_erc8004_identity

    Request an ERC-8004 Identity Registry registration signature. Requires operator approval under the default policy (not named in a policy tier; the gate's safe default). After that approval the request also passes the key-17 signing policy; a request that policy does not allow returns pending_approval with an inbox entry, and in this release it is not completed from this tool: the operator produces the signature on the CLI by running `sanctuary erc8004 register` with its required registry, chain, agent-id and nonce flags plus `--auto-approve` (the flag that skips the inbox wait). No on-chain br…

  • sdw_export

    Export the Sovereign Data Warehouse (working state, query history, document corpus, vector memory) as a signed, still-encrypted bundle written into a fresh per-export directory under the operator-configured export directory on this machine. Nothing is decrypted and nothing leaves the host; this is an operator-directed archive, not a carriage path, and unsealed memory is never carried by participant Exit. Tier 1: the approval freezes a ciphertext-inventory fingerprint of exactly what will ship; any vault change before packaging aborts the export.

  • sdw_export_delete

    Post-export local-state delete: removes exactly the records listed in a signed export manifest, and only while their stored ciphertext still matches the manifest. Tier 1.

  • sdw_import

    Import a signed SDW export bundle produced by sdw_export. The manifest signature is verified before any approval prompt; records are decrypted only inside the approved flow and re-encrypted under this fortress. Imports are all-or-nothing: they run inside one storage transaction, and a backend without transactions refuses the import outright, before any prompt, rather than applying part of it. The shipped filesystem fortress has no transaction primitive today, so on that backend this tool refuses; only the source key reference `this-fortress` (a bundle this fortress exported) resolves, since cr…

  • sdw_memory_provenance

    Show per-record SDW memory integrity status. Verified rows expose the bounded fortress-recorded origin/admission classes; a passage admitted through a memory archive import reports its origin-trust tier and the transfer lineage reference; unsigned PRE_MIGRATION rows are explicit. Verification does not prove true authorship, content truth, safety, or a remote identity. Requires operator approval under the default policy (not named in a policy tier; the gate's safe default).

  • shr_gateway_export

    Export this instance's Sovereignty Health Report formatted for Ping Identity's Agent Gateway or other identity providers. Transforms the SHR into an authorization context with sovereignty scores, capability flags, and recommended access constraints.

  • shr_generate

    Generate a signed Sovereignty Health Report (SHR), a machine-readable posture claim. Present it as a signed, fresh advertisement whose signature/identity-binding/expiry/schema can be verified; it does not independently prove every advertised runtime capability.

  • shr_verify

    Verify a counterparty's Sovereignty Health Report (SHR). Checks signature validity, temporal validity, and assesses sovereignty level.

  • sovereignty_audit

    Audit your agent's sovereignty posture. Inspects the local environment for encryption, identity, approval gates, selective disclosure, and reputation, including OpenClaw-specific configurations. Returns a scored gap analysis with prioritized recommendations. Read-only; Tier 3 under the default policy (auto-allowed with an audit record). Call this to evaluate an install.

  • sovereignty_profile_generate_prompt

    Generate a system prompt snippet based on the active Sovereignty Profile. The snippet instructs an agent on which Sanctuary features are active and how to use them. Copy and paste this into your agent's system configuration.

  • sovereignty_profile_get

    Get the current Sovereignty Profile configuration. context_gating is wired to the runtime enforcer; approval_gate is always enabled; other flags are configuration/signaling and may not by themselves enable/disable the underlying tools.

  • sovereignty_profile_update

    Update Sovereignty Profile configuration. Updating context_gating reconfigures the runtime context-gate enforcer; approval_gate remains always enabled; other flags update profile/signaling state unless separate runtime wiring is present. Tier 1: requires operator approval, because it changes enforcement behavior.

  • state_delete

    Permanently delete state: removes the entry with a best-effort random-byte overwrite before unlinking. On copy-on-write/SSD media the original bytes may survive, so at-rest confidentiality rests on encryption (data is stored as ciphertext), not on the overwrite. Satisfies right-to-deletion (S1.6) by removing the entry. Tier 1: requires operator approval, because the deletion is irreversible.

  • state_disclose_unattributed

    Disclose the content of ONE state entry whose writer this fortress cannot establish. Tier 1 and non-relaxable: every call requires an explicit human approval that no policy file can waive, and every call that reaches the disclosure operation is audited with the namespace and the key (an approval the operator declines is recorded by the approval gate under its own operation, which binds an arguments hash rather than the namespace and key in the clear). THIS IS NOT A VERIFIED READ and is not interchangeable with state_read. The result is a structurally different shape: there is no `value` and no…

  • state_export

    Export state as an encrypted sanctuary-v1 bundle for migration to another instance of the same fortress, meaning the same master key, for example after restoring via the recovery key. Tier 1: requires operator approval because data leaves the local store. New exports include an authenticated completeness manifest with the namespace set, per-namespace item counts, and per-namespace content checksums. On state_import, the manifest verifies that the bundle body still matches the approved export scope and rejects dropped or added namespaces and entries within that scope. It does not prove that dat…

  • state_import

    Import a previously exported encrypted sanctuary-v1 state bundle into another instance of the same fortress, meaning the same master key, for example after restoring via the recovery key. Tier 1: requires operator approval. By default, import requires authenticated bundle integrity and a completeness manifest, then recomputes the manifest before any write. Manifest, count, checksum, timestamp, MAC, or newer-schema mismatches are rejected. The verification proves the bundle body still matches the approved export scope; it does not prove data outside that scope should have been included. Manifes…

  • state_list

    List the keys in a namespace with metadata (version, size, timestamps) only: values are not decrypted or returned. Use to enumerate stored state before a targeted state_read. Read-only.

  • state_read

    Read and decrypt state from the sovereign store. Verifies integrity via Merkle proof and signature.

  • state_write

    Write encrypted state to the sovereign store. Value is encrypted with a namespace-specific key. The write is signed by the active identity.

  • zk_commit

    Create a Pedersen commitment to a numeric value on Ristretto255. Unlike SHA-256 commitments, Pedersen commitments support zero-knowledge proofs: you can prove properties about the committed value without revealing it.

  • zk_prove

    Create a zero-knowledge proof of knowledge for a Pedersen commitment. Proves you know the value and blinding factor without revealing either. Uses a Schnorr sigma protocol with Fiat-Shamir transform.

  • zk_range_prove

    Create a zero-knowledge range proof: prove that a committed value is within [min, max] without revealing the exact value. Uses bit-decomposition with OR-proofs on Ristretto255.

  • zk_range_verify

    Verify a zero-knowledge range proof: confirms a committed value is within the claimed range without learning the value.

  • zk_verify

    Verify a zero-knowledge proof of knowledge for a Pedersen commitment. Checks that the prover knows the commitment's opening without learning anything.

Signals

Stars
9
Forks
0
Open issues
5
Last commit
Oct 22, 2026 (8 days ago)
Last release
Oct 13, 2026 (18 days ago)

From GitHub (fetched Oct 24, 2026).

Details

Registry name
ai.sanctuaryprotocol/sanctuary
Version
1.8.4
Auth
No auth
License
Apache-2.0
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

Done for you

Rather not set it up yourself?

Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.

See how we build AI agents →Read the case studies

Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.

launches shipped
50+
launches shipped
media placements
500+
media placements
founders on every account
2
founders on every account

Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block

Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.

Get Sanctuary running in your business

Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.

Goes to the Chalk Labs founders, not the newsletter. Privacy

Need help deploying Sanctuary?

CallGet help
Cite this page

Sanctuary MCP server. Agent Mart. https://agentmart.dev/connectors/sanctuaryprotocol-ai-sanctuary (last updated 2026-10-24)