What you get
- A knowledge base in the Atlas cluster you already operate
- Configuration by connection string, database, collection and index name
- The same agent configuration as every other store
How it works in EDDI
- Create a vector search index in Atlas and note the database, collection and index names.
- Create a RagConfiguration with
storeType: "mongodb-atlas"and the store parameters. - Bind it with an
eddi://ai.labs.ragworkflow step. - Select it by name in the LLM task and ingest documents.
Configuration
Taken from the EDDI documentation. Placeholders such as your-agent-id are yours to replace.
{
"name": "product-docs",
"embeddingProvider": "openai",
"embeddingParameters": {
"model": "text-embedding-3-small",
"apiKey": "${vault:openai-key}"
},
"storeType": "mongodb-atlas",
"storeParameters": {
"connectionString": "${vault:atlas-connection-string}",
"databaseName": "eddi",
"collectionName": "product_docs",
"indexName": "vector_index"
},
"chunkStrategy": "recursive",
"chunkSize": 512,
"chunkOverlap": 64,
"maxResults": 5,
"minScore": 0.6
}// 1. workflow step: binds the knowledge base to the agent
{ "type": "eddi://ai.labs.rag",
"extensions": {},
"config": { "uri": "eddi://ai.labs.rag/ragstore/rags/{ragId}?version=1" } }
// 2. LLM task: selects it by the "name" of the RagConfiguration
{ "tasks": [{
"actions": ["*"],
"type": "openai",
"knowledgeBases": [{ "name": "product-docs", "maxResults": 5, "minScore": 0.7 }],
"parameters": { "systemMessage": "You are a helpful assistant." }
} ] }Governance
- Keep the connection string in the vault, not in the configuration.
- Embedding calls send document text to the embedding provider you configure.
- Atlas access control and network rules apply to the vectors.
Good to know
- Replacing a document's chunks is expected to work with Atlas but is not covered by tests. Without it, re-ingested documents can leave stale chunks.
Related integrations
Configuration and behavior on this page follow the EDDI documentation, checked on 2026-10-14. Field names and defaults can change between releases, so confirm them in the docs for your version.