Skip to main content
Glama

get_secret

Retrieve secrets from your vault by key, collapse multi-environment states, and log access automatically to prevent plaintext leaks.

Instructions

Retrieve a secret by key. Collapses superposition if the secret has multiple environment states. Records access in audit log (observer effect).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
keyYesThe secret key name
scopeNoScope: global or project
projectPathNoProject root path for project-scoped secrets
envNoEnvironment for superposition collapse (e.g., dev, staging, prod)

Implementation Reference

  • The getSecret function retrieves a secret, handling scope resolution, decay checks, superposition collapse, and audit logging.
    export function getSecret(
      key: string,
      opts: KeyringOptions = {},
    ): string | null {
      const scopes = resolveScope(opts);
      const env = resolveEnv(opts);
      const source = opts.source ?? "cli";
    
      for (const { service, scope } of scopes) {
        const envelope = readEnvelope(service, key);
        if (!envelope) continue;
    
        // Check decay
        const decay = checkDecay(envelope);
        if (decay.isExpired) {
          logAudit({
            action: "read",
            key,
            scope,
            source,
            detail: "blocked: secret expired (quantum decay)",
          });
          continue;
        }
    
        // Collapse superposition
        const value = collapseValue(envelope, env);
        if (value === null) continue;
    
        // Observer effect: record access and persist
        const updated = recordAccess(envelope);
        writeEnvelope(service, key, updated);
    
        logAudit({ action: "read", key, scope, env, source });
    
        return value;
      }
    
      return null;
    }

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/I4cTime/quantum_ring'

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