mcp-dbutils 0.2.3__tar.gz → 0.2.4__tar.gz
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.
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/CHANGELOG.md +10 -0
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/PKG-INFO +76 -9
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/README.md +75 -8
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/README_CN.md +74 -7
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/pyproject.toml +1 -1
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/.github/workflows/publish.yml +0 -0
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/.gitignore +0 -0
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/LICENSE +0 -0
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/config.yaml.example +0 -0
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/src/mcp_dbutils/__init__.py +0 -0
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/src/mcp_dbutils/base.py +0 -0
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/src/mcp_dbutils/config.py +0 -0
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/src/mcp_dbutils/log.py +0 -0
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/src/mcp_dbutils/postgres/__init__.py +0 -0
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/src/mcp_dbutils/postgres/config.py +0 -0
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/src/mcp_dbutils/postgres/handler.py +0 -0
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/src/mcp_dbutils/postgres/server.py +0 -0
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/src/mcp_dbutils/sqlite/__init__.py +0 -0
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/src/mcp_dbutils/sqlite/config.py +0 -0
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/src/mcp_dbutils/sqlite/handler.py +0 -0
- {mcp_dbutils-0.2.3 → mcp_dbutils-0.2.4}/src/mcp_dbutils/sqlite/server.py +0 -0
@@ -2,6 +2,16 @@
|
|
2
2
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
4
4
|
|
5
|
+
## [0.2.4] - 2025-02-09
|
6
|
+
|
7
|
+
### Changed
|
8
|
+
- Unified server configuration name to "dbutils"
|
9
|
+
- Improved documentation formatting and readability
|
10
|
+
- Added architecture diagrams
|
11
|
+
- Added contribution guidelines
|
12
|
+
- Enhanced installation instructions with environment variables
|
13
|
+
- Added acknowledgments section
|
14
|
+
|
5
15
|
## [0.2.3] - 2025-02-09
|
6
16
|
|
7
17
|
### Added
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: mcp-dbutils
|
3
|
-
Version: 0.2.
|
3
|
+
Version: 0.2.4
|
4
4
|
Summary: MCP Database Utilities Service
|
5
5
|
Author: Dong Hao
|
6
6
|
License-Expression: MIT
|
@@ -16,7 +16,7 @@ Description-Content-Type: text/markdown
|
|
16
16
|
|
17
17
|

|
18
18
|

|
19
|
-

|
20
20
|

