Skip to content
Merged
Show file tree
Hide file tree
Changes from 112 commits
Commits
Show all changes
117 commits
Select commit Hold shift + click to select a range
3caf709
This is adding mindsdb as a datasource, it expands toolbox to hundred…
torrmal Jul 13, 2025
d4d1b70
add integration test config
duwenxin99 Jul 23, 2025
e8607d4
rebase
duwenxin99 Jul 24, 2025
32a0ac9
rebase
duwenxin99 Jul 24, 2025
a04690b
mindsdb tool imported
torrmal Jul 24, 2025
6d17443
password optional for mindsdb
torrmal Jul 25, 2025
3d823a4
update int test
duwenxin99 Jul 24, 2025
e3027a3
if not exist stmt
duwenxin99 Jul 24, 2025
4d5dcc3
nit
duwenxin99 Jul 24, 2025
edcd0fe
fix port
duwenxin99 Jul 25, 2025
635b512
fix port
duwenxin99 Jul 25, 2025
f217d90
fix host
duwenxin99 Jul 25, 2025
377f7a3
adding docs on how to connect
torrmal Jul 30, 2025
204e58c
update test config
duwenxin99 Aug 11, 2025
a4a7d8c
feat: reorder mindsdb tool imports alphabetically
setohe0909 Aug 22, 2025
efecfa6
feat: add access token parameter to Invoke method in mindsdb tools
setohe0909 Aug 22, 2025
481ca04
feat: add MindsDB environment variables to test configuration
setohe0909 Aug 22, 2025
c830709
Update integration.cloudbuild.yaml
kurtisvg Aug 22, 2025
74a21b4
Update integration.cloudbuild.yaml
kurtisvg Aug 22, 2025
c90a560
Update integration.cloudbuild.yaml
kurtisvg Aug 22, 2025
c47b3b9
Update integration.cloudbuild.yaml
kurtisvg Aug 22, 2025
dcc1f13
Refactor MindsDB integration tests for improved clarity and functiona…
setohe0909 Aug 22, 2025
7319955
Enhance MindsDB integration tests with new utility function and impro…
setohe0909 Aug 23, 2025
2e4b07d
Refactor MindsDB integration tests for improved clarity and functiona…
setohe0909 Aug 25, 2025
0291d02
Enhance MindsDB integration tests with new configuration options and …
setohe0909 Aug 26, 2025
9df1b00
Merge branch 'main' into main
duwenxin99 Aug 28, 2025
a685b19
Update internal/tools/mindsdb/mindsdbsql/mindsdbsql.go
setohe0909 Sep 2, 2025
00b2498
Update internal/tools/mindsdb/mindsdbexecutesql/mindsdbexecutesql.go
setohe0909 Sep 2, 2025
09e5ccf
Update internal/tools/mindsdb/mindsdbexecutesql/mindsdbexecutesql.go
setohe0909 Sep 2, 2025
be1e21a
Update internal/tools/mindsdb/mindsdbsql/mindsdbsql.go
setohe0909 Sep 2, 2025
692dee4
Add RequiresClientAuthorization method to mindsdbexecutesql and minds…
setohe0909 Sep 2, 2025
cdfb1ae
Merge main: Resolve conflicts while preserving MindsDB-specific test …
setohe0909 Sep 2, 2025
dac74d2
Remove deprecated Docker Compose files and integration script; update…
setohe0909 Sep 2, 2025
8742949
Merge pull request #4 from torrmal/test-improves
setohe0909 Sep 2, 2025
03c6139
Merge branch 'main' into main
duwenxin99 Sep 3, 2025
eb29532
update test config
duwenxin99 Sep 3, 2025
de43667
update test config
duwenxin99 Sep 3, 2025
bd61492
update test queries to include mindsdb db prefix
duwenxin99 Sep 3, 2025
5e4d564
Merge branch 'main' into main
duwenxin99 Sep 3, 2025
1d9da04
fix table name
duwenxin99 Sep 3, 2025
fe3d12c
Merge branch 'main' into main
duwenxin99 Sep 3, 2025
41943f4
fix tmpl param queries and add header
duwenxin99 Sep 3, 2025
2f27761
fix lint
duwenxin99 Sep 3, 2025
0bc7944
remove template parameter test
duwenxin99 Sep 3, 2025
6b92f95
add unit tests
duwenxin99 Sep 3, 2025
c0c1269
update tools config
duwenxin99 Sep 3, 2025
0cfb564
refactor MindsDB integration tests to use standard MySQL functions an…
setohe0909 Sep 4, 2025
fb8b458
Merge branch 'main' into main
setohe0909 Sep 18, 2025
aad87da
Merge branch 'main' into main
duwenxin99 Sep 19, 2025
d6098d7
Implement MindsDB tool configurations and enhance integration tests
setohe0909 Sep 24, 2025
19206cb
Merge upstream changes and resolve conflicts
setohe0909 Sep 24, 2025
b8b4dd8
Merge branch 'main' into main
duwenxin99 Sep 25, 2025
0fbfebd
Merge branch 'main' into main
setohe0909 Sep 26, 2025
628ef74
Merge branch 'main' into main
setohe0909 Sep 26, 2025
fbf553b
Merge branch 'main' into main
setohe0909 Sep 26, 2025
8f03d8c
refactor(tests): streamline MindsDB tool configuration and enhance SQ…
setohe0909 Sep 26, 2025
4d6f8f3
refactor(tests): enhance MindsDB tool Added various tools with templa…
setohe0909 Sep 26, 2025
b6f07f4
Merge branch 'main' into main
setohe0909 Sep 27, 2025
421d955
Merge branch 'main' into main
setohe0909 Sep 29, 2025
0bd326d
fix: update MCP Manifest input schema handling in MindsDB tools
setohe0909 Sep 29, 2025
28b0557
test: update MindsDB tool integration tests with improved SQL stateme…
setohe0909 Sep 29, 2025
9c9cff5
Merge branch 'main' into main
setohe0909 Sep 29, 2025
51649e3
Merge branch 'main' into main
setohe0909 Sep 29, 2025
b79192a
test: add MindsDB tool response configurations for regular SQL parame…
setohe0909 Sep 30, 2025
bb40fe4
Merge pull request #5 from torrmal/test-options
setohe0909 Sep 30, 2025
193efcf
Merge branch 'main' into main
setohe0909 Sep 30, 2025
333562c
removing redundant functions
setohe0909 Sep 30, 2025
6c483e7
Merge branch 'main' into main
setohe0909 Sep 30, 2025
6c0e2c5
DisableSelect1AuthTest was removed
setohe0909 Sep 30, 2025
c32d5b1
refactor(tests): remove unused MindsDB tool configuration functions
setohe0909 Sep 30, 2025
3c84768
Moving the execute-sql configs
setohe0909 Sep 30, 2025
b888538
remove unused MySQL environment variables from integration cloudbuil…
setohe0909 Sep 30, 2025
9999016
Merge branch 'main' into main
setohe0909 Sep 30, 2025
d1c8b47
test: add comprehensive MindsDB integration tests
setohe0909 Sep 30, 2025
9d8e6eb
Merge branch 'main' into main
setohe0909 Sep 30, 2025
4ffb28b
This enhances the testing framework and ensures compatibility with Mi…
setohe0909 Sep 30, 2025
dad23b1
Merge branch 'main' into main
setohe0909 Oct 1, 2025
9153e8d
Merge branch 'main' into main
setohe0909 Oct 1, 2025
1691920
Merge branch 'main' into main
setohe0909 Oct 1, 2025
2b5dccf
Remove MySQL user and password secrets from integration cloudbuild co…
setohe0909 Oct 1, 2025
8db6d69
Merge branch 'main' into main
setohe0909 Oct 1, 2025
869db63
Merge branch 'main' into main
duwenxin99 Oct 1, 2025
b14c9e2
Enhance SQL queries in MindsDB integration tests with ORDER BY clause…
setohe0909 Oct 2, 2025
91e68e4
Merge branch 'main' into main
setohe0909 Oct 2, 2025
533dbd1
Merge branch 'main' into main
setohe0909 Oct 2, 2025
d988396
Merge branch 'main' into main
setohe0909 Oct 2, 2025
049f40d
Merge branch 'main' into main
setohe0909 Oct 2, 2025
9547a55
Merge branch 'main' into main
setohe0909 Oct 9, 2025
0c6fb39
Merge branch 'main' into main
setohe0909 Oct 14, 2025
e9eff30
Merge branch 'main' into main
setohe0909 Oct 16, 2025
a5b0158
Merge branch 'main' into main
setohe0909 Oct 17, 2025
3c87c6c
Merge upstream/main into fork
setohe0909 Oct 28, 2025
36d0fa1
remove manual parameter interpolation as MindsDB now supports MySQL p…
setohe0909 Oct 29, 2025
c013570
Merge branch 'main' into main
setohe0909 Oct 29, 2025
fe675b4
Merge branch 'main' into main
setohe0909 Oct 29, 2025
67d7e73
Merge branch 'main' into main
setohe0909 Oct 29, 2025
5294125
Merge branch 'main' into main
setohe0909 Oct 29, 2025
e5e6d43
Merge branch 'main' into main
setohe0909 Oct 29, 2025
0401881
Merge branch 'main' into main
setohe0909 Oct 29, 2025
d6e8597
Merge branch 'main' into main
setohe0909 Oct 30, 2025
3fbb9b8
Merge branch 'main' into main
setohe0909 Oct 30, 2025
aba5e6f
Merge branch 'main' into main
setohe0909 Oct 30, 2025
c9400ab
Merge branch 'main' into main
setohe0909 Oct 31, 2025
a676d04
Merge branch 'main' into main
setohe0909 Oct 31, 2025
f03b4b1
Merge branch 'main' into main
setohe0909 Oct 31, 2025
b85e341
Merge branch 'main' into main
setohe0909 Nov 3, 2025
1722762
Merge branch 'main' into main
duwenxin99 Nov 3, 2025
621b449
cleaned up the comment
setohe0909 Nov 3, 2025
3386c75
refactor: remove unused test cases from MindsDB integration tests and…
setohe0909 Nov 3, 2025
14662b0
Merge branch 'main' into main
setohe0909 Nov 3, 2025
120a031
Merge branch 'main' into main
setohe0909 Nov 4, 2025
4f64fcd
Merge branch 'main' into main
duwenxin99 Nov 4, 2025
e383e34
linter errors
setohe0909 Nov 4, 2025
6b1becc
Merge branch 'main' into main
duwenxin99 Nov 4, 2025
db3c84d
Merge branch 'main' into main
duwenxin99 Nov 4, 2025
7b1d5d0
Merge branch 'main' into main
duwenxin99 Nov 5, 2025
2552ec5
Merge branch 'main' into main
duwenxin99 Nov 5, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions .ci/integration.cloudbuild.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -556,6 +556,27 @@ steps:
"Looker" \
looker \
looker

