Skip to main content

VoltAgent + Memanto

VoltAgent Add persistent memory to any VoltAgent agent with three ready-made tools, shipped as part of the @moorcheh-ai/memanto TypeScript SDK.

Prerequisites

  • Node.js 20+
  • uv (ships uvx) -the Memanto client spawns a local Memanto server via uvx on first use unless you pass baseUrl
  • Memanto / Moorcheh credentials -Moorcheh API key (cloud) or an on-prem backend (no Moorcheh API key). Set MOORCHEH_API_KEY or pass apiKey to new Memanto({ ... })
  • Agent model credentials -the quick start uses OpenAI gpt-4o for tool orchestration. Set OPENAI_API_KEY (or swap openai("gpt-4o") for any provider VoltAgent supports). Memanto memory tools do not use this key -they talk to Memanto/Moorcheh only
  • @voltagent/core and zod installed in your app (optional peer dependencies of @moorcheh-ai/memanto)

Install

@voltagent/core and zod are optional peer dependencies of @moorcheh-ai/memanto -install them yourself in the host app. Importing @moorcheh-ai/memanto/voltagent without them installed will fail at module load with a standard Node resolution error.

Quick Start

createMemantoVoltAgentTools returns an array of three VoltAgent tools -pass it straight into an agent’s tools array. Each tool’s description is written for the model to decide when to call it (e.g. recallMemory: “Call this before answering whenever the user refers to information from earlier or from a previous session”).

Available Tools

answerMemory calls Memanto’s Generate AI Answer API (memanto.answer() → Moorcheh answer.generate). Memanto retrieves relevant memories and synthesizes a grounded response using Memanto’s configured LLM -not the model you pass to your VoltAgent Agent. Your agent model only decides when to call the tool and how to use the result. recallMemory and rememberMemory do not invoke an LLM.

Options

Memory Types

type fields are constrained to Memanto’s 13 supported types via a shared MEMORY_TYPES export:
See the Memory Types Reference for what each type means.

On-Prem

The integration talks to Memanto through the Memanto client, so it works identically against an on-prem backend -no code changes, just configure the backend once with the CLI. See On-Prem Overview and the TypeScript SDK Reference.

Next Steps