Parameters do not bind for MySQL custom tools
Author: mihai1gitCreated Sep 18, 2026Updated Sep 18, 2026
Labelstype: bug
Prerequisites
- I've searched the current open issues
- I've updated to the latest version of Toolbox
Toolbox version
toolbox version 1.12.0+binary.windows.amd64.c97ca4d
Environment
- OS type and version: Windows 11 v.25H2
- How are you running Toolbox:
- As a downloaded binary (e.g. from
curl -o toolbox.exe "https://storage.googleapis.com/mcp-toolbox-for-databases/v%VERSION%/windows/amd64/toolbox.exe")
- Database: mysql-8.0.26-winx64
Client
- Client: windows command line
- Version: Windows 11 command line
- Example:
# Windows 11 command line (complex JSON syntax due to error: params must be a valid JSON string):
toolbox --config tools.yaml invoke search-language "{\""language\"": \""en\""}" # tools.yaml
kind: source
name: datasets-db
type: mysql
host: 127.0.0.1
port: 3308
database: datasets
user: <user>
password: <pass>
---
kind: tool
name: search-language
type: mysql-sql
source: datasets-db
description: >-
Retrieves all countries where language as parameter (ex: English) is spoken.
statement: |
select name , languages from countries_data where languages LIKE CONCAT('%', $1, '%');
parameters:
- name: language
type: string
description: "The searched language code (ex: ps,uz,tk,en,sm )"Expected Behavior
Replace the positional parameter $1 and execute query from tool: search-language.
Current Behavior
Parameter $1 is not replaced with the given value. Error: tool execution failed: error processing request: unable to execute query: Error 1054 (42S22): Unknown column '$1' in 'where clause'
Steps to reproduce?
- start MySQL on localhost
- invoke localhost-tool from command line
Additional Details
No response
Source: googleapis/mcp-toolbox