Three products. One memory.
The SDK connects your agents to the memory. The Core is the engine that recognizes every customer and keeps the memory current. The Console gives your team control over who reads what.
Niadra SDK
Three calls. Any agent, any LLM.
The SDK is not a framework. It does not control your agent, pick your model or touch your prompt. It connects the agent you already have to the Niadra memory: context before the reply, search during the conversation and a record after it.
# before replying: the full customer context
ctx = niadra.context(phone=caller_id, channel="voice")
reply = model.chat(
system=[YOUR_PROMPT, ctx.text],
# during the conversation: the agent searches the history
tools=[niadra.search_tool(ctx.customer)],
messages=history,
)
# after replying: the conversation goes into the memory
niadra.track(
conversation=call_id,
channel="voice",
turns=[question, reply],
)- Python
- TypeScript
- HTTP API
- MCP server
The three calls
context()Before replyingHands over the full customer context, ready for the prompt.search()During the conversationSearches the customer’s entire history. It also becomes a tool the LLM can call by itself.track()After replyingSends the conversation to the memory, without delaying the reply.- Python and TypeScript
- MCP server ready for any agent
- HTTP API for any other language
- Open source (Apache 2.0): you audit everything that leaves your network
- Never delays your reply: every call has a time limit
Niadra Core
The memory engine that knows every customer.
The Core receives the conversations from every channel and works out which ones belong to the same customer, by matching phone, email, tax ID and app login. From each conversation it extracts facts, preferences, open items and promises, each with a date and a source. Then it prepares the context for every channel and indexes the entire history for search.
Each identifier carries a weight
exampleEvery piece of information stays linked to the identifier it came from. If two people are merged by mistake, Niadra splits them without losing the history of either.
The context, in layers
The layers that almost never change come first. That lets the AI provider reuse the beginning of the context, and you pay less per token.
“Last time you gave me a credit.”
niadra.search("credit for missed technician visit")- Mar 12, 2026 · PhoneTechnician did not show up. $40 credit applied to the April bill. settled
- Mar 14, 2026 · WhatsAppThe customer confirmed the credit and the new visit. settled
- Nov 3, 2025 · AppVisit rescheduled at the customer’s request. no credit
Niadra Console
Someone will ask who read what. The Console answers on the spot.
Every read is logged: which agent read, from which vendor, for what purpose and at what time. You cut a vendor’s access without depending on that vendor, simulate what each agent sees before you grant access, and erase a customer’s data in one go, with a receipt of what was erased.
Read log
example- Cut a vendor’s access right away
- Simulate what each agent sees, before granting access
- Erase a customer’s data, with a receipt
- Export everything in an open format
- Send the read log to your SIEM
- SSO, two-factor and access roles for your team