{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.python1/verified-memory","description":"Offline read-only search over a checksum-verified, optionally signed memory pack, with exact quotes","title":"Verified Memory","repository":{"url":"https://github.com/python1/data-lore-hive","source":"github","subfolder":"plugins/verified-memory-mcp"},"version":"0.4.1","packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"@python1/verified-memory-mcp","version":"0.4.1","runtimeHint":"npx","transport":{"type":"stdio"},"packageArguments":[{"description":"Absolute path to a pack directory containing exactly MEMORY.md, README.md, records.jsonl and SHA256SUMS, plus an optional PACK.json (creation and expiry dates) and SHA256SUMS.sig. The whole pack is verified at startup; the server refuses to start if any check fails.","isRequired":true,"format":"filepath","type":"named","name":"--pack","valueHint":"pack_dir"},{"description":"Absolute path to a file of public keys you trust to sign packs, one per line: name ssh-ed25519 AAAA… [comment]. A pack signed by a listed key reports that signer; a valid signature by any other key is reported as untrusted.","format":"filepath","type":"named","name":"--trusted-keys","valueHint":"trusted_keys_file"},{"description":"Recommended for signed packs. The SHA256:… fingerprint of a key allowed to sign packs, as ssh-keygen -l prints it; repeat the flag (or separate with commas) for several. If set, only a pack signed by one of these keys is accepted, whatever --trusted-keys says. Implies --require-signature.","format":"string","type":"named","name":"--trusted-fingerprint","isRepeated":true,"valueHint":"fingerprint"},{"description":"Absolute path to a file of revoked key fingerprints, one SHA256:… per line. A pack signed by a revoked key is always refused, even if pinned or trusted.","format":"filepath","type":"named","name":"--revoked-keys","valueHint":"revoked_keys_file"},{"description":"Refuse any pack whose signed PACK.json sequence is missing or lower than N, so an older validly signed pack cannot replace a newer one. Implies --require-signature. No state is kept: raise N yourself when you install a newer pack.","format":"number","type":"named","name":"--min-sequence","valueHint":"N"},{"description":"Set to true to refuse to start unless the pack is signed by a pinned (--trusted-fingerprint) or trusted (--trusted-keys) key. Freshness is reported but not enforced. When false or omitted, unsigned packs load and are reported as unsigned.","format":"boolean","default":"false","type":"named","name":"--require-signature"},{"description":"Set to true to refuse to start (and to stop serving) unless the pack is signed by a pinned (--trusted-fingerprint) or trusted (--trusted-keys) key and is fresh: PACK.json present and not expired. Implies --require-signature. When false or omitted, undated and stale packs load and every result reports their status.","format":"boolean","default":"false","type":"named","name":"--strict"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-10-18T03:48:46.546573Z","publishedAt":"2026-10-18T03:48:46.546573Z","updatedAt":"2026-10-18T03:48:46.546573Z","isLatest":true}}}
