Skip to the content

Developers

The memory API. Two calls to integrate.

Save what each user says. Serve what matters before every reply, with the source of every line. Python, TypeScript, REST and MCP.

1from geniffy import Geniffy
2
3client = Geniffy()                        # reads GENIFFY_API_KEY
4mem = client.space("customer_1042")       # one memory per user
5
6source = mem.memories.add(
7    "Priya Nair signs the Lumen renewal. It moved from March to June."
8)
9mem.sources.wait(source.id)               # learning takes a few seconds
10
11print(mem.context("Who signs the renewal, and when?"))
Output
- Priya Nair signs the Lumen renewal. [note, 2026-10-05]
- The Lumen renewal moved to June. [note, 2026-10-05]

Recall

Four ways to recall. One memory behind them.

A briefing for the system prompt
mem.briefing(cue="refund")
## Where things stand- Refund approved, waiting on the bank. [call, 2026-10-14]

Where things stand for this user, read rather than generated, so it is fast enough for every turn of a chat or a call.

A block for your own prompt
mem.context("Who signs the renewal?")
- Priya Nair signs the Lumen renewal. [note, 2026-10-05]

The memories that bear on the question, each with its source, checked by a model first. For answers that must be right.

An answer in words
mem.ask("Who signs the renewal?")
Priya Nair signs it.memories: 1

Our answer from the memory alone, or none at all and a message saying why. It never guesses.

The memories themselves
mem.search("renewal", limit=5)
1 Priya Nair signs the Lumen renewal.2 The renewal moved to June.

Ranked matches for any question, to do with as you like. Search and recall are free.

Many users

One space per user. Isolated by default.

A space per user. Bind a client to one of your users and every call stays inside their memory. A space exists from the first write.

Keys for one user. Give a user's own app or device a key that reaches their memory and nothing else. It is shown once.

Export or erase. Everything held for a user, exported as their own copy or erased, in one call.

The platform

Everything a memory needs. Nothing to host.

REST API. Add, recall, correct and forget, over HTTPS, with a request id on every response.

API reference

SDKs. pip install geniffy and npm install geniffy. No dependencies in TypeScript; Node, Deno, Bun and the edge.

Python and TypeScript

MCP server. One URL with its own sign-in, for Claude, ChatGPT, Cursor, VS Code and any app that speaks MCP.

AI apps

Plugins and CLI. A Claude Code plugin, and one command that connects the coding tools on a machine.

Coding agents

Integrations. 41 tested guides: LangChain, CrewAI, Vercel AI SDK, voice agents, Gmail, Notion and more.

Every integration

Requests and usage. Every call for 30 days, findable by its request id, and this month's use from GET /v1/usage.

Request ids

Pricing

The same plans. Retrieval is free on every plan.

Free$0For individuals trying memory in their own agent or editor
Pro$20For developers shipping an agent to real users
Max$100For products serving thousands of users
Scale$399For companies running agents in production
Search and briefings are never metered, on any plan. Past a plan, saves wait for next month, or extra learning carries on at $5 per million tokens, up to a cap you set.See pricing

Build with the memory API.

Create an API key in a minute. Retrieval is never metered.

Read the docs