Skip to main content

MenteDB Python SDK

Python bindings for MenteDB, the mind database for AI agents. Built with PyO3 and maturin for native Rust performance from Python.

Installation

From PyPI

pip install mentedb

Prebuilt wheels are published for macOS arm64, Linux x86_64 and aarch64, and Windows x86_64 (Python 3.9+).

From source (development)

cd sdks/python
pip install maturin
maturin develop

On Debian and Ubuntu systems pip refuses system wide installs (PEP 668). Use a virtual environment or pipx:

python3 -m venv .venv && .venv/bin/pip install mentedb
# or: pipx install mentedb

Quick start

from mentedb import MenteDB, MemoryType, EdgeType

with MenteDB("./agent-memory") as db:
    # process_turn — the primary API, one call does everything
    result = db.process_turn(
        user_message="The deployment failed because the config was missing",
        assistant_response="I'll check the config setup.",
        turn_id=0,
    )
    # result.context — relevant memories for your prompt
    # result.facts_extracted — what was learned this turn
    # result.contradiction_count — conflicting beliefs detected
    # Optional kwargs: project_context, agent_id, session_id (tags stored
    # turns so injection recall can exclude the requesting session), user_id
    # (agent_id and user_id must be UUID strings)

    # Enrichment (LLM fact extraction, entity linking, community summaries,
    # user profile) is a separate call; see "Sleeptime enrichment" below.

    # Or use low-level APIs directly:

    # Store a memory
    mid = db.store(
        "The deployment failed because the config was missing",
        memory_type=MemoryType.EPISODIC,
        tags=["deployment", "config"],
    )

    # Recall memories with MQL
    result = db.recall("RECALL tag:deployment LIMIT 5")
    print(result.text)

    # Vector similarity search
    hits = db.search(embedding=[0.1] * 384, k=5)
    for hit in hits:
        print(f"{hit.id}: {hit.score:.4f}")

    # Relate memories
    mid2 = db.store("Always validate config before deploy", memory_type=MemoryType.PROCEDURAL)
    db.relate(mid, mid2, edge_type=EdgeType.CAUSED)

    # Forget a memory
    db.forget(mid)

MenteDB Cloud (hosted)

Prefer a managed API with no engine to run? Use MenteDBClient with an mdb_ key from app.mentedb.com. The verbs mirror the embedded client, so only the constructor changes.

from mentedb import MenteDBClient

client = MenteDBClient(api_key="mdb_...")

# Turn 0: tell it something.
client.process_turn("I switched from Postgres to SQLite for side projects", "Noted.", 0)

# Turn 1: it remembers.
result = client.process_turn("what database am I using for side projects?", "", 1)
for memory in result.context:
    print(memory.content)

# Also available: client.search(...), client.store(...),
# client.store_multimodal(data, media_type=...), client.forget(memory_id)

MenteDBClient is pure standard library (no extra dependencies) and talks to https://api.mentedb.com. process_turn uses the REST endpoint, while store, search, store_multimodal, and forget use the hosted MCP tools.

Cognitive features

The SDK also exposes MenteDB cognitive subsystems for real time stream monitoring, conversation trajectory tracking, and pain signal management.

Sleeptime Enrichment

The embedded SDK does not enrich on its own. process_turn marks when enrichment is due; check db.needs_enrichment() and call db.run_enrichment() (for example from a background worker). The pipeline extracts semantic facts, links and deduplicates entities, groups them into communities with summaries, and builds a user profile, all of which feed later process_turn context retrieval.

Requires an LLM provider: set MENTEDB_LLM_PROVIDER (openai, anthropic or ollama) and MENTEDB_LLM_API_KEY. Without them the engine works normally and run_enrichment raises an error.

Cognitive subsystems

import uuid
from mentedb._mentedb_python import CognitionStream, TrajectoryTracker, PainRegistry

# Stream monitoring (fact ids must be UUID strings)
fact_id = str(uuid.uuid4())
stream = CognitionStream(buffer_size=500)
stream.feed_token("The")
stream.feed_token(" sky")
alerts = stream.check_alerts([(fact_id, "the sky is blue")])

# Trajectory tracking
tracker = TrajectoryTracker(max_turns=50)
tracker.record_turn("deployment", "investigating", ["which env?"])
context = tracker.get_resume_context()

# Pain registry
pain = PainRegistry(max_warnings=3)
pain.record_pain(str(uuid.uuid4()), 0.8, ["timeout", "deploy"], "deploy timed out")
warnings = pain.check_triggers(["deploy"])

API reference

MenteDB

Method Description
process_turn(user_message, assistant_response, turn_id, project_context, agent_id, session_id, user_id) Primary API. Process a conversation turn through the full cognitive pipeline
store(content, memory_type, embedding, agent_id, tags, created_at) Store a memory, returns its UUID
recall(query) Recall memories using MQL
search(embedding, k) Vector similarity search
search_text(query, k, tags, after, before) Similarity search with the configured embedding provider
get_memory(memory_id) Fetch one memory as a dict
relate(source, target, edge_type, weight, valid_from, valid_until) Add a relationship
forget(memory_id) Remove a memory
needs_enrichment() / run_enrichment(provider, current_turn) Check for and run sleeptime enrichment (needs an LLM)
close() Flush and close the database

