Skip to main content
Glama
nikhgupta

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesDatabase connection name
engineYesDatabase engine (postgres, mysql, mongodb, etc.)
parametersYesConnection parameters

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. While 'connect' implies a setup/mutation operation, the description doesn't disclose whether this creates a persistent connection, requires specific permissions, has rate limits, returns confirmation data, or handles connection errors. For a tool that likely modifies system state, this is a significant gap in behavioral transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that gets straight to the point with zero wasted words. It's appropriately sized for the tool's complexity and front-loads the essential information without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool that creates database connections (likely a mutation operation) with no annotations and no output schema, the description is insufficient. It doesn't explain what happens after connection, whether connections are persistent, what permissions are needed, or what the tool returns. Given the complexity implied by the nested parameters object and the lack of structured behavioral information, the description should provide more complete context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, so all parameters are documented in the schema itself. The description doesn't add any meaningful parameter semantics beyond what's already in the schema - it doesn't explain relationships between parameters, provide examples of valid engine values, or clarify the structure of the parameters object beyond what the schema already specifies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('connect') and resource ('external database as a data source in MindsDB'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'list_databases' or 'query', which would require more specific language about this being a setup/configuration operation rather than a query or listing function.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool versus alternatives like 'list_databases' for viewing existing connections or 'query' for interacting with connected databases. The description lacks any context about prerequisites, timing, or appropriate scenarios for database connection setup.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_jobC

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

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesJob name
queryYesSQL query to execute
everyYesInterval (e.g., '1 hour', '1 day', '15 minute')
startNoStart datetime (ISO format)
endNoEnd datetime (ISO format)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It states the tool creates a scheduled job, implying a write operation, but doesn't cover permissions needed, whether jobs can be edited/deleted, error handling, or what happens on success/failure. For a mutation tool with zero annotation coverage, this leaves significant gaps in understanding its behavior and constraints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose without unnecessary words. Every part earns its place: 'Create a scheduled job' specifies the action, 'to run a query at regular intervals' adds essential context. There's no redundancy or fluff, making it highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given this is a mutation tool (creating jobs) with no annotations and no output schema, the description is incomplete. It doesn't address what the tool returns (e.g., job ID, success status), error conditions, or behavioral nuances like idempotency. For a tool with 5 parameters and significant implications (scheduled execution), more context is needed to guide effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 5 parameters thoroughly. The description adds no additional parameter semantics beyond what's in the schema (e.g., it doesn't explain format examples beyond 'regular intervals' or clarify dependencies between parameters). With high schema coverage, the baseline score of 3 is appropriate as the description doesn't enhance parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'create' and resource 'scheduled job' with the specific purpose 'to run a query at regular intervals.' It distinguishes from siblings like list_jobs (listing) or query (one-time execution), but doesn't explicitly contrast with them. The purpose is specific and actionable, though sibling differentiation is implicit rather than explicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a database connection first), exclusions, or compare with similar tools like list_jobs for monitoring or query for immediate execution. Usage is implied from the purpose alone, with no explicit context or alternatives provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_kbC

Create a new knowledge base with embedding model configuration.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesKnowledge base name
embedding_modelYesEmbedding model config with provider, model_name, api_key
content_columnsYesColumns to embed
metadata_columnsNoMetadata columns
id_columnNoID column name
reranking_modelNoOptional reranking model config
storageNoVector storage backend (default: chromadb)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool creates something new but doesn't mention permissions required, whether this is a destructive operation, rate limits, error conditions, or what happens on success (e.g., returns an ID). For a creation tool with zero annotation coverage, this is a significant gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose without any wasted words. It's appropriately sized for the tool's complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a creation tool with 7 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., a knowledge base ID), error handling, or behavioral nuances like idempotency. The schema covers parameters well, but the description fails to compensate for missing annotation and output context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds minimal value beyond implying that embedding model configuration is central, but doesn't provide additional context like default values (e.g., 'storage' defaults to 'chromadb') or usage examples. Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Create a new knowledge base') and specifies the key configuration aspect ('with embedding model configuration'), which distinguishes it from siblings like 'insert_kb' or 'search_kb'. However, it doesn't explicitly differentiate from 'connect_database' or other creation tools, keeping it at a 4 rather than a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'insert_kb' or 'connect_database'. It lacks context about prerequisites, timing, or exclusions, leaving the agent with minimal usage direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

describeC

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

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of model, table, or knowledge base to describe
databaseNoDatabase context

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool returns 'column information and structure', which gives some output context, but lacks critical details: it doesn't specify if this is a read-only operation (implied but not stated), what permissions are required, whether it works on all resource types equally, or if there are rate limits. For a tool with no annotation coverage, this leaves significant gaps in understanding its behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately concise with two sentences: the first states the purpose, and the second specifies the return value. It's front-loaded with the core action and resources, and every sentence adds value (purpose and output). However, it could be slightly more structured by explicitly separating resource types or adding brief usage hints without losing efficiency.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (2 parameters, no output schema, no annotations), the description is minimally adequate. It covers the basic purpose and output but lacks details on behavioral traits, usage context, and parameter nuances. Without an output schema, it should ideally explain return values more thoroughly (e.g., format of 'column information'). It meets the bare minimum for a read-like operation but doesn't fully compensate for missing structured data.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters ('name' and 'database') fully. The description adds minimal value beyond the schema: it implies 'name' refers to a model, table, or knowledge base, but doesn't clarify syntax, format, or how 'database' context interacts with the resource. With high schema coverage, the baseline is 3, and the description doesn't significantly enhance parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Describe a model, table, or knowledge base' with the verb 'describe' and resources 'model, table, or knowledge base'. It distinguishes from siblings like 'list_tables' (which lists names) by focusing on detailed structure information. However, it doesn't explicitly differentiate from 'search_kb' or 'query', which might also return structural details in some contexts.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to choose 'describe' over 'list_tables' (for overview vs. details) or 'search_kb' (for content vs. structure), nor does it specify prerequisites like needing a connected database. Usage is implied only by the action 'describe', with no explicit context or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

insert_kbC

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

ParametersJSON Schema
NameRequiredDescriptionDefault
kb_nameYesKnowledge base name
source_queryYesSELECT query for source data
batch_sizeNoBatch size (default: 1000)
threadsNoThread count (default: 1)
skip_existingNoSkip existing records (default: false)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'batch processing' and 'insert data,' implying a write operation, but lacks details on permissions required, whether it's idempotent, error handling, or performance impacts. This is a significant gap for a mutation tool with zero annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is highly concise and front-loaded, consisting of two efficient sentences that directly state the tool's function and key features ('batch processing') without any wasted words. Every sentence earns its place by contributing essential information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a data insertion tool with 5 parameters, no annotations, and no output schema, the description is incomplete. It lacks information on behavioral traits, error handling, return values, and usage context, making it inadequate for safe and effective tool invocation by an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 5 parameters thoroughly. The description adds minimal value beyond the schema by implying that 'source_query' is a SELECT query for data sourcing and hinting at batch processing, but it doesn't provide additional syntax, format, or usage context for parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with specific verbs ('insert data into a knowledge base') and resource ('knowledge base'), distinguishing it from siblings like 'create_kb' (creation) and 'search_kb' (querying). However, it doesn't explicitly differentiate from 'create_job' or 'query' in terms of data manipulation versus job management or querying.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance is provided on when to use this tool versus alternatives. The description mentions 'from a source query' and 'batch processing,' but it doesn't specify prerequisites, exclusions, or recommend other tools like 'create_kb' for setup or 'search_kb' for retrieval, leaving usage context implied rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_databasesB

List all databases/data sources in MindsDB.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action ('List') but doesn't describe what 'List' entails—e.g., whether it returns names, types, statuses, or metadata; if it's paginated; or if it requires specific permissions. This leaves significant gaps for a tool that likely interacts with system resources.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without any fluff or redundancy. It's front-loaded and wastes no words, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (0 parameters, no output schema, no annotations), the description is minimally adequate. However, it lacks details on return values (since no output schema exists) and behavioral context, which could help an agent understand what to expect from the listing operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add parameter details, which is appropriate, earning a baseline score of 4 for not introducing unnecessary information.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('List') and resource ('all databases/data sources in MindsDB'), making the purpose unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'list_tables' or 'list_knowledge_bases', which would require specifying this tool only lists database connections, not their contents or other entities.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing connected databases first), exclusions, or comparisons to siblings like 'list_tables' (for tables within a database) or 'connect_database' (for establishing connections).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_jobsB

List all scheduled jobs in MindsDB.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It states it's a list operation but doesn't describe output format, pagination, sorting, error conditions, or any limitations. For a tool with zero annotation coverage, this leaves significant gaps in understanding how it behaves.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized for a simple list operation and front-loads the essential information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete for helping an agent understand this tool's behavior. It doesn't explain what a 'scheduled job' entails in MindsDB, what information is returned, or how to interpret results. For a tool with no structured behavioral data, the description should provide more operational context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters with 100% schema description coverage, so the description appropriately doesn't discuss parameters. This matches the baseline expectation for parameterless tools, though it doesn't add any extra semantic context beyond what the schema already indicates.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('List all scheduled jobs') and resource ('in MindsDB'), providing a specific verb+resource combination. However, it doesn't differentiate from sibling tools like 'list_databases' or 'list_tables' beyond the resource type, which prevents a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'create_job' or 'query', nor does it mention prerequisites or context for usage. It's a basic statement of function without operational context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_knowledge_basesB

List all knowledge bases in MindsDB.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states what the tool does but doesn't describe how it behaves—such as whether it returns a paginated list, requires authentication, has rate limits, or what format the output takes. This leaves significant gaps for an agent to understand the tool's operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence that directly states the tool's purpose with no wasted words. It's front-loaded and efficiently communicates the essential information, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (zero parameters, no output schema), the description is adequate but incomplete. It covers the basic purpose but lacks behavioral context (e.g., output format, authentication needs) that would help an agent use it effectively, especially with no annotations to fill those gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and the schema description coverage is 100%, so there's no need for parameter details in the description. The baseline for zero parameters is 4, as the description appropriately focuses on the tool's purpose without unnecessary parameter explanations.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('List') and resource ('all knowledge bases in MindsDB'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'list_databases' or 'list_tables' beyond specifying the resource type, which prevents a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'list_databases' or 'search_kb'. It lacks context about prerequisites, such as whether a database connection is needed, or any explicit when-not-to-use scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_tablesC

List all tables in a specific database.

ParametersJSON Schema
NameRequiredDescriptionDefault
databaseYesDatabase to list tables from

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions listing tables but doesn't describe what the output looks like (e.g., format, pagination), whether it requires specific permissions, or any rate limits. This leaves significant gaps for a tool that interacts with databases.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence that directly states the tool's function without any unnecessary words. It's front-loaded and efficiently communicates the core purpose, making it highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is insufficient for a database interaction tool. It doesn't explain the return format, error conditions, or behavioral nuances, leaving the agent with incomplete information to use this tool effectively in context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the single parameter 'database' clearly documented. The description adds no additional parameter semantics beyond what the schema provides, so it meets the baseline score of 3 for adequate but not enhanced coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('List') and resource ('tables in a specific database'), making the purpose immediately understandable. However, it doesn't distinguish this tool from potential siblings like 'list_databases' or 'describe' beyond the resource name, which keeps it from a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'list_databases' or 'describe', nor does it mention prerequisites such as needing a connected database. It simply states what the tool does without contextual usage information.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

queryB

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

ParametersJSON Schema
NameRequiredDescriptionDefault
sqlYesSQL query to execute
databaseNoDatabase context to use

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool executes SQL queries but doesn't disclose behavioral traits such as whether it's read-only or destructive, authentication needs, rate limits, error handling, or return format. For a query execution tool with zero annotation coverage, this is a significant gap, scoring a 2.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately sized and front-loaded with two concise sentences that earn their place: the first states the purpose, and the second provides usage guidance. There is zero waste, making it highly efficient and well-structured, scoring a 5.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of executing SQL queries, no annotations, no output schema, and 100% schema coverage, the description is incomplete. It lacks information on behavioral aspects, return values, error handling, and specific constraints. For a tool that could involve data manipulation or complex operations, this is inadequate, scoring a 2.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters (sql and database) with descriptions. The description adds no additional meaning beyond what the schema provides, such as query syntax examples or database context details. Baseline is 3 when schema does the heavy lifting, and this meets that threshold.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose as 'Execute any MindsDB SQL query', which is a specific verb+resource combination. It distinguishes from siblings by mentioning 'custom queries not covered by other tools', though it doesn't explicitly name alternatives. This is clear but lacks explicit sibling differentiation, warranting a 4.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for usage: 'Use this for custom queries not covered by other tools', which implies when to use it versus alternatives. However, it doesn't explicitly state when not to use it or name specific alternatives, so it's not fully explicit. This is good guidance but not exhaustive, scoring a 4.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_kbA

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

ParametersJSON Schema
NameRequiredDescriptionDefault
kb_nameYesKnowledge base name
questionYesSearch query
limitNoMax results (default: 10)
alphaNoHybrid alpha: 0=keyword, 1=semantic, 0.5=balanced (default: 0.5)
min_relevanceNoMin relevance score 0-1 (default: 0)
metadata_filterNoMetadata field filters as key-value pairs

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the hybrid search method and return format ('relevant chunks with relevance scores'), but omits details like rate limits, authentication needs, or error handling. It adds some value but leaves gaps for a search tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is highly concise and front-loaded in a single sentence, with zero wasted words. It efficiently communicates the core functionality and output, making it easy for an agent to quickly understand the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (6 parameters, hybrid search) and no output schema, the description is partially complete. It covers the search method and return format but lacks details on output structure (e.g., chunk format, score ranges) and behavioral aspects like performance or limitations, leaving room for improvement.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all 6 parameters. The description adds no additional parameter semantics beyond what the schema provides, such as explaining the 'hybrid' aspect in more detail or clarifying 'chunks'. Baseline 3 is appropriate when the schema handles parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with specific verbs ('Search a knowledge base') and method ('using hybrid semantic + keyword search'), and distinguishes it from siblings like 'list_knowledge_bases' or 'insert_kb' by focusing on search functionality rather than listing or creation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for retrieving relevant information from a knowledge base, but provides no explicit guidance on when to use this tool versus alternatives like 'query' or 'describe'. It lacks context on exclusions or prerequisites, leaving usage decisions to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

B3.4/5.0
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
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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
    121
    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
    17
    18
  • A
    license
    A
    quality
    C
    maintenance
    Enables interaction with MySQL databases (including AWS RDS and cloud instances) through natural language. Supports database connections, query execution, schema inspection, and comprehensive database management operations.
    8
    28
    8
    MIT
  • 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
    61
    1
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/nikhgupta/mindsdb-mysql-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server