AsyncMongoDb class.
Usage
You need to provide eitherdb_url or client. The following example uses db_url.
Run MongoDB
Install docker desktop and run MongoDB on port 27017 using:async_mongodb_for_agent.py
Documentation Index
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
AsyncMongoDb class.
db_url or client. The following example uses db_url.
docker run -d \
--name local-mongo \
-p 27017:27017 \
-e MONGO_INITDB_ROOT_USERNAME=mongoadmin \
-e MONGO_INITDB_ROOT_PASSWORD=secret \
mongo
"""
Run `uv pip install agno openai motor pymongo` to install dependencies.
"""
from agno.agent import Agent
from agno.db.mongo import AsyncMongoDb
from agno.tools.hackernews import HackerNewsTools
# MongoDB connection settings
db_url = "mongodb://localhost:27017"
db = AsyncMongoDb(db_url=db_url)
agent = Agent(
db=db,
tools=[HackerNewsTools()],
add_history_to_context=True,
)
agent.print_response("How many people live in Canada?")
agent.print_response("What is their national anthem called?")
| Parameter | Type | Default | Description |
|---|---|---|---|
id | Optional[str] | - | The ID of the database instance. UUID by default. |
db_client | Optional[MongoClient] | - | The MongoDB client to use. |
db_name | Optional[str] | - | The name of the database to use. |
db_url | Optional[str] | - | The database URL to connect to. |
session_collection | Optional[str] | - | Name of the collection to store sessions. |
memory_collection | Optional[str] | - | Name of the collection to store memories. |
metrics_collection | Optional[str] | - | Name of the collection to store metrics. |
eval_collection | Optional[str] | - | Name of the collection to store evaluation runs. |
knowledge_collection | Optional[str] | - | Name of the collection to store knowledge documents. |
traces_collection | Optional[str] | - | Name of the collection to store traces. |
spans_collection | Optional[str] | - | Name of the collection to store spans. |
Was this page helpful?