Only one MenteDB instance can hold a data directory at a time; opening the same directory again raises a "locked by another process" error.

Types

MemoryType: episodic, semantic, procedural, anti_pattern, reasoning, correction

EdgeType: caused, before, related, contradicts, supports, supersedes, derived, part_of

License

Apache 2.0. See the repository root LICENSE file for details.

Metadata

Release files for mentedb 0.41.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for mentedb 0.41.1
File
mentedb-0.41.1-cp39-abi3-win_amd64.whl CPython 3.9 abi3 Windows x86-64 Details
mentedb-0.41.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.9 abi3 Linux glibc 2.17+ x86-64 Details
mentedb-0.41.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.9 abi3 Linux glibc 2.17+ ARM64 Details
mentedb-0.41.1-cp39-abi3-macosx_11_0_arm64.whl CPython 3.9 abi3 macOS 11.0+ ARM64 Details

Total release size: 32.3 MB

Release files / mentedb-0.41.1-cp39-abi3-win_amd64.whl

Download URL mentedb-0.41.1-cp39-abi3-win_amd64.whl
Size 6.1 MB
Tags CPython 3.9 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
f8c7a883e17013333676f3ff438f8c2d1d30a13bcc7811f5a3a777082ced43f3
BLAKE2b-256 checksum
How to use checksums
cb67dd9d21854a88caeb17bae8e2e0adecf6fda8e384e2ed33bfe94a41c81ed6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 19, 2026.

Transparency log

Release files / mentedb-0.41.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL mentedb-0.41.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 9.8 MB
Tags CPython 3.9 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
d189fe9560731e2431992a71d43d00d81a33b73a0a1110aec132715b4b12d620
BLAKE2b-256 checksum
How to use checksums
8d95574d2fd4ed1998cb65db498dd29a45ca4e6a21bacccf1d0605e5b23c158d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 19, 2026.

Transparency log

Release files / mentedb-0.41.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL mentedb-0.41.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 10.0 MB
Tags CPython 3.9 Linux glibc 2.17+ ARM64 abi3
SHA-256 checksum
How to use checksums
47a4ea372b7235b52f9b893fd8591a0e6f259504aa24df8fd326f6331c3dc316
BLAKE2b-256 checksum
How to use checksums
9059fb345fb9e59a666a7b26f55990301a5b0465df674c23249a834836a5d1e4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 19, 2026.

Transparency log

Release files / mentedb-0.41.1-cp39-abi3-macosx_11_0_arm64.whl

Download URL mentedb-0.41.1-cp39-abi3-macosx_11_0_arm64.whl
Size 6.3 MB
Tags CPython 3.9 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
46dbe9f8ee2010c3e6bac51c9fc702587258cb2b3c617d7a71ea5499e5a0ea94
BLAKE2b-256 checksum
How to use checksums
98a61cc8bba56a89da31e2dfe23f9f720a2465cbb4ce35892ee4d8c976fe4406
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 19, 2026.

Transparency log

Release history Release notifications | RSS feed

0.42.0

4 release files

This release

0.41.1 This release

4 release files

0.41.0

4 release files

0.40.0

4 release files

0.39.2

4 release files

0.39.1

4 release files

0.39.0

4 release files

0.38.0

4 release files

0.32.2

4 release files

0.32.1

4 release files

0.32.0

4 release files

0.31.0

4 release files

0.30.0

4 release files

0.29.0

4 release files

0.28.0

4 release files

0.27.3

4 release files

0.27.2

4 release files

0.27.1

4 release files

0.27.0

4 release files

0.26.0

4 release files

0.25.0

4 release files

0.24.6

4 release files

0.24.5

4 release files

0.24.4

4 release files

0.24.3

4 release files

0.21.1

4 release files

0.21.0

4 release files

0.20.4

4 release files

0.20.3

4 release files

0.20.2

4 release files

0.20.1

4 release files

0.20.0

4 release files

0.19.0

4 release files

0.18.0

4 release files

0.17.9

4 release files

0.17.8

4 release files

0.17.7

4 release files

0.17.6

4 release files

0.17.5

4 release files

0.17.4

4 release files

0.17.3

4 release files

0.17.2

4 release files

0.17.1

4 release files

0.17.0

4 release files

0.16.1

4 release files

0.16.0

4 release files

0.15.1

4 release files

0.15.0

4 release files

0.14.7

4 release files

0.14.6

4 release files

0.14.5

4 release files

0.14.4

4 release files

0.14.3

4 release files

0.14.1

4 release files

0.14.0

4 release files

0.13.1

4 release files

0.13.0

4 release files

0.12.6

4 release files

0.12.4

4 release files

0.12.3

4 release files

0.12.2

4 release files

0.12.1

4 release files

0.12.0

4 release files

0.11.7

4 release files

0.11.6

4 release files

0.11.5

4 release files

0.11.4

4 release files

0.9.2

3 release files

0.9.1

3 release files

0.9.0

3 release files

0.8.2

3 release files

0.8.1

3 release files

0.8.0

3 release files

0.7.0

3 release files

0.3.1

3 release files

0.2.9

3 release files

0.2.7

3 release files

0.2.5

3 release files

0.2.1

3 release files

0.1.0

3 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page