Skip to main content
Glama
MindsDB MySQL MCP Server

MindsDB MySQL MCP Server

by nikhgupta

MindsDB MySQL MCP Server

MCP server for MindsDB that connects via MySQL protocol (port 47335), providing reliable tools for Claude Code and Desktop.

Why MySQL over SSE/HTTP?

  • MySQL protocol is stable and well-tested

  • No async event loop issues (the "this event loop is already running" errors)

  • Better error messages and debugging

  • Works reliably with knowledge base queries

Related MCP server: MySql MCP Server

Installation

cd mcp/mindsdb-mysql
npm install
npm run build

Configuration

Environment Variables

Variable

Default

Description

MINDSDB_HOST

127.0.0.1

MindsDB server host

MINDSDB_PORT

47335

MindsDB MySQL port

MINDSDB_USER

mindsdb

Username (use your MindsDB Cloud email for cloud instances)

MINDSDB_PASSWORD

(empty)

Password (required for MindsDB Cloud)

Claude Code (~/.claude.json)

{
  "mcpServers": {
    "mindsdb": {
      "type": "stdio",
      "command": "node",
      "args": [
        "/path/to/mindsdb-mysql/dist/index.js"
      ],
      "env": {
        "MINDSDB_HOST": "localhost",
        "MINDSDB_PORT": "47335",
        "MINDSDB_USER": "mindsdb",
        "MINDSDB_PASSWORD": ""
      }
    }
  }
}

For MindsDB Cloud, use your email as MINDSDB_USER and your password for MINDSDB_PASSWORD.

Claude Desktop (claude_desktop_config.json)

Same configuration, add to the mcpServers object.

Available Tools (11)

1. query - Execute SQL

Execute any MindsDB SQL query. Use this for custom queries not covered by other tools.

query(sql: string, database?: string): QueryResult

2. list_databases - List Data Sources

List all databases/data sources in MindsDB.

list_databases(): string[]

3. list_knowledge_bases - List KBs

List all knowledge bases in MindsDB.

list_knowledge_bases(): KnowledgeBase[]

4. describe - Describe Any Object

Describe a model, table, or knowledge base. Returns column information.

describe(name: string, database?: string): Description

5. search_kb - Search Knowledge Base

Search a knowledge base using hybrid semantic + keyword search.

search_kb(
  kb_name: string,
  question: string,
  limit?: number,         // default: 10
  alpha?: number,         // default: 0.5 (0=keyword, 1=semantic)
  min_relevance?: number, // default: 0
  metadata_filter?: Record<string, string>
): SearchResult[]

6. insert_kb - Insert Data into Knowledge Base

Insert data into a knowledge base from a source query.

insert_kb(
  kb_name: string,
  source_query: string,   // e.g., "SELECT id, content FROM mydb.docs"
  batch_size?: number,    // default: 1000
  threads?: number,       // default: 1
  skip_existing?: boolean // default: false
): { rows_inserted: number }

7. create_kb - Create Knowledge Base

Create a new knowledge base with embedding model configuration.

create_kb(
  name: string,
  embedding_model: {
    provider: string,     // openai, azure, google, ollama
    model_name: string,
    api_key?: string
  },
  content_columns: string[],
  metadata_columns?: string[],
  id_column?: string,
  reranking_model?: {...},
  storage?: string        // default: chromadb
): { kb_name: string }

8. list_jobs - List Scheduled Jobs

List all scheduled jobs in MindsDB.

list_jobs(): Job[]

9. create_job - Schedule Recurring Query

Create a scheduled job to run a query at regular intervals.

create_job(
  name: string,
  query: string,          // SQL to execute
  every: string,          // e.g., "1 hour", "1 day"
  start?: string,         // ISO datetime
  end?: string            // ISO datetime
): { job_name: string }

10. list_tables - List Tables

List all tables in a specific database.

list_tables(database: string): string[]

11. connect_database - Connect External Data Source

Connect an external database as a data source in MindsDB.

connect_database(
  name: string,
  engine: string,         // postgres, mysql, mongodb, etc.
  parameters: {
    host: string,
    port: number,
    database: string,
    user: string,
    password: string
  }
): { database_name: string }

Testing

With MCP Inspector

npx @modelcontextprotocol/inspector node dist/index.js

Or with a remote MindsDB instance:

MINDSDB_HOST=your-mindsdb-host MINDSDB_PORT=47335 \
  npx @modelcontextprotocol/inspector node dist/index.js

