Back to Mindsdb

MindsDB Installation for Development

docs/contribute/install.mdx

26.1.03.5 KB
Original Source

If you want to contribute to the development of MindsDB, you need to install from source.

<Info> If you do not want to contribute to the development of MindsDB but simply install and use it, then [install MindsDB via Docker](/setup/self-hosted/docker). </Info>

Install MindsDB for Development

Here are the steps to install MindsDB from source. You can either follow the steps below or visit the provided link.

<Info> Before installing MindsDB from source, ensure that you use one of the following Python versions: `3.10.x`, `3.11.x`, `3.12.x`, `3.13.x`. </Info>
  1. Fork the MindsDB repository from GitHub.

  2. Clone the fork locally:

    bash
    git clone https://github.com/<username>/mindsdb.git
    
  3. Create a virtual environment:

    bash
    python -m venv mindsdb-venv
    
  4. Activate the virtual environment:

    Windows:

    bash
    .\mindsdb-venv\Scripts\activate
    

    macOS/Linux:

    bash
    source mindsdb-venv/bin/activate
    
  5. Install MindsDB with its local development dependencies:

    Install dependencies:

    bash
    cd mindsdb
    pip install -e .
    
  6. Start MindsDB:

    bash
    python -m mindsdb
    
    <Tip> By default, MindsDB starts the `http` and `mysql` APIs. You can define which APIs to start using the `api` flag as below.
    bash
    python -m mindsdb --api http,mysql
    

    If you want to start MindsDB without the graphical user interface (GUI), use the --no_studio flag as below.

    bash
    python -m mindsdb --no_studio
    
    </Tip>
<Info> Alternatively, you can use a makefile to install dependencies and start MindsDB:
bash
 make install_mindsdb
 make run_mindsdb
 ```
</Info>

Now you should see the following message in the console:

...

mindsdb.api.http.initialize: - GUI available at http://127.0.0.1:47334/ mindsdb.api.mysql.mysql_proxy.mysql_proxy: Starting MindsDB Mysql proxy server on tcp://127.0.0.1:47335 mindsdb.api.mysql.mysql_proxy.mysql_proxy: Waiting for incoming connections... mindsdb: mysql API: started on 47335 mindsdb: http API: started on 47334


You can access the MindsDB Editor at `localhost:47334`.


## Install dependencies

The core installation includes everything needed to run the Federated Query Engine and essential database capabilities.
The dependencies for many of the data or ML integrations are not installed by default.

If you need additional features — such as Agents, the Knowledge Base, MCP or A2A protocol — you can enable them through extras, rather than installing everything by default.

### Install Features via Extras

Optional integrations and features can be installed as needed using extras.

| Feature | Install command |
|---------|----------------|
| Agents / LLMs | `pip install ".[agents]"` |
| Knowledge Base | `pip install ".[kb]"` |
| Multiple features at once | `pip install ".[agents,knowledgebase]"` |
| Integrations | `pip install .[integration_name]` |

<Tip>
You can find all available [handlers here](https://github.com/mindsdb/mindsdb/tree/main/mindsdb/integrations/handlers).
</Tip>

## What's Next?

Now that you installed and started MindsDB locally, go ahead and find out how to create and train a model using the [`CREATE MODEL`](/sql/create/model) statement.

Check out the [Use Cases](/use-cases/overview) section to follow tutorials that cover Large Language Models, Chatbots, Time Series, Classification, and Regression models, Semantic Search, and more.