One governed loop, every step recorded.

Datris is the open-source data control plane for AI agents. An agent asks for data; the platform acquires it, validates it, lands it in the stores you already run, and returns it with a receipt.

One agent-driven loop

Acquire, validate, land, observe, explain, repair. Same loop every run, same audit trail every time — so the agent's job is reasoning about the data, not improvising infrastructure.

🎯
Acquire
AI-Generated Taps
Describe a source in plain English — an API, a vendor drop, a folder of PDFs. Datris generates a Python tap, wires up scheduling, and brokers credentials through Vault. Schema is auto-generated from a sample.
Validate
Plain-English Rules
Data quality rules described in natural language and executed on every row. Bad records quarantine at the door — not after they pollute your warehouse.
🚀
Land
Multi-Destination Pipelines
One pipeline lands the same records in Postgres, MongoDB, Snowflake, Databricks, S3, and vector stores in parallel. Idempotent by key — reruns don't double-write.
👁
Observe
Provenance & Job State
Every run gets a durable record: which script, which commit, which inputs, which rows landed. Agents poll job status through MCP; humans see it in the UI. The transcript is not the system of record.
🩹
Explain & Repair
AI Error Explanation
When something fails, Datris analyzes the error chain and explains the root cause in plain English. The agent reads that, adjusts, and retries — instead of pasting stack traces into another chat.

Agents don't need a new data platform. They need a way into yours.

Datris sits beside the warehouse and the lake, never in front of them. It is the intake valve: the agent asks, Datris acquires and validates, and the rows land in the stores your teams already query. Nothing moves out of your stack and nothing new becomes the system of record.

The write path
  • SnowflakeAnalytics warehouse
  • DatabricksLakehouse
  • PostgreSQLOperational store
  • MongoDBDocuments
  • S3 / MinIOObject storage, Parquet
  • pgvector · Qdrant · Weaviate · Milvus · ChromaVector search

One pipeline lands the same validated records in several of these in parallel, idempotent by key. Keep the intake layer neutral and every future architecture decision stays yours.


Enforced by the platform, not by the prompt

The controls a risk committee asks about, in the open-source build, on by default. This is the part of Datris a head of data repeats to an auditor.

Agent Policy
Per-action allow, approve, or refuse, enforced by the platform rather than by a prompt. An agent that is not allowed to delete a pipeline cannot, no matter what it was told.
The AI approval you already have →
Audit log
Every create, change, run, delete, login, and denied request, attributed to a login or API key. Export to CSV or mirror to your SIEM.
Stop giving agents master keys →
Provenance
Every landed row cites the pipeline, the run, the script commit, and the source. Agent-written scripts are versioned in git, so what ran is what you can diff.
If an agent wrote it, git should remember it →
Lineage
Where each dataset came from and where it went, across every destination a pipeline writes to.
Validate once, deliver everywhere →

Your AI agents are
first-class pipeline operators

Datris ships with a native MCP server. Claude, Cursor, OpenClaw, and any MCP-compatible AI agent can register pipelines, trigger jobs, and query your structured, document, and vector data in real time — all through natural conversation.

Transports: stdioSSE (Server-Sent Events)
Compatible agents:
ClaudeCursorOpenClawAny MCP-compatible agent
MCP Capabilities
  • Register pipelines and generate schemas from sample data
  • Create, schedule, and run AI-generated taps
  • Ingest documents into vector databases (extract → chunk → embed)
  • Upload data for processing
  • Trigger and monitor pipeline jobs
  • Profile data and get AI insights
  • Semantic search across vector databases
  • Query PostgreSQL and MongoDB directly
  • Manage credentials via Vault — without ever holding the key
Example prompt
"Generate a tap for our prime broker margin API, schedule it daily, validate that 'all account_ids must be present and balances must be non-negative', and load into Postgres."

Speaks every data language

Ingest structured data, unstructured documents, and archives. Output to vector stores, structured stores, or optimized columnar formats.

Format Input Default Destination
CSV SQL DB
JSON NoSQL DB
XML NoSQL DB
Excel (.xlsx) SQL DB
Parquet SQL DB
ORC SQL DB
PDF Vector DB
Word (.docx) Vector DB
PowerPoint (.pptx) Vector DB
HTML Vector DB
Email (.eml) Vector DB
EPUB Vector DB
Archives (.zip, .tar) Unpacked, routed
Plain Text Vector DB

Destinations are fully configurable. Route any format to any target — SQL databases, NoSQL stores, vector databases, REST endpoints, Kafka topics, or ActiveMQ queues.


Full RAG pipeline built in

Extract, chunk, embed, and upsert documents into any major vector database. Build retrieval-augmented generation workflows without leaving your pipeline.

✂️
Chunking Strategies
Choose the right chunking strategy for your use case:
Fixed-sizeSentenceParagraphRecursive
🧠
Embedding Providers
Generate embeddings with cloud or local models:
TEI bge-m3 (bundled)OpenAIOllama (local)
📄
Document Extraction
Extract text from virtually any document format:
PDFWordPowerPointHTMLEmailEPUBPlain Text
📒
Document Ledger
Content-hashed ledger of every document seen. Re-runs skip unchanged files automatically — no re-embedding the same folder every night, no surprise OpenAI bill.
RAG Pipeline Flow
1 Document Extraction
2 Chunking
3 Embeddings
4 Vector Upsert