Manual verification

After configuring Claude Code, restart and verify:

# In Claude Code, these tools should be available:
mcp__mindsdb__list_databases
mcp__mindsdb__list_knowledge_bases
mcp__mindsdb__search_kb
mcp__mindsdb__query
# ... etc.

MindsDB SQL Reference

Knowledge Base Query

-- Semantic search
SELECT * FROM my_kb WHERE content = 'search phrase' LIMIT 10;

-- With relevance filter
SELECT * FROM my_kb WHERE content = 'query' AND relevance >= 0.5;

-- Hybrid search (keyword + semantic)
SELECT * FROM my_kb WHERE content = 'query' AND hybrid_search_alpha = 0.8;

-- Metadata filter
SELECT * FROM my_kb WHERE content = 'query' AND metadata_column = 'value';

Output Columns

  • chunk_id: <id>:<chunk_number>of<total>:<start_char>to<end_char>

  • chunk_content: The text content

  • relevance: 0-1 score (higher = better match)

  • distance: Vector distance (lower = closer)

Available Tools

11 tools
connect_databaseC

Connect an external database as a data source in MindsDB.

Inputs: name (required), engine (required), parameters (required).

create_jobC

Create a scheduled job to run a query at regular intervals.

Inputs: name (required), query (required), every (required), start, +1 more.

create_kbC

Create a new knowledge base with embedding model configuration.

Inputs: name (required), embedding_model (required), content_columns (required), metadata_columns, +3 more.

describeC

Describe a model, table, or knowledge base. Returns column information and structure.

Inputs: name (required), database.

insert_kbC

Insert data into a knowledge base from a source query. Supports batch processing.

Inputs: kb_name (required), source_query (required), batch_size, threads, +1 more.

list_databasesB

List all databases/data sources in MindsDB.

Inputs: no named parameters.

list_jobsB

List all scheduled jobs in MindsDB.

Inputs: no named parameters.

list_knowledge_basesB

List all knowledge bases in MindsDB.

Inputs: no named parameters.

list_tablesC

List all tables in a specific database.

Inputs: database (required).

queryB

Execute any MindsDB SQL query. Use this for custom queries not covered by other tools.

Inputs: sql (required), database.

search_kbA

Search a knowledge base using hybrid semantic + keyword search. Returns relevant chunks with relevance scores.

Inputs: kb_name (required), question (required), limit, alpha, +2 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.4/5.0

    Scored across 11 tools

    Disambiguation4/5

    Most tools have distinct purposes, such as connect_database for data source connections and search_kb for hybrid searches. However, the 'describe' tool is somewhat ambiguous as it can describe models, tables, or knowledge bases, potentially overlapping with other tools like list_tables or list_knowledge_bases in providing structural information, which could cause minor confusion.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern using snake_case, such as connect_database, create_job, and list_tables. This uniformity makes the tool set predictable and easy to understand, with no deviations in naming conventions across the 11 tools.

    Tool Count5/5

    With 11 tools, the server is well-scoped for managing MindsDB's features like databases, jobs, knowledge bases, and queries. Each tool serves a clear purpose, such as list_databases for listing sources and query for custom SQL, making the count appropriate without being overwhelming or insufficient.

    Completeness4/5

    The tool set covers key MindsDB operations, including data source management (connect_database, list_databases), knowledge base handling (create_kb, insert_kb, search_kb), and job scheduling (create_job, list_jobs). A minor gap is the lack of update or delete tools for jobs or knowledge bases, but agents can likely work around this using the query tool for custom modifications.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      B
      quality
      D
      maintenance
      Enables AI models to perform MySQL database operations through a standardized interface, supporting secure connections, query execution, and comprehensive schema management.
      7
      82 npm
      33
      MIT
    • A
      license
      A
      quality
      Not graded
      maintenance
      Connect and interact with MySQL databases seamlessly. Execute SQL queries, manage database connections, and retrieve data directly through AI assistants. Enhance your AI capabilities with structured access to your MySQL data.
      9
      11 npm
      18
      -
    • A
      license
      A
      quality
      C
      maintenance
      Enables LLMs to interact with MySQL databases through standardized protocol, supporting database management, table operations, data queries, and modifications with configurable permission controls.
      15
      69 npm
      1
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      Connects AI assistants like Claude Desktop directly to MySQL databases, enabling natural language interaction for schema inspection, data querying, CRUD operations, and database administration tasks.
      8 npm
      MIT