|
21
21
|
|
22
22
|
[中文文档](README_CN.md)
|
@@ -45,9 +45,16 @@ uvx mcp-dbutils --config /path/to/config.yaml
|
|
45
45
|
Add to Claude configuration:
|
46
46
|
```json
|
47
47
|
"mcpServers": {
|
48
|
-
"
|
48
|
+
"dbutils": {
|
49
49
|
"command": "uvx",
|
50
|
-
"args": [
|
50
|
+
"args": [
|
51
|
+
"mcp-dbutils",
|
52
|
+
"--config",
|
53
|
+
"/path/to/config.yaml"
|
54
|
+
],
|
55
|
+
"env": {
|
56
|
+
"MCP_DEBUG": "1" // Optional: Enable debug mode
|
57
|
+
}
|
51
58
|
}
|
52
59
|
}
|
53
60
|
```
|
@@ -60,9 +67,17 @@ pip install mcp-dbutils
|
|
60
67
|
Add to Claude configuration:
|
61
68
|
```json
|
62
69
|
"mcpServers": {
|
63
|
-
"
|
70
|
+
"dbutils": {
|
64
71
|
"command": "python",
|
65
|
-
"args": [
|
72
|
+
"args": [
|
73
|
+
"-m",
|
74
|
+
"mcp_dbutils",
|
75
|
+
"--config",
|
76
|
+
"/path/to/config.yaml"
|
77
|
+
],
|
78
|
+
"env": {
|
79
|
+
"MCP_DEBUG": "1" // Optional: Enable debug mode
|
80
|
+
}
|
66
81
|
}
|
67
82
|
}
|
68
83
|
```
|
@@ -71,16 +86,28 @@ Add to Claude configuration:
|
|
71
86
|
```bash
|
72
87
|
docker run -i --rm \
|
73
88
|
-v /path/to/config.yaml:/app/config.yaml \
|
89
|
+
-e MCP_DEBUG=1 \ # Optional: Enable debug mode
|
74
90
|
mcp/dbutils --config /app/config.yaml
|
75
91
|
```
|
76
92
|
|
77
93
|
Add to Claude configuration:
|
78
94
|
```json
|
79
95
|
"mcpServers": {
|
80
|
-
"
|
96
|
+
"dbutils": {
|
81
97
|
"command": "docker",
|
82
|
-
"args": [
|
83
|
-
|
98
|
+
"args": [
|
99
|
+
"run",
|
100
|
+
"-i",
|
101
|
+
"--rm",
|
102
|
+
"-v",
|
103
|
+
"/path/to/config.yaml:/app/config.yaml",
|
104
|
+
"mcp/dbutils",
|
105
|
+
"--config",
|
106
|
+
"/app/config.yaml"
|
107
|
+
],
|
108
|
+
"env": {
|
109
|
+
"MCP_DEBUG": "1" // Optional: Enable debug mode
|
110
|
+
}
|
84
111
|
}
|
85
112
|
}
|
86
113
|
```
|
@@ -117,6 +144,23 @@ Set environment variable `MCP_DEBUG=1` to enable debug mode for detailed logging
|
|
117
144
|
## Architecture Design
|
118
145
|
|
119
146
|
### Core Concept: Abstraction Layer
|
147
|
+
|
148
|
+
```mermaid
|
149
|
+
graph TD
|
150
|
+
Client[Client] --> DatabaseServer[Database Server]
|
151
|
+
subgraph MCP Server
|
152
|
+
DatabaseServer
|
153
|
+
DatabaseHandler[Database Handler]
|
154
|
+
PostgresHandler[PostgreSQL Handler]
|
155
|
+
SQLiteHandler[SQLite Handler]
|
156
|
+
DatabaseServer --> DatabaseHandler
|
157
|
+
DatabaseHandler --> PostgresHandler
|
158
|
+
DatabaseHandler --> SQLiteHandler
|
159
|
+
end
|
160
|
+
PostgresHandler --> PostgreSQL[(PostgreSQL)]
|
161
|
+
SQLiteHandler --> SQLite[(SQLite)]
|
162
|
+
```
|
163
|
+
|
120
164
|
The abstraction layer design is the core architectural concept in MCP Database Utilities. Just like a universal remote control that works with different devices, users only need to know the basic operations without understanding the underlying complexities.
|
121
165
|
|
122
166
|
#### 1. Simplified User Interaction
|
@@ -216,3 +260,26 @@ Provides SQLite-specific features:
|
|
216
260
|
- File path handling
|
217
261
|
- URI scheme support
|
218
262
|
- Password protection support (optional)
|
263
|
+
|
264
|
+
## Contributing
|
265
|
+
Contributions are welcome! Here's how you can help:
|
266
|
+
|
267
|
+
1. 🐛 Report bugs: Open an issue describing the bug and how to reproduce it
|
268
|
+
2. 💡 Suggest features: Open an issue to propose new features
|
269
|
+
3. 🛠️ Submit PRs: Fork the repo and create a pull request with your changes
|
270
|
+
|
271
|
+
### Development Setup
|
272
|
+
1. Clone the repository
|
273
|
+
2. Create a virtual environment using `uv venv`
|
274
|
+
3. Install dependencies with `uv sync --all-extras`
|
275
|
+
4. Run tests with `pytest`
|
276
|
+
|
277
|
+
For detailed guidelines, see [CONTRIBUTING.md](.github/CONTRIBUTING.md)
|
278
|
+
|
279
|
+
## Acknowledgments
|
280
|
+
- [MCP Servers](https://github.com/modelcontextprotocol/servers) for inspiration and demonstration
|
281
|
+
- AI Editors:
|
282
|
+
* [Claude Desktop](https://claude.ai/download)
|
283
|
+
* [5ire](https://5ire.app/)
|
284
|
+
* [Cline](https://cline.bot)
|
285
|
+
- [Model Context Protocol](https://modelcontextprotocol.io/) for comprehensive interfaces
|
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|

|
4
4
|

|
5
|
-

|
6
6
|

|
7
7
|
|
8
8
|
[中文文档](README_CN.md)
|
@@ -31,9 +31,16 @@ uvx mcp-dbutils --config /path/to/config.yaml
|
|
31
31
|
Add to Claude configuration:
|
32
32
|
```json
|
33
33
|
"mcpServers": {
|
34
|
-
"
|
34
|
+
"dbutils": {
|
35
35
|
"command": "uvx",
|
36
|
-
"args": [
|
36
|
+
"args": [
|
37
|
+
"mcp-dbutils",
|
38
|
+
"--config",
|
39
|
+
"/path/to/config.yaml"
|
40
|
+
],
|
41
|
+
"env": {
|
42
|
+
"MCP_DEBUG": "1" // Optional: Enable debug mode
|
43
|
+
}
|
37
44
|
}
|
38
45
|
}
|
39
46
|
```
|
@@ -46,9 +53,17 @@ pip install mcp-dbutils
|
|
46
53
|
Add to Claude configuration:
|
47
54
|
```json
|
48
55
|
"mcpServers": {
|
49
|
-
"
|
56
|
+
"dbutils": {
|
50
57
|
"command": "python",
|
51
|
-
"args": [
|
58
|
+
"args": [
|
59
|
+
"-m",
|
60
|
+
"mcp_dbutils",
|
61
|
+
"--config",
|
62
|
+
"/path/to/config.yaml"
|
63
|
+
],
|
64
|
+
"env": {
|
65
|
+
"MCP_DEBUG": "1" // Optional: Enable debug mode
|
66
|
+
}
|
52
67
|
}
|
53
68
|
}
|
54
69
|
```
|
@@ -57,16 +72,28 @@ Add to Claude configuration:
|
|
57
72
|
```bash
|
58
73
|
docker run -i --rm \
|
59
74
|
-v /path/to/config.yaml:/app/config.yaml \
|
75
|
+
-e MCP_DEBUG=1 \ # Optional: Enable debug mode
|
60
76
|
mcp/dbutils --config /app/config.yaml
|
61
77
|
```
|
62
78
|
|
63
79
|
Add to Claude configuration:
|
64
80
|
```json
|
65
81
|
"mcpServers": {
|
66
|
-
"
|
82
|
+
"dbutils": {
|
67
83
|
"command": "docker",
|
68
|
-
"args": [
|
69
|
-
|
84
|
+
"args": [
|
85
|
+
"run",
|
86
|
+
"-i",
|
87
|
+
"--rm",
|
88
|
+
"-v",
|
89
|
+
"/path/to/config.yaml:/app/config.yaml",
|
90
|
+
"mcp/dbutils",
|
91
|
+
"--config",
|
92
|
+
"/app/config.yaml"
|
93
|
+
],
|
94
|
+
"env": {
|
95
|
+
"MCP_DEBUG": "1" // Optional: Enable debug mode
|
96
|
+
}
|
70
97
|
}
|
71
98
|
}
|
72
99
|
```
|
@@ -103,6 +130,23 @@ Set environment variable `MCP_DEBUG=1` to enable debug mode for detailed logging
|
|
103
130
|
## Architecture Design
|
104
131
|
|
105
132
|
### Core Concept: Abstraction Layer
|
133
|
+
|
134
|
+
```mermaid
|
135
|
+
graph TD
|
136
|
+
Client[Client] --> DatabaseServer[Database Server]
|
137
|
+
subgraph MCP Server
|
138
|
+
DatabaseServer
|
139
|
+
DatabaseHandler[Database Handler]
|
140
|
+
PostgresHandler[PostgreSQL Handler]
|
141
|
+
SQLiteHandler[SQLite Handler]
|
142
|
+
DatabaseServer --> DatabaseHandler
|
143
|
+
DatabaseHandler --> PostgresHandler
|
144
|
+
DatabaseHandler --> SQLiteHandler
|
145
|
+
end
|
146
|
+
PostgresHandler --> PostgreSQL[(PostgreSQL)]
|
147
|
+
SQLiteHandler --> SQLite[(SQLite)]
|
148
|
+
```
|
149
|
+
|
106
150
|
The abstraction layer design is the core architectural concept in MCP Database Utilities. Just like a universal remote control that works with different devices, users only need to know the basic operations without understanding the underlying complexities.
|
107
151
|
|
108
152
|
#### 1. Simplified User Interaction
|
@@ -202,3 +246,26 @@ Provides SQLite-specific features:
|
|
202
246
|
- File path handling
|
203
247
|
- URI scheme support
|
204
248
|
- Password protection support (optional)
|
249
|
+
|
250
|
+
## Contributing
|
251
|
+
Contributions are welcome! Here's how you can help:
|
252
|
+
|
253
|
+
1. 🐛 Report bugs: Open an issue describing the bug and how to reproduce it
|
254
|
+
2. 💡 Suggest features: Open an issue to propose new features
|
255
|
+
3. 🛠️ Submit PRs: Fork the repo and create a pull request with your changes
|
256
|
+
|
257
|
+
### Development Setup
|
258
|
+
1. Clone the repository
|
259
|
+
2. Create a virtual environment using `uv venv`
|
260
|
+
3. Install dependencies with `uv sync --all-extras`
|
261
|
+
4. Run tests with `pytest`
|
262
|
+
|
263
|
+
For detailed guidelines, see [CONTRIBUTING.md](.github/CONTRIBUTING.md)
|
264
|
+
|
265
|
+
## Acknowledgments
|
266
|
+
- [MCP Servers](https://github.com/modelcontextprotocol/servers) for inspiration and demonstration
|
267
|
+
- AI Editors:
|
268
|
+
* [Claude Desktop](https://claude.ai/download)
|
269
|
+
* [5ire](https://5ire.app/)
|
270
|
+
* [Cline](https://cline.bot)
|
271
|
+
- [Model Context Protocol](https://modelcontextprotocol.io/) for comprehensive interfaces
|
@@ -24,9 +24,16 @@ uvx mcp-dbutils --config /path/to/config.yaml
|
|
24
24
|
添加到 Claude 配置:
|
25
25
|
```json
|
26
26
|
"mcpServers": {
|
27
|
-
"
|
27
|
+
"dbutils": {
|
28
28
|
"command": "uvx",
|
29
|
-
"args": [
|
29
|
+
"args": [
|
30
|
+
"mcp-dbutils",
|
31
|
+
"--config",
|
32
|
+
"/path/to/config.yaml"
|
33
|
+
],
|
34
|
+
"env": {
|
35
|
+
"MCP_DEBUG": "1" // 可选:启用调试模式
|
36
|
+
}
|
30
37
|
}
|
31
38
|
}
|
32
39
|
```
|
@@ -39,9 +46,17 @@ pip install mcp-dbutils
|
|
39
46
|
添加到 Claude 配置:
|
40
47
|
```json
|
41
48
|
"mcpServers": {
|
42
|
-
"
|
49
|
+
"dbutils": {
|
43
50
|
"command": "python",
|
44
|
-
"args": [
|
51
|
+
"args": [
|
52
|
+
"-m",
|
53
|
+
"mcp_dbutils",
|
54
|
+
"--config",
|
55
|
+
"/path/to/config.yaml"
|
56
|
+
],
|
57
|
+
"env": {
|
58
|
+
"MCP_DEBUG": "1" // 可选:启用调试模式
|
59
|
+
}
|
45
60
|
}
|
46
61
|
}
|
47
62
|
```
|
@@ -50,16 +65,28 @@ pip install mcp-dbutils
|
|
50
65
|
```bash
|
51
66
|
docker run -i --rm \
|
52
67
|
-v /path/to/config.yaml:/app/config.yaml \
|
68
|
+
-e MCP_DEBUG=1 \ # 可选:启用调试模式
|
53
69
|
mcp/dbutils --config /app/config.yaml
|
54
70
|
```
|
55
71
|
|
56
72
|
添加到 Claude 配置:
|
57
73
|
```json
|
58
74
|
"mcpServers": {
|
59
|
-
"
|
75
|
+
"dbutils": {
|
60
76
|
"command": "docker",
|
61
|
-
"args": [
|
62
|
-
|
77
|
+
"args": [
|
78
|
+
"run",
|
79
|
+
"-i",
|
80
|
+
"--rm",
|
81
|
+
"-v",
|
82
|
+
"/path/to/config.yaml:/app/config.yaml",
|
83
|
+
"mcp/dbutils",
|
84
|
+
"--config",
|
85
|
+
"/app/config.yaml"
|
86
|
+
],
|
87
|
+
"env": {
|
88
|
+
"MCP_DEBUG": "1" // 可选:启用调试模式
|
89
|
+
}
|
63
90
|
}
|
64
91
|
}
|
65
92
|
```
|
@@ -96,6 +123,23 @@ databases:
|
|
96
123
|
## 架构设计
|
97
124
|
|
98
125
|
### 核心理念:抽象层设计
|
126
|
+
|
127
|
+
```mermaid
|
128
|
+
graph TD
|
129
|
+
Client[客户端] --> DatabaseServer[数据库服务器]
|
130
|
+
subgraph MCP服务器
|
131
|
+
DatabaseServer
|
132
|
+
DatabaseHandler[数据库处理器]
|
133
|
+
PostgresHandler[PostgreSQL处理器]
|
134
|
+
SQLiteHandler[SQLite处理器]
|
135
|
+
DatabaseServer --> DatabaseHandler
|
136
|
+
DatabaseHandler --> PostgresHandler
|
137
|
+
DatabaseHandler --> SQLiteHandler
|
138
|
+
end
|
139
|
+
PostgresHandler --> PostgreSQL[(PostgreSQL数据库)]
|
140
|
+
SQLiteHandler --> SQLite[(SQLite数据库)]
|
141
|
+
```
|
142
|
+
|
99
143
|
在MCP数据库服务中,抽象层设计是最核心的架构思想。它就像一个通用遥控器,不管是控制电视还是空调,用户只需要知道"按下按钮就能完成操作"。
|
100
144
|
|
101
145
|
#### 1. 简化用户交互
|
@@ -195,3 +239,26 @@ except Exception as e:
|
|
195
239
|
- 文件路径处理
|
196
240
|
- URI模式支持
|
197
241
|
- 密码保护支持(可选)
|
242
|
+
|
243
|
+
## 参与贡献
|
244
|
+
欢迎贡献!以下是参与项目的方式:
|
245
|
+
|
246
|
+
1. 🐛 报告问题:创建 issue 描述bug和复现步骤
|
247
|
+
2. 💡 提供建议:创建 issue 提出新功能建议
|
248
|
+
3. 🛠️ 提交PR:fork仓库并创建包含您改动的pull request
|
249
|
+
|
250
|
+
### 开发环境设置
|
251
|
+
1. 克隆仓库
|
252
|
+
2. 使用 `uv venv` 创建虚拟环境
|
253
|
+
3. 使用 `uv sync --all-extras` 安装依赖
|
254
|
+
4. 使用 `pytest` 运行测试
|
255
|
+
|
256
|
+
详细指南请参见 [CONTRIBUTING.md](.github/CONTRIBUTING.md)
|
257
|
+
|
258
|
+
## 致谢
|
259
|
+
- 感谢 [MCP Servers](https://github.com/modelcontextprotocol/servers) 提供的启发和演示
|
260
|
+
- AI编辑器支持:
|
261
|
+
* [Claude Desktop](https://claude.ai/download)
|
262
|
+
* [5ire](https://5ire.app/)
|
263
|
+
* [Cline](https://cline.bot)
|
264
|
+
- 感谢 [Model Context Protocol](https://modelcontextprotocol.io/) 提供丰富的接口支持
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|