MindsDB is a popular open-source query engine for AI analytics, powering AI agents that need to answer questions directly from databases, data warehouses, and applications, with no ETL required.
| CONVERSATIONAL ANALYTICS AGENTS | SEMANTIC SEARCH AGENTS |
|---|---|
| Get precise, data-driven answers using natural language. Unify and query data across sources (MySQL, Salesforce, Shopify, etc.), without ETL. Watch video |
Ground LLM responses in your most relevant internal knowledge. Search across unstructured sources like documents, support tickets, Google Drive, and more. Watch video |
MindsDB follows a simple workflow: Connect → Unify → Respond. At the center is an SQL-compatible data language with additional constructs for searching unstructured data, managing workflows (jobs/triggers), and building agents.
| Connect | Universal data access: Give your agents federated access to 200+ live data sources (Postgres, MongoDB, Slack, files, and more). |
| Unify | Dynamic context engine: Fuse structured tables with vectorized data (text, PDFs, HTML) inside a Knowledge Base. |
| Respond | Autonomous reasoning: Deploy agents that blend and retrieve data points across your stack to produce grounded answers. |
Users can install MindsDB via Docker, Docker Extension, or PyPI.
Here is how to pull and run MindsDB via Docker:
docker run --name mindsdb_container \
-e MINDSDB_APIS=http,mysql \
-p 47334:47334 -p 47335:47335 \
mindsdb/mindsdb:latestFollow the quickstart guide to get started with MindsDB using our demo data.
Retrieve and analyze data from over 200 data sources in one SQL dialect. For AI agents, this means faster response time, better accuracy, and lower token consumption.
--use SQL to aggregate pipeline data from Salesforce
SELECT SUM(ExpectedRevenue) AS open_pipeline
FROM salesforce.opportunities
WHERE close_date >= CURDATE()
--use the same dialect to retrieve even from a non-SQL database, like MondoDB
SELECT COUNT(*) AS negative_emails_last_30_days
FROM mongodb.support_tickets
WHERE sentiment = 'negative'
AND created_at >= CURRENT_DATE - INTERVAL '30 days';Create views and join data even from different types of data systems.
--join MongoDB and Salesforce data
CREATE VIEW risky_renewals AS (
SELECT *
FROM mongodb.support_tickets AS reviews
JOIN salesforce.opportunities AS deals
ON reviews.customer_domain = deals.customer_domain
WHERE deals.type = "renewal"
AND reviews.sentiment = "negative"
);Join vectorized and structured data inside a knowledge base. Combine semantic search with precise metadata criteria in a single SQL query.
--create a knowledge base for customer issues
CREATE KNOWLEDGE_BASE customers_issues
USING
storage = my_vector.db,
content_columns = ['ticket_description'];
metadata_columns = ['customer_name', 'segment', 'revenue', 'is_pending_renewal'];
--find large customers who submitted ticket related to data security topics
SELECT * FROM customers_issues
WHERE content = 'data security'
AND
is_pending_renewal = 'true'.
revenue > 1000000;Use MindsDB pre-packaged data agents and connect them with your own. See how to use MindsDB via API or MCP.
CREATE AGENT my_agent
USING
model = {
"provider": "openai",
"model_name" : "gpt-xx",
"api_key": "sk-..."
},
data = {
"knowledge_bases": ["mindsdb.customer_issues"],
"tables": ["salesforce.opportunities", "postgres.sales", "mongodb.support_tickets"]
},
prompt_template = 'my prompt template and agent guidance';See MindsDB’s recommended usage of agents here and how to automate workflows with jobs.
- Enterprise Knowledge Search (example)
- Advanced Semantic Search (example)
- Customer Support Automation (example1, example2)
- Intelligent Content Discovery (example)
- Financial Analysis Agents (example)
- Real-time AI-powered analytics (example)
- Conversational Data Assistants (example)
- CRM Intelligence (example)
- Compliance & Customer Intelligence (example)
- Conversation Intelligence (example) Subscribe to our (blog) for more
Stuck on a query? Found a bug? We’re here to help.
| Ask a question | Join our Slack Community. |
| Report a bug | Open a GitHub Issue. Please include reproduction steps! |
| Get commercial support | Contact the MindsDB Team for enterprise SLAs and custom solutions. |
Security Note: If you find a security vulnerability, please do not open a public issue. Refer to our security policy for reporting instructions.
MindsDB is open source and contributions are welcome! You can submit code changes through pull requests or by opening issues to report bugs, suggest new features, or enhancements.
Ways you can help:
- Develop a database integration
- Develop an app integration
- Identify and fix bugs
How to contribute
- Read the contribution guide to get set up.
- Browse open issues.
- Join the #contributors channel in Slack.
- Explore community rewards and programs.