> ## Documentation Index
> Fetch the complete documentation index at: https://docs.praison.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# MongoDB

> MongoDB state store setup

# MongoDB

MongoDB for state storage and document persistence.

## Installation

```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
pip install "praisonaiagents[tools]"
```

## Docker Setup

```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
docker run -d --name praison-mongo -p 27017:27017 mongo
```

## Quick Start

```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
from praisonaiagents import Agent

agent = Agent(
    name="Assistant",
    instructions="You are a helpful assistant.",
    memory={
        "backend": "mongodb",
        "db": "mongodb://localhost:27017/praisonai",
        "session_id": "my-session"
    }
)

response = agent.start("Hello!")
print(response)
```

## Connection String Format

```
mongodb://localhost:27017/database
mongodb://user:password@host:port/database
```

## Environment Variables

```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
export PRAISON_STATE_URL="mongodb://localhost:27017/praisonai"
```

```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
import os
from praisonaiagents import Agent

agent = Agent(
    name="Assistant",
    memory={"db": os.getenv("PRAISON_STATE_URL")}
)
```

## CLI

```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
# Validate connection
praisonai persistence doctor \
    --state-url "mongodb://localhost:27017/praisonai"
```
