db-connect-mcp 0.1.0__py3-none-any.whl → 0.1.2__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.
Potentially problematic release.
This version of db-connect-mcp might be problematic. Click here for more details.
- db_connect_mcp/adapters/base.py +11 -5
- {db_connect_mcp-0.1.0.dist-info → db_connect_mcp-0.1.2.dist-info}/METADATA +1 -1
- {db_connect_mcp-0.1.0.dist-info → db_connect_mcp-0.1.2.dist-info}/RECORD +6 -6
- {db_connect_mcp-0.1.0.dist-info → db_connect_mcp-0.1.2.dist-info}/WHEEL +0 -0
- {db_connect_mcp-0.1.0.dist-info → db_connect_mcp-0.1.2.dist-info}/entry_points.txt +0 -0
- {db_connect_mcp-0.1.0.dist-info → db_connect_mcp-0.1.2.dist-info}/licenses/LICENSE +0 -0
db_connect_mcp/adapters/base.py
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"""Base adapter abstract class for database-specific implementations."""
|
|
2
2
|
|
|
3
3
|
from abc import ABC, abstractmethod
|
|
4
|
-
from typing import Any, Optional
|
|
4
|
+
from typing import Any, Optional, Union, TYPE_CHECKING
|
|
5
5
|
|
|
6
6
|
from sqlalchemy.ext.asyncio import AsyncConnection
|
|
7
7
|
|
|
@@ -10,6 +10,12 @@ from db_connect_mcp.models.database import SchemaInfo
|
|
|
10
10
|
from db_connect_mcp.models.statistics import ColumnStats, Distribution
|
|
11
11
|
from db_connect_mcp.models.table import TableInfo
|
|
12
12
|
|
|
13
|
+
if TYPE_CHECKING:
|
|
14
|
+
from db_connect_mcp.core.connection import AsyncConnectionWrapper
|
|
15
|
+
|
|
16
|
+
# Type alias for connection types
|
|
17
|
+
ConnectionType = Union[AsyncConnection, "AsyncConnectionWrapper"]
|
|
18
|
+
|
|
13
19
|
|
|
14
20
|
class BaseAdapter(ABC):
|
|
15
21
|
"""Base adapter defining database-specific interface."""
|
|
@@ -22,7 +28,7 @@ class BaseAdapter(ABC):
|
|
|
22
28
|
|
|
23
29
|
@abstractmethod
|
|
24
30
|
async def enrich_schema_info(
|
|
25
|
-
self, conn:
|
|
31
|
+
self, conn: ConnectionType, schema_info: SchemaInfo
|
|
26
32
|
) -> SchemaInfo:
|
|
27
33
|
"""
|
|
28
34
|
Enrich schema info with database-specific metadata.
|
|
@@ -38,7 +44,7 @@ class BaseAdapter(ABC):
|
|
|
38
44
|
|
|
39
45
|
@abstractmethod
|
|
40
46
|
async def enrich_table_info(
|
|
41
|
-
self, conn:
|
|
47
|
+
self, conn: ConnectionType, table_info: TableInfo
|
|
42
48
|
) -> TableInfo:
|
|
43
49
|
"""
|
|
44
50
|
Enrich table info with database-specific metadata.
|
|
@@ -55,7 +61,7 @@ class BaseAdapter(ABC):
|
|
|
55
61
|
@abstractmethod
|
|
56
62
|
async def get_column_statistics(
|
|
57
63
|
self,
|
|
58
|
-
conn:
|
|
64
|
+
conn: ConnectionType,
|
|
59
65
|
table_name: str,
|
|
60
66
|
column_name: str,
|
|
61
67
|
schema: Optional[str],
|
|
@@ -77,7 +83,7 @@ class BaseAdapter(ABC):
|
|
|
77
83
|
@abstractmethod
|
|
78
84
|
async def get_value_distribution(
|
|
79
85
|
self,
|
|
80
|
-
conn:
|
|
86
|
+
conn: ConnectionType,
|
|
81
87
|
table_name: str,
|
|
82
88
|
column_name: str,
|
|
83
89
|
schema: Optional[str],
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: db-connect-mcp
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.2
|
|
4
4
|
Summary: Multi-database MCP server for PostgreSQL, MySQL, and ClickHouse
|
|
5
5
|
Project-URL: Homepage, https://github.com/yugui923/db-connect-mcp
|
|
6
6
|
Project-URL: Repository, https://github.com/yugui923/db-connect-mcp
|
|
@@ -2,7 +2,7 @@ db_connect_mcp/__init__.py,sha256=HBy0IhP1gAQEGVscnMsyBtjLGLGx2Utd4SwOMMQijBw,81
|
|
|
2
2
|
db_connect_mcp/__main__.py,sha256=uUbJtogwzOjQatBlmM6Vf0FLYBrtlN1LB25M0DIp25M,361
|
|
3
3
|
db_connect_mcp/server.py,sha256=-k7594K5UeAeIUpuzU5uwLPO793lT8R0L1zwlotbfnQ,17350
|
|
4
4
|
db_connect_mcp/adapters/__init__.py,sha256=f89QV2q4-7iqRyqQEMz7gQ4DbEJcVSzreYF1gUQdf5c,1743
|
|
5
|
-
db_connect_mcp/adapters/base.py,sha256=
|
|
5
|
+
db_connect_mcp/adapters/base.py,sha256=23dIGmdnPZmGnc-PjJgXLrMUru3MWqTI3-alSyA31A4,4124
|
|
6
6
|
db_connect_mcp/adapters/clickhouse.py,sha256=BvSbIJGZZtIIrd6FziVxA6Y-vshqb3Xc_WLuehGdKU0,10619
|
|
7
7
|
db_connect_mcp/adapters/mysql.py,sha256=U-kQ80JiYno5KKXfWgDiXoArine_JqpjHXKHoMq9R_Q,9914
|
|
8
8
|
db_connect_mcp/adapters/postgresql.py,sha256=cLl8AhAc1hquUg-oduhYut9omE_zEkEjBQZBYqpkPl0,12592
|
|
@@ -18,8 +18,8 @@ db_connect_mcp/models/database.py,sha256=MEg5pimkkvMhdre7u2oVWRyuaJToja26Rjro-QC
|
|
|
18
18
|
db_connect_mcp/models/query.py,sha256=FazyV6pWEJFUDlYPswOmCGJTUgT14f9xfzQHZhxh9n0,4398
|
|
19
19
|
db_connect_mcp/models/statistics.py,sha256=ii_UqybC9L5P1DF4KN0XOnG49s4cmYlOdWDAdkVhqUc,6208
|
|
20
20
|
db_connect_mcp/models/table.py,sha256=v1HhItb2UqS9QpAfMgDoDyU_6xDgvy4r3BlEE7QliSs,8445
|
|
21
|
-
db_connect_mcp-0.1.
|
|
22
|
-
db_connect_mcp-0.1.
|
|
23
|
-
db_connect_mcp-0.1.
|
|
24
|
-
db_connect_mcp-0.1.
|
|
25
|
-
db_connect_mcp-0.1.
|
|
21
|
+
db_connect_mcp-0.1.2.dist-info/METADATA,sha256=pSDE1HrJmdkm_MuSHN7z--PFV_iTZniUQggHNTednAE,18111
|
|
22
|
+
db_connect_mcp-0.1.2.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
23
|
+
db_connect_mcp-0.1.2.dist-info/entry_points.txt,sha256=UoN-St_MnE5kk4ZDEvzMi6dCvNi0CmvsqbPpYNxJOac,62
|
|
24
|
+
db_connect_mcp-0.1.2.dist-info/licenses/LICENSE,sha256=c71UYlLh5ubuIlgVlM3EMkFdhWxTIULtUx_a8KOhI8w,1065
|
|
25
|
+
db_connect_mcp-0.1.2.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|