awslabs.mysql-mcp-server 1.0.8__py3-none-any.whl → 1.0.9__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -14,4 +14,4 @@
14
14
 
15
15
  """awslabs.mysql_mcp_server"""
16
16
 
17
- __version__ = '1.0.8'
17
+ __version__ = '1.0.9'
@@ -132,7 +132,7 @@ class AsyncmyPoolConnection(AbstractDBConnection):
132
132
  await cursor.execute('SET TRANSACTION READ ONLY')
133
133
  # Execute the query
134
134
  if parameters:
135
- params = _convert_parameters(self, parameters).values()
135
+ params = list(_convert_parameters(self, parameters).values())
136
136
  await cursor.execute(sql, params)
137
137
  else:
138
138
  await cursor.execute(sql)
@@ -146,7 +146,7 @@ class AsyncmyPoolConnection(AbstractDBConnection):
146
146
  rows = await cursor.fetchall()
147
147
 
148
148
  # Structure the response to match the interface contract required by server.py
149
- column_metadata = [{'name': col} for col in columns]
149
+ column_metadata = [{'label': col} for col in columns]
150
150
  records = []
151
151
 
152
152
  # Convert each row to the expected format
@@ -18,6 +18,7 @@ import argparse
18
18
  import asyncio
19
19
  import sys
20
20
  from awslabs.mysql_mcp_server.connection import DBConnectionSingleton
21
+ from awslabs.mysql_mcp_server.connection.asyncmy_pool_connection import AsyncmyPoolConnection
21
22
  from awslabs.mysql_mcp_server.mutable_sql_detector import (
22
23
  check_sql_injection_risk,
23
24
  detect_mutating_keywords,
@@ -193,9 +194,16 @@ async def get_table_schema(
193
194
  ORDER BY
194
195
  ORDINAL_POSITION
195
196
  """
197
+ db_connection = DBConnectionSingleton.get().db_connection
198
+
199
+ if isinstance(db_connection, AsyncmyPoolConnection):
200
+ # Convert to positional parameters for asyncmy
201
+ sql = sql.replace(':database_name', '%s').replace(':table_name', '%s')
202
+
203
+ # Use consistent parameter order matching SQL placeholders
196
204
  params = [
197
- {'name': 'table_name', 'value': {'stringValue': table_name}},
198
205
  {'name': 'database_name', 'value': {'stringValue': database_name}},
206
+ {'name': 'table_name', 'value': {'stringValue': table_name}},
199
207
  ]
200
208
 
201
209
  return await run_query(sql=sql, ctx=ctx, query_parameters=params)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: awslabs.mysql-mcp-server
3
- Version: 1.0.8
3
+ Version: 1.0.9
4
4
  Summary: An AWS Labs Model Context Protocol (MCP) server for mysql
5
5
  Project-URL: homepage, https://awslabs.github.io/mcp/
6
6
  Project-URL: docs, https://awslabs.github.io/mcp/servers/mysql-mcp-server/
@@ -1,15 +1,15 @@
1
1
  awslabs/__init__.py,sha256=WuqxdDgUZylWNmVoPKiK7qGsTB_G4UmuXIrJ-VBwDew,731
2
- awslabs/mysql_mcp_server/__init__.py,sha256=BxKcXGG2bfAyvhb8ZnqHj6ZugCF3bqncylsdgil0kqw,670
2
+ awslabs/mysql_mcp_server/__init__.py,sha256=4YCpk9z418hrbzBvxvmfiO5CUS2jsotSGe91htH2hTM,670
3
3
  awslabs/mysql_mcp_server/mutable_sql_detector.py,sha256=0apKy3GK8WOxKZshj7vKTRcLdSIM7GA6Ee_8-dr41UQ,4224
4
- awslabs/mysql_mcp_server/server.py,sha256=p8GMSEHSwn5bG8c_sihcLqP1PrMqV_tGVQ1Fn1nvwo0,10565
4
+ awslabs/mysql_mcp_server/server.py,sha256=whlRuMTLOGTh13VRXDq8-LFydRwebEJubBSpZxoHM6Q,10977
5
5
  awslabs/mysql_mcp_server/connection/__init__.py,sha256=q63Wdy4cI71kRtNhxh8NHi_O_DWIIZiyv3Cg9usiBcY,841
6
6
  awslabs/mysql_mcp_server/connection/abstract_db_connection.py,sha256=OpOxex4gxq8AY7Fp3rztFG6uJmGa_lx3gK9v_7WScqM,2077
7
- awslabs/mysql_mcp_server/connection/asyncmy_pool_connection.py,sha256=sgyQ3qocbYfeApLgn_UACPEVpVFPN5f4FMUSA4FmudA,11090
7
+ awslabs/mysql_mcp_server/connection/asyncmy_pool_connection.py,sha256=Z6MdLiW7fNHy2EpXcCc7Q4tjupvpSpqKTwfqceluZ5A,11097
8
8
  awslabs/mysql_mcp_server/connection/db_connection_singleton.py,sha256=RMJJyAX_IE3S8k_zmXGQ-dqvUUaEKELGAAYieFWjkP0,5371
9
9
  awslabs/mysql_mcp_server/connection/rds_data_api_connection.py,sha256=OAQHuRXxXcjrPYY9bJPh-b8q2XvNrv1aXiCO5eDwQKc,3310
10
- awslabs_mysql_mcp_server-1.0.8.dist-info/METADATA,sha256=zTJgz2FA2nZyPrJNYVvqaJ89BLCG8W9BBN0ahYFxTWk,8059
11
- awslabs_mysql_mcp_server-1.0.8.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
12
- awslabs_mysql_mcp_server-1.0.8.dist-info/entry_points.txt,sha256=dQAG1BpfKE6diUKtCqzxwvWfPxDWGIEa87YcEb0T4rc,82
13
- awslabs_mysql_mcp_server-1.0.8.dist-info/licenses/LICENSE,sha256=CeipvOyAZxBGUsFoaFqwkx54aPnIKEtm9a5u2uXxEws,10142
14
- awslabs_mysql_mcp_server-1.0.8.dist-info/licenses/NOTICE,sha256=lpdr2_2JGgD-RqTEnqMJttKCZVvC88gX4rbk0m8UifU,92
15
- awslabs_mysql_mcp_server-1.0.8.dist-info/RECORD,,
10
+ awslabs_mysql_mcp_server-1.0.9.dist-info/METADATA,sha256=E_MjjVxP2Du3xDEl3cyWMdnb9mW9Pwuz3LuYiYeRxlU,8059
11
+ awslabs_mysql_mcp_server-1.0.9.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
12
+ awslabs_mysql_mcp_server-1.0.9.dist-info/entry_points.txt,sha256=dQAG1BpfKE6diUKtCqzxwvWfPxDWGIEa87YcEb0T4rc,82
13
+ awslabs_mysql_mcp_server-1.0.9.dist-info/licenses/LICENSE,sha256=CeipvOyAZxBGUsFoaFqwkx54aPnIKEtm9a5u2uXxEws,10142
14
+ awslabs_mysql_mcp_server-1.0.9.dist-info/licenses/NOTICE,sha256=lpdr2_2JGgD-RqTEnqMJttKCZVvC88gX4rbk0m8UifU,92
15
+ awslabs_mysql_mcp_server-1.0.9.dist-info/RECORD,,