
q-ring
This is a secure credential manager that plugs your OS keychain directly into Claude and other AI coding tools through 44 MCP tools. Instead of pasting API keys into .env files, you store them with qring's CLI and the AI can read them at runtime. The quantum metaphors are real features: superposition lets one key hold dev/staging/prod values that collapse based on context, entanglement links secrets across projects for synchronized rotation, and tunneling creates ephemeral in-memory tokens that self-destruct after N reads. You also get audit logs with tamper detection, TTL-based secret expiry, and AES-256-GCM encrypted bundles for sharing credentials between machines. Useful if you're tired of committing secrets or want fine-grained control over what your AI agent can access.
- GitHub stars
- 5
- tools
- 46
- auth
- Secret needed
- transport
- STDIO
- env vars
- 4
- last updated
- Nov 12, 2026
Tools
46 toolsPublic tool metadata for what this MCP can expose to an agent.
get_secretRead a secret value (collapses superposition, audits the read)
Read a secret value (collapses superposition, audits the read)
No parameter schema in public metadata yet.
list_secretsList keys + metadata in scope (values never exposed); filter by tag, expiry, glob
List keys + metadata in scope (values never exposed); filter by tag, expiry, glob
No parameter schema in public metadata yet.
set_secretCreate or overwrite a single secret with optional TTL, per-env state, tags, rotation format
Create or overwrite a single secret with optional TTL, per-env state, tags, rotation format
No parameter schema in public metadata yet.
promote_secretCopy one secret's value from one environment state to another (no-op when equal; `force` to overwrite a differing target)
Copy one secret's value from one environment state to another (no-op when equal; `force` to overwrite a differing target)
No parameter schema in public metadata yet.
diff_environmentsCompare two environments key by key — same / different / only-a / only-b / collapsed; statuses only, never values
Compare two environments key by key — same / different / only-a / only-b / collapsed; statuses only, never values
No parameter schema in public metadata yet.
delete_secretPermanently remove a secret value (not undoable from q-ring)
Permanently remove a secret value (not undoable from q-ring)
No parameter schema in public metadata yet.
has_secretBoolean existence check that respects decay (no audit read)
Boolean existence check that respects decay (no audit read)
No parameter schema in public metadata yet.
export_secretsRender multiple secrets as `.env` or JSON for one-off export (skips approval-protected keys without a grant)
Render multiple secrets as `.env` or JSON for one-off export (skips approval-protected keys without a grant)
No parameter schema in public metadata yet.
import_dotenvParse `.env` text and bulk-store every key/value pair (accepts raw content only — never reads files)
Parse `.env` text and bulk-store every key/value pair (accepts raw content only — never reads files)
No parameter schema in public metadata yet.
check_projectCompare `.q-ring.json` manifest against the keyring for missing/expired/stale keys
Compare `.q-ring.json` manifest against the keyring for missing/expired/stale keys
No parameter schema in public metadata yet.
env_generateRender a complete `.env` body from the project manifest, with warnings for gaps
Render a complete `.env` body from the project manifest, with warnings for gaps
No parameter schema in public metadata yet.
inspect_secretShow metadata for one key (states, decay, entanglement, access count) without revealing the value
Show metadata for one key (states, decay, entanglement, access count) without revealing the value
No parameter schema in public metadata yet.
detect_environmentResolve which env slug should drive superposition collapse for the current context
Resolve which env slug should drive superposition collapse for the current context
No parameter schema in public metadata yet.
generate_secretGenerate a CSPRNG-backed value in a chosen format and optionally store it
Generate a CSPRNG-backed value in a chosen format and optionally store it
No parameter schema in public metadata yet.
entangle_secretsLink two keys so future writes/rotations propagate the same value
Link two keys so future writes/rotations propagate the same value
No parameter schema in public metadata yet.
disentangle_secretsBreak the sync link between two keys (does not delete values)
Break the sync link between two keys (does not delete values)
No parameter schema in public metadata yet.
tunnel_createStash a value in process memory and return an opaque ID (never touches disk)
Stash a value in process memory and return an opaque ID (never touches disk)
No parameter schema in public metadata yet.
tunnel_readFetch a tunneled value by ID — may self-destruct on read
Fetch a tunneled value by ID — may self-destruct on read
No parameter schema in public metadata yet.
tunnel_listEnumerate active tunnels with remaining read budget and TTL (IDs only)
Enumerate active tunnels with remaining read budget and TTL (IDs only)
No parameter schema in public metadata yet.
tunnel_destroyImmediately remove a tunnel from memory before its TTL/reads run out
Immediately remove a tunnel from memory before its TTL/reads run out
No parameter schema in public metadata yet.
teleport_packEncrypt selected secrets into a passphrase-protected AES-256-GCM bundle
Encrypt selected secrets into a passphrase-protected AES-256-GCM bundle
No parameter schema in public metadata yet.
teleport_unpackDecrypt a teleport bundle and import each secret (with optional dry-run)
Decrypt a teleport bundle and import each secret (with optional dry-run)
No parameter schema in public metadata yet.
validate_secretHit the upstream service (OpenAI/Stripe/GitHub/AWS/HTTP) to confirm a single key is still live
Hit the upstream service (OpenAI/Stripe/GitHub/AWS/HTTP) to confirm a single key is still live
No parameter schema in public metadata yet.
list_providersEnumerate built-in validation providers and their auto-detect prefixes
Enumerate built-in validation providers and their auto-detect prefixes
No parameter schema in public metadata yet.
register_hookRegister a shell/HTTP/signal side-effect that fires on write/delete/rotate
Register a shell/HTTP/signal side-effect that fires on write/delete/rotate
No parameter schema in public metadata yet.
list_hooksShow every registered hook with match criteria, type, and enabled flag
Show every registered hook with match criteria, type, and enabled flag
No parameter schema in public metadata yet.
remove_hookDetach a single hook by ID without touching any secrets
Detach a single hook by ID without touching any secrets
No parameter schema in public metadata yet.
exec_with_secretsRun a child command with secrets injected as env vars and any leaked values redacted from output
Run a child command with secrets injected as env vars and any leaked values redacted from output
No parameter schema in public metadata yet.
scan_codebase_for_secretsWalk a directory tree and flag hardcoded secrets via regex + entropy heuristics
Walk a directory tree and flag hardcoded secrets via regex + entropy heuristics
No parameter schema in public metadata yet.
lint_filesInspect a specific file list for hardcoded secrets with optional auto-fix to `process.env.KEY`
Inspect a specific file list for hardcoded secrets with optional auto-fix to `process.env.KEY`
No parameter schema in public metadata yet.
get_project_contextSingle redacted snapshot of secrets, env, manifest, hooks, and recent audit activity
Single redacted snapshot of secrets, env, manifest, hooks, and recent audit activity
No parameter schema in public metadata yet.
agent_rememberPersist a non-secret note in encrypted agent memory across sessions
Persist a non-secret note in encrypted agent memory across sessions
No parameter schema in public metadata yet.
agent_recallRead a memory value, or list every stored key when no key is supplied
Read a memory value, or list every stored key when no key is supplied
No parameter schema in public metadata yet.
agent_forgetPermanently delete a key from agent memory
Permanently delete a key from agent memory
No parameter schema in public metadata yet.
analyze_secretsUsage profile: most-accessed, stale, never-accessed, no-rotation candidates
Usage profile: most-accessed, stale, never-accessed, no-rotation candidates
No parameter schema in public metadata yet.
audit_logQuery the tamper-evident audit log filtered by key, action, and limit
Query the tamper-evident audit log filtered by key, action, and limit
No parameter schema in public metadata yet.
detect_anomaliesSurface burst-read and off-hours findings from audit history
Surface burst-read and off-hours findings from audit history
No parameter schema in public metadata yet.
verify_audit_chainRecompute the audit hash chain and report the first break point if tampered
Recompute the audit hash chain and report the first break point if tampered
No parameter schema in public metadata yet.
export_auditExport audit events as jsonl, json, or csv for archival/SIEM
Export audit events as jsonl, json, or csv for archival/SIEM
No parameter schema in public metadata yet.
health_checkRead-only scope sweep: decay/stale/expired counts plus current anomalies
Read-only scope sweep: decay/stale/expired counts plus current anomalies
No parameter schema in public metadata yet.
status_dashboardStart a local SSE dashboard with live KPIs, secrets, hooks, and audit feed (returns a token-gated `127.0.0.1` URL)
Start a local SSE dashboard with live KPIs, secrets, hooks, and audit feed (returns a token-gated `127.0.0.1` URL)
No parameter schema in public metadata yet.
agent_scanMulti-project health pass with optional `autoRotate` for expired secrets
Multi-project health pass with optional `autoRotate` for expired secrets
No parameter schema in public metadata yet.
check_policyDry-run a tool/key/exec action against `.q-ring.json` policy without performing it
Dry-run a tool/key/exec action against `.q-ring.json` policy without performing it
No parameter schema in public metadata yet.
get_policy_summaryHigh-level overview of policy rule counts and approval/rotation requirements
High-level overview of policy rule counts and approval/rotation requirements
No parameter schema in public metadata yet.
rotate_secretAsk the upstream provider to issue a new credential and store it back in the keyring
Ask the upstream provider to issue a new credential and store it back in the keyring
No parameter schema in public metadata yet.
ci_validate_secretsBatch-validate every accessible secret in scope and return a structured pass/fail report
Batch-validate every accessible secret in scope and return a structured pass/fail report
No parameter schema in public metadata yet.
Sponsors
Configuration
QRING_BACKENDdefault: keyringSecret storage backend. Defaults to the OS keychain; set to "file" for headless hosts with no Secret Service (CI, containers).
QRING_FILE_PASSPHRASEsecretPassphrase for the encrypted file backend (AES-256-GCM). Required only when QRING_BACKEND=file — without it the file backend fails closed.
QRING_FILE_BACKEND_PATHCustom path for the encrypted file store (default: ~/.config/q-ring/file-backend.enc).
QRING_CONFIG_DIRDirectory for q-ring's registries — hooks, entanglement, approvals, canary webhooks, agent memory (default: ~/.config/q-ring).
Readme
Details
- Repository
- github.com/i4ctime/q-ring
- Website
- qring.i4c.studio
- Package
@i4ctime/q-ring- Transport
- STDIO
- Auth
- Required
- Registry
- MCP registry, active