No system changes required. Works with your existing flow. Mnemo sits beside your embedding step on insert and your retrieval step on read.
Storage is optional. A vector database is not required.
Expanded: input → embed → store optional → retrieve → verify → decision.
Wrap your embedding step with embed(). Wrap your retrieval step with verify(). Your model and your storage stay where they are.
Mnemo is the embedding-vector provenance and verification API at trymnemo.com. The official Python distribution is mnemo-protocol, imported as mnemo_sdk, and the official GitHub organization is MnemoProtocol.
pip install mnemo-protocol
SDK docs · PyPI: mnemo-protocol · GitHub: MnemoProtocol/mnemo-sdk · OpenAPI
import os
from mnemo_sdk import MnemoClient
client = MnemoClient(api_key=os.environ["MNEMO_API_KEY"])
# on insert
vec = model.embed(doc)
r = client.embed(vec, model_id="text-embedding-3-small")
store.upsert(r.vector_uid, r.watermarked_vector)
# on retrieve
for hit in store.query(q, top_k=5):
check = client.verify(hit.values) # None if not verified
if check is not None and check.verified:
ctx.append(hit)MCP support (Trust Guardian) is planned. Today, agents call the Mnemo HTTP API directly at api.trymnemo.com with no account required and pay $0.01 per verification with x402 on Base or MPP on Tempo. See the agent protocol.
Mnemo shows the difference before data moves through your system.
Identity is attached once at embed and checked when the vector is read back from your own stores and indexes. Verify checks whether the vector resolves to an object registered to your account or namespace; it does not judge whether the content is true or benign.
Create a workspace. Register a service. Issue a credential. Run embed. Run verify.