- id: "mindsdb"
name: golang:1
waitFor: ["compile-test-binary"]
entrypoint: /bin/bash
env:
- "GOPATH=/gopath"
- "MINDSDB_PORT=$_MINDSDB_PORT"
- "MINDSDB_DATABASE=$_MINDSDB_DATABASE"
- "SERVICE_ACCOUNT_EMAIL=$SERVICE_ACCOUNT_EMAIL"
secretEnv: ["MINDSDB_HOST", "MINDSDB_USER", "MINDSDB_PASS", "CLIENT_ID"]
volumes:
- name: "go"
path: "/gopath"
args:
- -c
- |
.ci/test_with_coverage.sh \
"MindsDB" \
mindsdb \
mindsdb

- id: "cloud-sql"
name: golang:1
Expand Down Expand Up @@ -821,6 +842,12 @@ availableSecrets:
env: OCEANBASE_USER
- versionName: projects/$PROJECT_ID/secrets/oceanbase_pass/versions/latest
env: OCEANBASE_PASSWORD
- versionName: projects/$PROJECT_ID/secrets/mindsdb_host/versions/latest
env: MINDSDB_HOST
- versionName: projects/$PROJECT_ID/secrets/mindsdb_user/versions/latest
env: MINDSDB_USER
- versionName: projects/$PROJECT_ID/secrets/mindsdb_pass/versions/latest
env: MINDSDB_PASS
- versionName: projects/$PROJECT_ID/secrets/yugabytedb_host/versions/latest
env: YUGABYTEDB_HOST
- versionName: projects/$PROJECT_ID/secrets/yugabytedb_user/versions/latest
Expand Down Expand Up @@ -887,6 +914,8 @@ substitutions:
_TRINO_SCHEMA: "default"
_OCEANBASE_PORT: "2883"
_OCEANBASE_DATABASE: "oceanbase"
_MINDSDB_PORT: "47335"
_MINDSDB_DATABASE: "mindsdb_test"
_YUGABYTEDB_DATABASE: "yugabyte"
_YUGABYTEDB_PORT: "5433"
_YUGABYTEDB_LOADBALANCE: "false"
Expand Down
2 changes: 1 addition & 1 deletion .hugo/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 4 additions & 2 deletions cmd/root.go
Original file line number Diff line number Diff line change
Expand Up @@ -98,8 +98,8 @@ import (
_ "github.com/googleapis/genai-toolbox/internal/tools/firestore/firestorevalidaterules"
_ "github.com/googleapis/genai-toolbox/internal/tools/http"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookeradddashboardelement"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookercreateprojectfile"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookerconversationalanalytics"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookercreateprojectfile"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookerdeleteprojectfile"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookerdevmode"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookergetconnectiondatabases"
Expand Down Expand Up @@ -128,6 +128,8 @@ import (
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookerqueryurl"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookerrunlook"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookerupdateprojectfile"
_ "github.com/googleapis/genai-toolbox/internal/tools/mindsdb/mindsdbexecutesql"
_ "github.com/googleapis/genai-toolbox/internal/tools/mindsdb/mindsdbsql"
_ "github.com/googleapis/genai-toolbox/internal/tools/mongodb/mongodbaggregate"
_ "github.com/googleapis/genai-toolbox/internal/tools/mongodb/mongodbdeletemany"
_ "github.com/googleapis/genai-toolbox/internal/tools/mongodb/mongodbdeleteone"
Expand Down Expand Up @@ -196,6 +198,7 @@ import (
_ "github.com/googleapis/genai-toolbox/internal/sources/firestore"
_ "github.com/googleapis/genai-toolbox/internal/sources/http"
_ "github.com/googleapis/genai-toolbox/internal/sources/looker"
_ "github.com/googleapis/genai-toolbox/internal/sources/mindsdb"
_ "github.com/googleapis/genai-toolbox/internal/sources/mongodb"
_ "github.com/googleapis/genai-toolbox/internal/sources/mssql"
_ "github.com/googleapis/genai-toolbox/internal/sources/mysql"
Expand Down Expand Up @@ -311,7 +314,6 @@ func NewCommand(opts ...Option) *Command {
flags.BoolVar(&cmd.cfg.TelemetryGCP, "telemetry-gcp", false, "Enable exporting directly to Google Cloud Monitoring.")
flags.StringVar(&cmd.cfg.TelemetryOTLP, "telemetry-otlp", "", "Enable exporting using OpenTelemetry Protocol (OTLP) to the specified endpoint (e.g. 'http://127.0.0.1:4318')")
flags.StringVar(&cmd.cfg.TelemetryServiceName, "telemetry-service-name", "toolbox", "Sets the value of the service.name resource attribute for telemetry data.")

// Fetch prebuilt tools sources to customize the help description
prebuiltHelp := fmt.Sprintf(
"Use a prebuilt tool configuration by source type. Cannot be used with --tools-file. Allowed: '%s'.",
Expand Down
18 changes: 18 additions & 0 deletions cmd/root_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -1248,6 +1248,7 @@ func TestPrebuiltTools(t *testing.T) {
postgresconfig, _ := prebuiltconfigs.Get("postgres")
spanner_config, _ := prebuiltconfigs.Get("spanner")
spannerpg_config, _ := prebuiltconfigs.Get("spanner-postgres")
mindsdb_config, _ := prebuiltconfigs.Get("mindsdb")
sqlite_config, _ := prebuiltconfigs.Get("sqlite")
neo4jconfig, _ := prebuiltconfigs.Get("neo4j")
alloydbobsvconfig, _ := prebuiltconfigs.Get("alloydb-postgres-observability")
Expand Down Expand Up @@ -1327,6 +1328,12 @@ func TestPrebuiltTools(t *testing.T) {
t.Setenv("MSSQL_USER", "your_mssql_user")
t.Setenv("MSSQL_PASSWORD", "your_mssql_password")

t.Setenv("MINDSDB_HOST", "localhost")
t.Setenv("MINDSDB_PORT", "47334")
t.Setenv("MINDSDB_DATABASE", "your_mindsdb_db")
t.Setenv("MINDSDB_USER", "your_mindsdb_user")
t.Setenv("MINDSDB_PASS", "your_mindsdb_password")

t.Setenv("LOOKER_BASE_URL", "https://your_company.looker.com")
t.Setenv("LOOKER_CLIENT_ID", "your_looker_client_id")
t.Setenv("LOOKER_CLIENT_SECRET", "your_looker_client_secret")
Expand All @@ -1342,6 +1349,7 @@ func TestPrebuiltTools(t *testing.T) {
t.Setenv("NEO4J_USERNAME", "your_neo4j_user")
t.Setenv("NEO4J_PASSWORD", "your_neo4j_password")


ctx, err := testutils.ContextWithNewLogger()
if err != nil {
t.Fatalf("unexpected error: %s", err)
Expand Down Expand Up @@ -1552,6 +1560,16 @@ func TestPrebuiltTools(t *testing.T) {
},
},
{
name: "mindsdb prebuilt tools",
in: mindsdb_config,
wantToolset: server.ToolsetConfigs{
"mindsdb-tools": tools.ToolsetConfig{
Name: "mindsdb-tools",
ToolNames: []string{"mindsdb-execute-sql", "mindsdb-sql"},
},
},
},
{
name: "sqlite prebuilt tools",
in: sqlite_config,
wantToolset: server.ToolsetConfigs{
Expand Down
161 changes: 161 additions & 0 deletions docs/en/resources/sources/mindsdb.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,161 @@
---
title: "MindsDB"
type: docs
weight: 1
description: >
MindsDB is the most widely adopted AI federated database that enables SQL queries across hundreds of datasources and ML models.
---

## About

[MindsDB][mindsdb-docs] is the most widely adopted AI federated database in the world. It allows you to combine information from hundreds of datasources as if they were SQL, supporting joins across datasources and enabling you to query all unstructured data as if it were structured.

MindsDB translates MySQL queries into whatever API is needed - whether it's REST APIs, GraphQL, or native database protocols. This means you can write standard SQL queries and MindsDB automatically handles the translation to APIs like Salesforce, Jira, GitHub, email systems, MongoDB, and hundreds of other datasources.

MindsDB also enables you to use ML frameworks to train and use models as virtual tables from the data in those datasources. With MindsDB, the GenAI Toolbox can now expand to hundreds of datasources and leverage all of MindsDB's capabilities on ML and unstructured data.

**Key Features:**
- **Federated Database**: Connect and query hundreds of datasources through a single SQL interface
- **Cross-Datasource Joins**: Perform joins across different datasources seamlessly
- **API Translation**: Automatically translates MySQL queries into REST APIs, GraphQL, and native protocols
- **Unstructured Data Support**: Query unstructured data as if it were structured
- **ML as Virtual Tables**: Train and use ML models as virtual tables
- **MySQL Wire Protocol**: Compatible with standard MySQL clients and tools

[mindsdb-docs]: https://docs.mindsdb.com/
[mindsdb-github]: https://github.com/mindsdb/mindsdb

## Supported Datasources

MindsDB supports hundreds of datasources, including:

### **Business Applications**
- **Salesforce**: Query leads, opportunities, accounts, and custom objects
- **Jira**: Access issues, projects, workflows, and team data
- **GitHub**: Query repositories, commits, pull requests, and issues
- **Slack**: Access channels, messages, and team communications
- **HubSpot**: Query contacts, companies, deals, and marketing data

### **Databases & Storage**
- **MongoDB**: Query NoSQL collections as structured tables
- **Redis**: Key-value stores and caching layers
- **Elasticsearch**: Search and analytics data
- **S3/Google Cloud Storage**: File storage and data lakes

### **Communication & Email**
- **Gmail/Outlook**: Query emails, attachments, and metadata
- **Slack**: Access workspace data and conversations
- **Microsoft Teams**: Team communications and files
- **Discord**: Server data and message history



## Example Queries

### Cross-Datasource Analytics
```sql
-- Join Salesforce opportunities with GitHub activity
SELECT
s.opportunity_name,
s.amount,
g.repository_name,
COUNT(g.commits) as commit_count
FROM salesforce.opportunities s
JOIN github.repositories g ON s.account_id = g.owner_id
WHERE s.stage = 'Closed Won'
GROUP BY s.opportunity_name, s.amount, g.repository_name;
```

### Email & Communication Analysis
```sql
-- Analyze email patterns with Slack activity
SELECT
e.sender,
e.subject,
s.channel_name,
COUNT(s.messages) as message_count
FROM gmail.emails e
JOIN slack.messages s ON e.sender = s.user_name
WHERE e.date >= '2024-01-01'
GROUP BY e.sender, e.subject, s.channel_name;
```

### ML Model Predictions
```sql
-- Use ML model to predict customer churn
SELECT
customer_id,
customer_name,
predicted_churn_probability,
recommended_action
FROM customer_churn_model
WHERE predicted_churn_probability > 0.8;
```

## Requirements

### Database User

This source uses standard MySQL authentication since MindsDB implements the MySQL wire protocol. You will need to [create a MindsDB user][mindsdb-users] to login to the database with. If MindsDB is configured without authentication, you can omit the password field.

[mindsdb-users]: https://docs.mindsdb.com/
## Example

```yaml
sources:
my-mindsdb-source:
kind: mindsdb
host: 127.0.0.1
port: 3306
database: my_db
user: ${USER_NAME}
password: ${PASSWORD} # Optional: omit if MindsDB is configured without authentication
queryTimeout: 30s # Optional: query timeout duration
```

### Working Configuration Example

Here's a working configuration that has been tested:

```yaml
sources:
my-pg-source:
kind: mindsdb
host: 127.0.0.1
port: 47335
database: files
user: mindsdb
```

{{< notice tip >}}
Use environment variable replacement with the format ${ENV_NAME}
instead of hardcoding your secrets into the configuration file.
{{< /notice >}}

## Use Cases

With MindsDB integration, you can:

- **Query Multiple Datasources**: Connect to databases, APIs, file systems, and more through a single SQL interface
- **Cross-Datasource Analytics**: Perform joins and analytics across different data sources
- **ML Model Integration**: Use trained ML models as virtual tables for predictions and insights
- **Unstructured Data Processing**: Query documents, images, and other unstructured data as structured tables
- **Real-time Predictions**: Get real-time predictions from ML models through SQL queries
- **API Abstraction**: Write SQL queries that automatically translate to REST APIs, GraphQL, and native protocols

## Reference

| **field** | **type** | **required** | **description** |
| ------------ | :------: | :----------: | ----------------------------------------------------------------------------------------------- |
| kind | string | true | Must be "mindsdb". |
| host | string | true | IP address to connect to (e.g. "127.0.0.1"). |
| port | string | true | Port to connect to (e.g. "3306"). |
| database | string | true | Name of the MindsDB database to connect to (e.g. "my_db"). |
| user | string | true | Name of the MindsDB user to connect as (e.g. "my-mindsdb-user"). |
| password | string | false | Password of the MindsDB user (e.g. "my-password"). Optional if MindsDB is configured without authentication. |
| queryTimeout | string | false | Maximum time to wait for query execution (e.g. "30s", "2m"). By default, no timeout is applied. |

## Resources

- [MindsDB Documentation][mindsdb-docs] - Official documentation and guides
- [MindsDB GitHub][mindsdb-github] - Source code and community
Loading
Loading