diff --git a/scripts/mcp/configure_mcp.sh b/scripts/mcp/configure_mcp.sh index d6b4f4326..df7e19744 100755 --- a/scripts/mcp/configure_mcp.sh +++ b/scripts/mcp/configure_mcp.sh @@ -59,6 +59,13 @@ log_step() { # Execute MySQL command via ProxySQL admin exec_admin() { + mysql -h "${PROXYSQL_ADMIN_HOST}" -P "${PROXYSQL_ADMIN_PORT}" \ + -u "${PROXYSQL_ADMIN_USER}" -p"${PROXYSQL_ADMIN_PASSWORD}" \ + -e "$1" 2>&1 +} + +# Execute MySQL command via ProxySQL admin (silent mode) +exec_admin_silent() { mysql -h "${PROXYSQL_ADMIN_HOST}" -P "${PROXYSQL_ADMIN_PORT}" \ -u "${PROXYSQL_ADMIN_USER}" -p"${PROXYSQL_ADMIN_PASSWORD}" \ -e "$1" 2>/dev/null @@ -67,7 +74,7 @@ exec_admin() { # Check if ProxySQL admin is accessible check_proxysql_admin() { log_step "Checking ProxySQL admin connection..." - if exec_admin "SELECT 1" >/dev/null 2>&1; then + if exec_admin_silent "SELECT 1" >/dev/null 2>&1; then log_info "Connected to ProxySQL admin at ${PROXYSQL_ADMIN_HOST}:${PROXYSQL_ADMIN_PORT}" return 0 else @@ -98,17 +105,22 @@ configure_mcp() { log_step "Configuring MCP variables..." - # Set MySQL connection configuration - cat </dev/null 2>&1; then + if exec_admin_silent "LOAD MCP VARIABLES TO RUNTIME;" >/dev/null 2>&1; then log_info "MCP variables loaded to RUNTIME" else log_error "Failed to load MCP variables to RUNTIME" @@ -136,7 +148,7 @@ load_to_runtime() { show_status() { log_step "Current MCP configuration:" echo "" - exec_admin "SHOW VARIABLES LIKE 'mcp-%';" | column -t + exec_admin_silent "SHOW VARIABLES LIKE 'mcp-%';" | column -t echo "" } @@ -149,7 +161,7 @@ test_mcp_server() { # Test ping endpoint local response - response=$(curl -k -s -X POST "https://${PROXYSQL_ADMIN_HOST}:${MCP_PORT}/config" \ + response=$(curl -k -s -X POST "https://${PROXYSQL_ADMIN_HOST}:${MCP_PORT}/mcp/config" \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","method":"ping","id":1}' 2>/dev/null || echo "") @@ -285,10 +297,16 @@ main() { fi # Configure MCP - configure_mcp "${MCP_ENABLED}" + if ! configure_mcp "${MCP_ENABLED}"; then + log_error "Failed to configure MCP variables" + exit 1 + fi # Load to runtime - load_to_runtime + if ! load_to_runtime; then + log_error "Failed to load MCP variables to runtime" + exit 1 + fi # Show status echo "" @@ -305,8 +323,11 @@ main() { if [ "${MCP_ENABLED}" = "true" ]; then echo "" echo "MCP server is now enabled and accessible at:" - echo " https://${PROXYSQL_ADMIN_HOST}:${MCP_PORT}/config (config endpoint)" - echo " https://${PROXYSQL_ADMIN_HOST}:${MCP_PORT}/query (query endpoint)" + echo " https://${PROXYSQL_ADMIN_HOST}:${MCP_PORT}/mcp/config (config endpoint)" + echo " https://${PROXYSQL_ADMIN_HOST}:${MCP_PORT}/mcp/observe (observe endpoint)" + echo " https://${PROXYSQL_ADMIN_HOST}:${MCP_PORT}/mcp/query (query endpoint)" + echo " https://${PROXYSQL_ADMIN_HOST}:${MCP_PORT}/mcp/admin (admin endpoint)" + echo " https://${PROXYSQL_ADMIN_HOST}:${MCP_PORT}/mcp/cache (cache endpoint)" echo "" echo "Run './test_mcp_tools.sh' to test MCP tools" fi