About: Hi, I'm K Om Senapati, a B Tech CSE student at OUTR, Bhubaneswar, and a Pythonista passionate about hackathons, teamwork, and exploring new technologies.
Location:
Bhubaneswar, India
Joined:
Sep 5, 2023
Building a Smart Knowledge Platform with MindsDB
Publish Date: Jun 22 '25
77 16
Working with structured data like CSVs or JSON often means writing queries, managing schemas, and building pipelines just to answer simple questions. If you want to make that data interactive like asking natural language questions or building an AI agent on top of it, things get complicated fast. You usually need to write code, understand vector stores, manage embeddings, and stitch tools together.
That’s the problem I faced.
I wanted a simple way to:
Upload structured data
Turn it into something queryable with natural language
Build an AI agent that could talk about that data
The Solution: MindsDB
That’s where MindsDB came in.
MindsDB recently added support for Knowledge Bases (KBs). You can now ingest structured data into a KB, use an embedding model (cloud or local), and build multi-step workflows or AI agents on top of it without writing code.
This release immediately clicked with me. I had already used MindsDB’s AI Table feature to build a quiz app. It lets you interact LLMs so I was familiar with the platform and trusted its approach.
With this KBs + Agents integration, I no longer needed to code the whole pipeline. I just wrote a couple of SQL queries in the MindsDB GUI, and voilà — I had an AI agent ready to go.
MindsDB Philosophy
What I especially liked is how MindsDB thinks about data and intelligence. Their philosophy is:
Connect: Connect data from hundreds of data sources
Unify: Unify data from multiple (structured and unstructured) data sources within MindsDB, enabling federated queries as if all data resides in a single database
Respond: Use agents to give intelligent, context-aware responses from that unified data
As a Python, and SQL guy, this felt like the right mix of practicality and power.
About Agent Hub
Agent Hub works with structured data: CSV and JSON, Knowledge Bases, and AI Agents.
Features:
User can upload structured data.
User can create a KB and ingest the data into it using any OpenAI-compatible API embedding model (cloud/local) or Ollama models.
User can query/summarize the KB and also evaluate it from test_data.
User can add JOBS to ingest data from a data source into the KB.
User can create AI Agents and chat with them.
For structured data, I needed a database. I found out that MindsDB has a files database, which is perfect for storing user-uploaded data files.
Then I created a mini MindsDB package to encompass all the MindsDB logic using the MindsDB Python SDK and SQL queries to do all the operations:
Create a project for each user
Prefix files with the username
Create KBs
Ingest data into KBs
Delete KBs
Query and summarize the KB using AI Table
Evalauate KBs
Setup JOB for data ingestion
Create and use AI Agents
Then I created a simple Flask app which used a SQLite database and SQLAlchemy as the ORM. I used HTML Jinja2 templates. Yeah, no frontend framework.
Python is 💖.
Agent Hub is an AI collaboration platform designed to transform your data into intelligent AI agents.
🤖 Agent Hub
Note
Agent Hub is an AI collaboration platform designed to transform your data into intelligent AI agents. With Agent Hub, you can unlock powerful insights and automate tasks effortlessly by creating tailored AI agents, building comprehensive knowledge bases, and managing your data files seamlessly.
🎬 Project Showcase
Demo Video
Blog Post
🌟 Features
Agent Hub features intro:
AI Agents – Create and manage AI agents tailored to your specific needs for intelligent responses.
Knowledge Bases – Build comprehensive knowledge bases from your data for efficient querying and insights.
File Management – Upload and organize your files to integrate seamlessly with AI processes.
💻 Installation
Follow these steps to set up and run Agent Hub:
Setup MindsDB and Ollama with Docker (docker-compose.yml is provided):
docker-compose up -d
Install nomic-embed-text in Ollama container:
docker exec ollama ollama pull nomic-embed-text
Create KB Summarizer Model and Connect Pgvector in MindsDB…
I ran into an issue with MindsDB when performing operations on a KB using an embedding model from Ollama. It would throw an "Event Loop Closed" error on the first attempt. Strangely, repeating the same operation a second time worked just fine. So, I handled that in the app using a simple try-catch with a retry.
For the frontend, I kind of vibe-coded the Jinja2 templates. But hey, the idea is mine 😜
Building this was fairly easy as all the heavy lifting is done by MindsDB.
I just had to trigger the right queries from the Flask backend.
Use Cases
Upload structured data like logs, reports, or exports
Query or summarize data with natural language
Create intelligent agents trained on your data
Final Thoughts
This is just an MVP, but it opens up a lot of possibilities.
Right now, it works with structured data like CSV and JSON but it can easily be extended to handle other formats like web pages, PDFs, or Word docs. MindsDB’s Connect layer also makes it easy to bring in data from external databases and APIs, so the potential to scale and integrate is built-in.
What I’ve built is a starting point: a way to turn raw, structured data into something intelligent. It’s simple, but powerful. And with MindsDB handling the heavy lifting, it’s also surprisingly easy to build.
If you found this article useful, share it with your peers and community to spread the word about this.
If you’ve fallen victim to a fake investment platform and thought your money was gone for good, don’t give up just yet. I was in that exact position — until I came across Mrs. Adelynn Richardson. Thanks to her expertise, I was able to r°e°c°o°v°e°r my lost funds. She’s helped many others too, and I highly r°e°c°o°m°m°e°n°d reaching out if you need support. Contact her on W°h°a°t°s°A°p°p at +1 (820) 201-7380.
Liked the project!!