mcp-dbutils 0.2.11__tar.gz → 0.4.0__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.
Files changed (38) hide show
  1. mcp_dbutils-0.4.0/.github/workflows/release.yml +49 -0
  2. mcp_dbutils-0.4.0/CHANGELOG.md +615 -0
  3. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/PKG-INFO +4 -4
  4. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/README.md +3 -3
  5. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/README_CN.md +3 -3
  6. mcp_dbutils-0.4.0/config.yaml.example +29 -0
  7. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/pyproject.toml +14 -1
  8. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/src/mcp_dbutils/__init__.py +7 -5
  9. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/src/mcp_dbutils/base.py +29 -10
  10. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/src/mcp_dbutils/log.py +3 -3
  11. mcp_dbutils-0.4.0/src/mcp_dbutils/postgres/config.py +150 -0
  12. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/src/mcp_dbutils/postgres/handler.py +6 -1
  13. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/src/mcp_dbutils/postgres/server.py +6 -2
  14. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/src/mcp_dbutils/sqlite/handler.py +6 -1
  15. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/src/mcp_dbutils/sqlite/server.py +6 -2
  16. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/tests/integration/test_postgres.py +5 -1
  17. mcp_dbutils-0.4.0/tests/integration/test_postgres_config.py +129 -0
  18. mcp_dbutils-0.4.0/tests/integration/test_prompts.py +117 -0
  19. mcp_dbutils-0.2.11/.github/workflows/publish.yml +0 -33
  20. mcp_dbutils-0.2.11/CHANGELOG.md +0 -158
  21. mcp_dbutils-0.2.11/config.yaml.example +0 -18
  22. mcp_dbutils-0.2.11/src/mcp_dbutils/postgres/config.py +0 -66
  23. mcp_dbutils-0.2.11/tests/integration/test_prompts.py +0 -41
  24. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/.coveragerc +0 -0
  25. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/.github/workflows/test.yml +0 -0
  26. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/.gitignore +0 -0
  27. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/Dockerfile +0 -0
  28. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/LICENSE +0 -0
  29. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/smithery.yaml +0 -0
  30. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/src/mcp_dbutils/config.py +0 -0
  31. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/src/mcp_dbutils/postgres/__init__.py +0 -0
  32. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/src/mcp_dbutils/sqlite/__init__.py +0 -0
  33. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/src/mcp_dbutils/sqlite/config.py +0 -0
  34. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/src/mcp_dbutils/stats.py +0 -0
  35. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/tests/conftest.py +0 -0
  36. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/tests/integration/test_monitoring.py +0 -0
  37. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/tests/integration/test_sqlite.py +0 -0
  38. {mcp_dbutils-0.2.11 → mcp_dbutils-0.4.0}/tests/unit/test_stats.py +0 -0
@@ -0,0 +1,49 @@
1
+ name: Release
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+
8
+ jobs:
9
+ release:
10
+ runs-on: ubuntu-latest
11
+ concurrency: release
12
+ environment:
13
+ name: pypi
14
+ url: https://pypi.org/p/mcp-dbutils
15
+ permissions:
16
+ id-token: write
17
+ contents: write
18
+
19
+ steps:
20
+ - uses: actions/checkout@v4
21
+ with:
22
+ fetch-depth: 0
23
+
24
+ - name: Set up Python
25
+ uses: actions/setup-python@v4
26
+ with:
27
+ python-version: '3.10'
28
+
29
+ - name: Install tools
30
+ run: |
31
+ curl -LsSf https://astral.sh/uv/install.sh | sh
32
+ echo "$HOME/.cargo/bin" >> $GITHUB_PATH
33
+
34
+ - name: Determine Version and Create Release
35
+ id: version
36
+ uses: python-semantic-release/python-semantic-release@master
37
+ with:
38
+ github_token: ${{ secrets.GITHUB_TOKEN }}
39
+ build: false
40
+
41
+ - name: Build Package
42
+ if: steps.version.outputs.released == 'true'
43
+ run: |
44
+ which uv
45
+ uv build
46
+
47
+ - name: Publish to PyPI
48
+ if: steps.version.outputs.released == 'true'
49
+ uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,615 @@
1
+ # CHANGELOG
2
+
3
+
4
+ ## v0.4.0 (2025-03-01)
5
+
6
+ ### Features
7
+
8
+ - **config**: Add JDBC URL support for PostgreSQL
9
+ ([#3](https://github.com/donghao1393/mcp-dbutils/pull/3),
10
+ [`4f148f3`](https://github.com/donghao1393/mcp-dbutils/commit/4f148f31d5dc623b8b39201f0270d8f523e65238))
11
+
12
+ - Add JDBC URL parsing with strict security measures - Require credentials to be provided separately
13
+ - Implement validation for all required parameters - Add comprehensive test coverage
14
+
15
+ Closes #2
16
+
17
+
18
+ ## v0.3.0 (2025-02-16)
19
+
20
+ ### Bug Fixes
21
+
22
+ - Fix pkg_meta reference error in DatabaseServer
23
+ ([`9bcc607`](https://github.com/donghao1393/mcp-dbutils/commit/9bcc607378df09fee8ef301c1ce0247f419c2dab))
24
+
25
+ - Move pkg_meta initialization before its usage - Add comment to clarify the purpose of pkg_meta -
26
+ Fix the variable reference error that caused server startup failure
27
+
28
+ - Fix prompts/list timeout by using correct decorator pattern
29
+ ([`227f86d`](https://github.com/donghao1393/mcp-dbutils/commit/227f86db4c050439a382118df1bc62944f35aea4))
30
+
31
+ - Update Server initialization with version - Simplify list_prompts handler to return raw data - Add
32
+ comprehensive error handling in tests - Add debug logging for better traceability
33
+
34
+ - Unify logger naming across the project
35
+ ([`088e60b`](https://github.com/donghao1393/mcp-dbutils/commit/088e60becb7112dc0a5da256b56d0f79ed1db223))
36
+
37
+ - Use package metadata for logger names - Add consistent naming hierarchy: - Root: mcp-dbutils -
38
+ Server: mcp-dbutils.server - Handler: mcp-dbutils.handler.<database> - Database:
39
+ mcp-dbutils.db.<type> - Remove hardcoded server names
40
+
41
+ - Unify prompts handler registration and remove duplicate init options
42
+ ([`6031592`](https://github.com/donghao1393/mcp-dbutils/commit/60315922b052f252005ed77fd3978d8cff085056))
43
+
44
+ - Use package metadata for server name and version
45
+ ([`7f48a6d`](https://github.com/donghao1393/mcp-dbutils/commit/7f48a6df50830d58c534495fc7bfc9198e9fbcc5))
46
+
47
+ - Replace hardcoded server name and version with values from pyproject.toml - Add importlib.metadata
48
+ to read package information - Ensure consistent versioning across the project
49
+
50
+ ### Build System
51
+
52
+ - Simplify semantic-release configuration
53
+ ([`0f37153`](https://github.com/donghao1393/mcp-dbutils/commit/0f37153a0d7205238d0f43c16c97a390a3e368df))
54
+
55
+ - Remove __version__ variable reference - Change build command to use uv build - Keep version
56
+ management in pyproject.toml only
57
+
58
+ ### Code Style
59
+
60
+ - Unify log timestamp format with MCP framework
61
+ ([`c341fb1`](https://github.com/donghao1393/mcp-dbutils/commit/c341fb1d05144c5c925fed25bfcd69be55ee7803))
62
+
63
+ - Use milliseconds precision in log timestamps to match MCP framework
64
+ ([`2aae2fd`](https://github.com/donghao1393/mcp-dbutils/commit/2aae2fd06bf9b505105fd6b0671d70ba7dfef0f5))
65
+
66
+ ### Continuous Integration
67
+
68
+ - Add automatic release
69
+ ([`b69e242`](https://github.com/donghao1393/mcp-dbutils/commit/b69e2429857824f0807eb76baccbbdf855c89e45))
70
+
71
+ - Add GitHub Actions workflow for automatic releases - Configure release triggers - Set up
72
+ permissions - Use python-semantic-release action
73
+
74
+ - Add uv installation to release workflow
75
+ ([`62e0362`](https://github.com/donghao1393/mcp-dbutils/commit/62e036254cc1af6d1a1a3028838652365a528c53))
76
+
77
+ - Install uv before running semantic-release - Add uv binary to GitHub PATH - Ensure build command
78
+ can be executed
79
+
80
+ - Improve release workflow
81
+ ([`07128a0`](https://github.com/donghao1393/mcp-dbutils/commit/07128a0ea7687963531e1aada24cc4083540272f))
82
+
83
+ - Separate version determination and build steps - Use actions/setup-python for Python environment -
84
+ Disable automatic build in semantic-release - Add manual build step using uv - Fix invalid action
85
+ parameters
86
+
87
+ - Improve release workflow reliability
88
+ ([`4dac367`](https://github.com/donghao1393/mcp-dbutils/commit/4dac36749917b0d3fec94de5bcce1b5b0295e94f))
89
+
90
+ - Disable build in semantic-release - Add debug command to verify uv installation - Keep using uv
91
+ for package building - Ensure PATH is properly set
92
+
93
+ - Integrate PyPI publishing into release workflow
94
+ ([`2ebd3f3`](https://github.com/donghao1393/mcp-dbutils/commit/2ebd3f327748fc78dd7e33e366517120260b3d3b))
95
+
96
+ - Add upload_to_pypi option to semantic-release action - Enable build in semantic-release - Remove
97
+ separate publish workflow - Simplify release process
98
+
99
+ - Update publish workflow trigger
100
+ ([`26a6d79`](https://github.com/donghao1393/mcp-dbutils/commit/26a6d79eb8940cde6fb61ebe601754a1d8f22f0b))
101
+
102
+ - Add 'created' event type to release trigger - Support automatic PyPI publishing when
103
+ semantic-release creates a release - Keep 'published' event for manual releases
104
+
105
+ - Update release workflow for trusted publishing
106
+ ([`8297cb8`](https://github.com/donghao1393/mcp-dbutils/commit/8297cb88b496c55d1f84355ed1a015ebf80a2c42))
107
+
108
+ - Add PyPI environment configuration - Use correct PyPI publish action version - Configure trusted
109
+ publishing permissions - Add PyPI project URL
110
+
111
+ ### Documentation
112
+
113
+ - Unify server name in configuration examples
114
+ ([`5380898`](https://github.com/donghao1393/mcp-dbutils/commit/538089864e1cef72b0560ff369f30530f4358944))
115
+
116
+ - Change server name from 'dbutils' to 'mcp-dbutils' in all examples - Keep consistent with package
117
+ name and version in pyproject.toml - Update both English and Chinese documentation
118
+
119
+ ### Features
120
+
121
+ - Add database type to error messages
122
+ ([`cf8d53b`](https://github.com/donghao1393/mcp-dbutils/commit/cf8d53baaee247fa6313ab6d0766144f9a3f0024))
123
+
124
+ - Add database type to query results
125
+ ([`0cebfd9`](https://github.com/donghao1393/mcp-dbutils/commit/0cebfd99ffc9201c82a85d0b8e82ba59fa4a958e))
126
+
127
+ - Add version info to startup log
128
+ ([`dc06741`](https://github.com/donghao1393/mcp-dbutils/commit/dc06741fce536884c1aeebd19838877c5901a546))
129
+
130
+
131
+ ## v0.2.11 (2025-02-15)
132
+
133
+ ### Chores
134
+
135
+ - Bump version to 0.2.11
136
+ ([`96b023f`](https://github.com/donghao1393/mcp-dbutils/commit/96b023ff6bae3a643401b639c86403e7ac31df07))
137
+
138
+ ### Features
139
+
140
+ - Implement basic prompts support and list handler
141
+ ([`397e71a`](https://github.com/donghao1393/mcp-dbutils/commit/397e71abca7286626c4eec4482e13ead83871e3a))
142
+
143
+
144
+ ## v0.2.10 (2025-02-15)
145
+
146
+ ### Documentation
147
+
148
+ - Update CHANGELOG for version 0.2.10
149
+ ([`f3a6d4e`](https://github.com/donghao1393/mcp-dbutils/commit/f3a6d4ef0ce8c5fcbb0abf9b0b210447c40ce2c4))
150
+
151
+ ### Features
152
+
153
+ - Add resource monitoring system
154
+ ([`f3ff859`](https://github.com/donghao1393/mcp-dbutils/commit/f3ff859a57c7bb046725a6ee9dd746e06bb488ff))
155
+
156
+ - Add ResourceStats for resource usage tracking - Improve database handlers using template method
157
+ pattern - Implement connection lifecycle monitoring - Add error pattern analysis - Output
158
+ monitoring data through stderr
159
+
160
+ ### Testing
161
+
162
+ - Add tests for resource monitoring system
163
+ ([`ab9a644`](https://github.com/donghao1393/mcp-dbutils/commit/ab9a644bdae750831a9792bda157813eb9ab5ed1))
164
+
165
+ - Add unit tests for ResourceStats - Add integration tests for monitoring - Adjust base handler for
166
+ better testability
167
+
168
+
169
+ ## v0.2.9 (2025-02-15)
170
+
171
+ ### Bug Fixes
172
+
173
+ - Fix logger function calls
174
+ ([`9b9fe45`](https://github.com/donghao1393/mcp-dbutils/commit/9b9fe45b60c74c7e14d7978b011f5c8b2399892d))
175
+
176
+ - Update logger calls to match create_logger function interface - Fix debug log calls in get_handler
177
+ method
178
+
179
+ - Fix logging and variable initialization
180
+ ([`8f68320`](https://github.com/donghao1393/mcp-dbutils/commit/8f68320f13b7e5ca9bf6bb669a0212d0f705367b))
181
+
182
+ - Rename log to logger in DatabaseServer for consistency - Initialize handler variable before try
183
+ block to avoid UnboundLocalError - Fix logger reference in cleanup code
184
+
185
+ - Update handlers to use custom exceptions
186
+ ([`02eb55c`](https://github.com/donghao1393/mcp-dbutils/commit/02eb55c8e4305043b09d8dc1ee4ece78a50c187c))
187
+
188
+ - Update PostgreSQL handler to use DatabaseError - Update SQLite handler to use DatabaseError - Add
189
+ specific error messages for non-SELECT queries - Improve error handling and logging
190
+
191
+ ### Documentation
192
+
193
+ - Update changelog for v0.2.9
194
+ ([`0ccc28e`](https://github.com/donghao1393/mcp-dbutils/commit/0ccc28e926e54d7fad84f74dce36fcad75bfd7f0))
195
+
196
+ ### Features
197
+
198
+ - Optimize database type handling and error system
199
+ ([`045b62d`](https://github.com/donghao1393/mcp-dbutils/commit/045b62d9a325304248252a86294766debc97590e))
200
+
201
+ - Remove redundant type detection based on path/dbname - Use explicit 'type' field from
202
+ configuration - Add custom exception hierarchy - Enhance logging system
203
+
204
+ ### Testing
205
+
206
+ - Update test cases for custom exceptions
207
+ ([`93ef088`](https://github.com/donghao1393/mcp-dbutils/commit/93ef0889e00b37aaeedc83f4e3ba8debcb897100))
208
+
209
+ - Update test_postgres.py to use DatabaseError - Update test_sqlite.py to use DatabaseError - Fix
210
+ error message assertions for non-SELECT queries
211
+
212
+
213
+ ## v0.2.8 (2025-02-15)
214
+
215
+ ### Bug Fixes
216
+
217
+ - Properly remove all await on mcp_config
218
+ ([`6153277`](https://github.com/donghao1393/mcp-dbutils/commit/6153277f06f404fbd8b8cd851f54024d706b4c05))
219
+
220
+ - Remove await on mcp_config in tests
221
+ ([`e917226`](https://github.com/donghao1393/mcp-dbutils/commit/e917226b5dd23c6eb07200912e7d25f6c73135a2))
222
+
223
+ - Fix type error 'dict' object is not an async iterator - Update both postgres and sqlite tests -
224
+ Remove unnecessary awaits on mcp_config fixture
225
+
226
+ - Remove custom event_loop fixture
227
+ ([`159f9e9`](https://github.com/donghao1393/mcp-dbutils/commit/159f9e9b86c7979061ffca3cf466ae81f642d67a))
228
+
229
+ - Remove custom event_loop fixture to use pytest-asyncio's default - Revert pyproject.toml changes
230
+ to minimize modifications - Fix pytest-asyncio deprecation warning
231
+
232
+ - Use pytest_asyncio.fixture for async fixtures
233
+ ([`ea08512`](https://github.com/donghao1393/mcp-dbutils/commit/ea0851208b5c84331df50c6a1261acc24dbe7070))
234
+
235
+ - Replace @pytest.fixture with @pytest_asyncio.fixture for async fixtures - Keep original
236
+ @pytest.fixture for non-async event_loop - Fix pytest-asyncio deprecation warnings
237
+
238
+ ### Chores
239
+
240
+ - Bump version to 0.2.8
241
+ ([`d72cf52`](https://github.com/donghao1393/mcp-dbutils/commit/d72cf5272324cdb5164291b91139e537a07980db))
242
+
243
+ - Update version in pyproject.toml - Add 0.2.8 changelog entry for test improvements - Document
244
+ pytest-asyncio configuration changes
245
+
246
+ - Configure pytest-asyncio fixture loop scope
247
+ ([`d8ca223`](https://github.com/donghao1393/mcp-dbutils/commit/d8ca22318609cff81fa2b1bd0a308cf97d3a7558))
248
+
249
+ - Set asyncio_mode to strict - Set asyncio_default_fixture_loop_scope to function - Fix
250
+ pytest-asyncio configuration warning
251
+
252
+ - Configure pytest-asyncio mode to auto
253
+ ([`7898f61`](https://github.com/donghao1393/mcp-dbutils/commit/7898f61b960f74c4a3ca42366eb6004a6ca6d070))
254
+
255
+ - Add pytest config to remove asyncio warning - Set asyncio_mode to auto in tool.pytest.ini_options
256
+
257
+
258
+ ## v0.2.7 (2025-02-15)
259
+
260
+ ### Bug Fixes
261
+
262
+ - Add venv creation in CI workflow
263
+ ([`386faec`](https://github.com/donghao1393/mcp-dbutils/commit/386faec3213a7cd4ce7e14a43225f005f3f28702))
264
+
265
+ - Update coverage badge configuration
266
+ ([`c6bc9bd`](https://github.com/donghao1393/mcp-dbutils/commit/c6bc9bdee4006fc8dd2d3e4dcf9111ce4ad104b0))
267
+
268
+ - Update to dynamic-badges-action v1.7.0 - Ensure integer percentage value - Add proper quotes to
269
+ parameters
270
+
271
+ ### Features
272
+
273
+ - Add coverage badge to README
274
+ ([`20435d8`](https://github.com/donghao1393/mcp-dbutils/commit/20435d87c657413d656cf61abb5e16bcf6fc0300))
275
+
276
+ - Added coverage badge generation in CI workflow - Added coverage badge to README - Updated
277
+ CHANGELOG.md
278
+
279
+ - Add Github Actions workflow for automated testing
280
+ ([`355a863`](https://github.com/donghao1393/mcp-dbutils/commit/355a863193ead9d21d928c21453e64c67e71d760))
281
+
282
+ - Added GitHub Actions workflow for test automation - Added PostgreSQL service in CI environment -
283
+ Added detailed test and coverage reporting - Bump version to 0.2.7
284
+
285
+
286
+ ## v0.2.6 (2025-02-12)
287
+
288
+ ### Features
289
+
290
+ - Add test coverage reporting
291
+ ([`93fe2f7`](https://github.com/donghao1393/mcp-dbutils/commit/93fe2f73dc472c8e8b5e7eb0a1b65879c806aa8a))
292
+
293
+ - Added pytest-cov for test coverage tracking - Added .coveragerc configuration - HTML coverage
294
+ report generation - Updated .gitignore for coverage files - Updated CHANGELOG.md - Bump version to
295
+ 0.2.6
296
+
297
+
298
+ ## v0.2.5 (2025-02-12)
299
+
300
+ ### Documentation
301
+
302
+ - Enhance Docker documentation with database connection details
303
+ ([`af42c97`](https://github.com/donghao1393/mcp-dbutils/commit/af42c97259eb9a5f5f2d135f8bac9690029fa843))
304
+
305
+ - Add examples for SQLite database file mapping - Document host PostgreSQL connection from container
306
+ - Provide configuration examples for different OS environments - Add notes about
307
+ host.docker.internal and network settings
308
+
309
+ - Show real-time chart on readme
310
+ ([`704e5fd`](https://github.com/donghao1393/mcp-dbutils/commit/704e5fde808b996f00b51c1f534073e262c94384))
311
+
312
+ - Update changelog for v0.2.5
313
+ ([`cb71c83`](https://github.com/donghao1393/mcp-dbutils/commit/cb71c831193c7b0758592075271d90ff48b00c94))
314
+
315
+ ### Features
316
+
317
+ - Add initial automated tests
318
+ ([`935a77b`](https://github.com/donghao1393/mcp-dbutils/commit/935a77b0d5076fe141a92128eeabc249ff3489c8))
319
+
320
+ - Add integration tests for PostgreSQL and SQLite handlers: * Table listing and schema querying *
321
+ SELECT query execution and result formatting * Non-SELECT query rejection * Error handling for
322
+ invalid queries - Configure test fixtures and environments in conftest.py - Set up pytest
323
+ configurations in pyproject.toml - Update .gitignore to exclude memory-bank folder for cline
324
+
325
+ Tests verify core functionality while adhering to read-only requirements.
326
+
327
+
328
+ ## v0.2.4 (2025-02-09)
329
+
330
+ ### Documentation
331
+
332
+ - Major documentation improvements and version 0.2.4
333
+ ([`7a9404a`](https://github.com/donghao1393/mcp-dbutils/commit/7a9404ad513d4b1f65f9c74f6a3eac0ea43058c9))
334
+
335
+ - Unified server configuration name to "dbutils" - Added architecture diagrams in both English and
336
+ Chinese - Enhanced installation instructions with environment variables - Added contributing
337
+ guidelines - Added acknowledgments section - Updated badges and improved formatting - Bump version
338
+ to 0.2.4
339
+
340
+
341
+ ## v0.2.3 (2025-02-09)
342
+
343
+ ### Bug Fixes
344
+
345
+ - Remove uv cache dependency in GitHub Actions
346
+ ([`a68f32e`](https://github.com/donghao1393/mcp-dbutils/commit/a68f32e5515ca6b6253442d74a5b9112e7ebf852))
347
+
348
+ - Remove cache-dependency-glob parameter - Disable uv cache to avoid dependency on uv.lock file
349
+
350
+ ### Chores
351
+
352
+ - Bump version to 0.2.3
353
+ ([`771e01e`](https://github.com/donghao1393/mcp-dbutils/commit/771e01efcf8ecb32c85b133836d5f179a0f2ce08))
354
+
355
+ - Update version in pyproject.toml - Add version 0.2.3 to CHANGELOG.md - Document installation
356
+ guides, internationalization, and CI/CD additions
357
+
358
+ ### Continuous Integration
359
+
360
+ - Add PyPI publishing workflow
361
+ ([`ae5f334`](https://github.com/donghao1393/mcp-dbutils/commit/ae5f334190091207302a258311172804fd25ac16))
362
+
363
+ - Create .github/workflows/publish.yml - Configure uv environment using astral-sh/setup-uv@v4 - Set
364
+ up automatic build and PyPI publishing - Enable trusted publishing mechanism
365
+
366
+ ### Documentation
367
+
368
+ - Add MIT license and update project metadata
369
+ ([`f98e656`](https://github.com/donghao1393/mcp-dbutils/commit/f98e656804d279bb53e193bfa87bfd1cd240e0db))
370
+
371
+ - Update installation guide and add English README
372
+ ([`a4e60e0`](https://github.com/donghao1393/mcp-dbutils/commit/a4e60e0e792e34a4f327fe8a49e1a24a430b2abb))
373
+
374
+ - Add installation methods (uvx/pip/docker) - Update configuration examples for each installation
375
+ method - Create English README with badges - Update project name to mcp-dbutils - Add
376
+ cross-references between Chinese and English docs
377
+
378
+ - Update version to 0.2.2 and add CHANGELOG
379
+ ([`381c69b`](https://github.com/donghao1393/mcp-dbutils/commit/381c69bf31af5f58d96f871de0088214cc77ca48))
380
+
381
+ - 添加中文readme文档
382
+ ([`a3737b9`](https://github.com/donghao1393/mcp-dbutils/commit/a3737b995857b414c5ba40f1958f2b7b9b2aa65d))
383
+
384
+ - 添加README_CN.md详细说明项目功能和使用方法 - 重点解释抽象层设计理念和架构 - 包含配置示例和使用示范 - 提供完整的API文档
385
+
386
+
387
+ ## v0.2.2 (2025-02-09)
388
+
389
+ ### Bug Fixes
390
+
391
+ - Add missing Path import in sqlite server
392
+ ([`fb35c1a`](https://github.com/donghao1393/mcp-dbutils/commit/fb35c1a56531456ca27319922b20efe14381b38d))
393
+
394
+ - Add pathlib import for Path usage in SQLite server - Fix code formatting
395
+
396
+ - Automatic database type detection from config
397
+ ([`9b69882`](https://github.com/donghao1393/mcp-dbutils/commit/9b698824acc721cd697325ff0c601e11cd68ef33))
398
+
399
+ - Remove --type argument and detect db type from config - Unify configuration handling for both
400
+ postgres and sqlite - Detect db type based on config parameters - Update SqliteServer to match
401
+ PostgresServer interface
402
+
403
+ ### Features
404
+
405
+ - Add explicit database type declaration and awareness
406
+ ([`2d47804`](https://github.com/donghao1393/mcp-dbutils/commit/2d47804ca917e2f59b0832a7a6c92789fc97f0b8))
407
+
408
+ 1. Add required 'type' field to configs to explicitly declare database type 2. Standardize field
409
+ naming, rename 'db_path' to 'path' 3. Include database type and config name in query results 4.
410
+ Restructure response format to unify normal results and error messages
411
+
412
+ This change enables LLMs to be aware of the database type in use, allowing them to auto-correct when
413
+ incorrect SQL syntax is detected.
414
+
415
+ - Add password support for sqlite databases
416
+ ([`537f1dc`](https://github.com/donghao1393/mcp-dbutils/commit/537f1dc96291ed57dbe7a52c9c7a80a868270152))
417
+
418
+ - Support password-protected SQLite databases in config - Use URI connection string for SQLite with
419
+ password - Update connection handling and parameter passing - Add password masking in logs
420
+
421
+ - Remove required --database argument and enhance logging
422
+ ([`9b49ac7`](https://github.com/donghao1393/mcp-dbutils/commit/9b49ac70e88a8c1d0469cdb36ae8608fd01ccaaa))
423
+
424
+ - Remove mandatory --database argument - Add connection status monitoring for all databases - Add
425
+ automatic retry mechanism with configurable interval - Add MCP_DB_RETRY_INTERVAL environment
426
+ variable (default: 1800s) - Add proper MCP_DEBUG support - Remove duplicated code - Improve
427
+ logging for connection status changes
428
+
429
+ - Standardize logging
430
+ ([`df264b5`](https://github.com/donghao1393/mcp-dbutils/commit/df264b55aed6341778f860e05072306cbb24388d))
431
+
432
+ - Use standardized logging mechanism from log.py
433
+
434
+ - **sqlite**: Add support for dynamic database switching
435
+ ([`3f71de0`](https://github.com/donghao1393/mcp-dbutils/commit/3f71de0d220eca8252f325b264ccaa401fd71646))
436
+
437
+ - Add config_path parameter to SQLite server initialization - Add optional database parameter to
438
+ query tool - Implement dynamic database switching in call_tool method - Keep interface consistent
439
+ with PostgreSQL server
440
+
441
+ ### Refactoring
442
+
443
+ - Redesign database server architecture for dynamic database switching
444
+ ([`7f0a7b9`](https://github.com/donghao1393/mcp-dbutils/commit/7f0a7b92561baf357b67aa5596b6842659a934bb))
445
+
446
+ - Add DatabaseHandler base class for individual database connections - Move database operations from
447
+ server to handlers - Implement on-demand database handler creation and cleanup - Simplify server
448
+ initialization and configuration - Make database parameter required in query tool - Remove the
449
+ remaining mcp_postgres directories and files
450
+
451
+ - Remove default database connection behavior
452
+ ([`45fe01c`](https://github.com/donghao1393/mcp-dbutils/commit/45fe01c1ae27cde43843e410c45826565a18fe50))
453
+
454
+ - Remove default database concept from base implementation - Require explicit database specification
455
+ for all operations - Convert PostgreSQL handler from connection pool to per-operation connections
456
+ - Remove immediate connection testing in handlers - Fix resource cleanup in PostgreSQL handler
457
+
458
+
459
+ ## v0.2.1 (2025-02-09)
460
+
461
+ ### Bug Fixes
462
+
463
+ - Correct stdio transport initialization in base class
464
+ ([`e9558c2`](https://github.com/donghao1393/mcp-dbutils/commit/e9558c20523d157461054442f8e3dedfb4cb930e))
465
+
466
+ - Remove non-existent create_stdio_transport method - Use stdio_server directly from
467
+ mcp.server.stdio
468
+
469
+ ### Features
470
+
471
+ - Add base classes and shared configurations
472
+ ([`bd82bfc`](https://github.com/donghao1393/mcp-dbutils/commit/bd82bfc1a5145df4664758b87c35ecd917f99f1a))
473
+
474
+ - Add DatabaseServer abstract base class - Add DatabaseConfig abstract base class - Update main
475
+ entry point to support multiple database types - Implement shared configuration utilities
476
+
477
+ - Add sqlite database support
478
+ ([`7d0afb3`](https://github.com/donghao1393/mcp-dbutils/commit/7d0afb37d9711c627761699fe04185e1735969b0))
479
+
480
+ - Add SqliteConfig for SQLite configuration - Add SqliteServer implementation with basic query
481
+ features - Support table schema inspection and listing - Match existing PostgreSQL feature set
482
+ where applicable
483
+
484
+ ### Refactoring
485
+
486
+ - Update postgres code to use base classes
487
+ ([`51146f4`](https://github.com/donghao1393/mcp-dbutils/commit/51146f4882ff028705565ba8410f4bbd6c61c67e))
488
+
489
+ - Inherit PostgresConfig from base DatabaseConfig - Implement abstract methods in PostgresServer -
490
+ Move postgres-specific code to postgres module - Update connection and query handling
491
+
492
+
493
+ ## v0.2.0 (2025-02-08)
494
+
495
+ ### Refactoring
496
+
497
+ - Rename project to mcp-dbutils and restructure directories
498
+ ([`ddf3cea`](https://github.com/donghao1393/mcp-dbutils/commit/ddf3cea41d9368eed11cb5b7a3551b1abd058c9e))
499
+
500
+ - Rename project from mcp-postgres to mcp-dbutils - Update project description to reflect
501
+ multi-database support - Create directories for postgres and sqlite modules - Move existing files
502
+ to new structure
503
+
504
+
505
+ ## v0.1.1 (2025-02-08)
506
+
507
+
508
+ ## v0.1.0 (2025-02-08)
509
+
510
+ ### Bug Fixes
511
+
512
+ - Adjust database connection handling
513
+ ([`060354a`](https://github.com/donghao1393/mcp-dbutils/commit/060354a5f681ba67da46488705f877a8ac9fc45f))
514
+
515
+ - Split connection parameters to fix VPN connection issue - Refactor connection pool creation based
516
+ on working example - Add better error logging for connection failures - Remove trailing spaces
517
+
518
+ - Correct logger function usage
519
+ ([`cbace7c`](https://github.com/donghao1393/mcp-dbutils/commit/cbace7cf8226d87c36bc5bf3aadda383e0f1abff))
520
+
521
+ - Fix logger function calls to match the custom logger implementation - Change logger.warning/warn
522
+ to direct function calls with level parameter - Maintain consistent logging format across the
523
+ application
524
+
525
+ This fixes the AttributeError related to logger function calls
526
+
527
+ - Correct package installation and command line args
528
+ ([`dfba347`](https://github.com/donghao1393/mcp-dbutils/commit/dfba34759393090c4fa728b4a72ad2d34d18f70c))
529
+
530
+ - Add proper pyproject.toml configuration - Fix module import path issues - Update argument handling
531
+ in server
532
+
533
+ - Remove required db-name parameter and add auto-selection
534
+ ([`482cfa3`](https://github.com/donghao1393/mcp-dbutils/commit/482cfa336e31f417187c255ebbcaa45c1a8ba4e9))
535
+
536
+ - Remove required flag from db-name argument - Add auto-selection of first available database when
537
+ db-name not specified - Keep connection check for all configured databases - Add logging for
538
+ database connection status - Maintain backwards compatibility with manual db selection
539
+
540
+ ### Features
541
+
542
+ - Add connection check for all configured databases
543
+ ([`162b5ba`](https://github.com/donghao1393/mcp-dbutils/commit/162b5baabe851f690406a60b4f349abb402bfc7d))
544
+
545
+ - Add connection check for all databases at startup - Continue if some databases fail but at least
546
+ one succeeds - Add detailed connection status logging - Make database name parameter required -
547
+ Improve error messages with connection status details
548
+
549
+ - Initialize Postgres MCP server
550
+ ([`f91a8bc`](https://github.com/donghao1393/mcp-dbutils/commit/f91a8bc6d16a2d53bdf53ccc05229cade8e9e573))
551
+
552
+ - Support local host override for VPN environments - Add connection pool management - Implement
553
+ schema inspection and read-only query tools - Add configuration separation for better
554
+ maintainability
555
+
556
+ - Support multiple database configurations in YAML
557
+ ([`cdeaa02`](https://github.com/donghao1393/mcp-dbutils/commit/cdeaa024eac5469caeb978d0ab455bb264006c4b))
558
+
559
+ - Restructure YAML format to support multiple database targets - Add database selection by name
560
+ (dev-db, test-db etc) - Support default database configuration - Add validation for database
561
+ configuration selection
562
+
563
+ ### Refactoring
564
+
565
+ - Combine database tools into single query_db tool
566
+ ([`78437c7`](https://github.com/donghao1393/mcp-dbutils/commit/78437c79ec3f1da65e3e96622f1df02c9b7d56da))
567
+
568
+ - Merge database profile selection and SQL query into one tool - Add database_profile as required
569
+ parameter for query_db tool - Remove separate profile selection step - Simplify tool interaction
570
+ flow - Add proper error handling and validation
571
+
572
+ - Combine database tools into single query_db tool
573
+ ([`602cbd8`](https://github.com/donghao1393/mcp-dbutils/commit/602cbd88407d7faf86ec97d18665ee449f500e61))
574
+
575
+ - Merge database profile selection and SQL query into one tool - Add database_profile as required
576
+ parameter for query_db tool - Remove separate profile selection step - Simplify tool interaction
577
+ flow - Add proper error handling and validation
578
+
579
+ This change simplifies the tool interface while maintaining explicit database selection requirement.
580
+
581
+ - Remove default database config
582
+ ([`9ceaa2f`](https://github.com/donghao1393/mcp-dbutils/commit/9ceaa2f7eefceb0b423325f30b6ec181126cd91f))
583
+
584
+ - Remove default database configuration from YAML - Make database name parameter mandatory - Add
585
+ available database names in error message - Simplify configuration structure
586
+
587
+ This change enforces explicit database selection for better clarity and prevents accidental use of
588
+ wrong database environments.
589
+
590
+ - Reorganize project structure
591
+ ([`dc2eace`](https://github.com/donghao1393/mcp-dbutils/commit/dc2eace23b0a5f23227a7d7599d2bec2836a6338))
592
+
593
+ - Rename package from 'postgres' to 'mcp_postgres' - Add logging support - Improve code organization
594
+
595
+ - Simplify and improve server code
596
+ ([`c56a0a0`](https://github.com/donghao1393/mcp-dbutils/commit/c56a0a011052d4419e5dd4ed1b9173a37fff35c1))
597
+
598
+ - Merge duplicate tool handlers into a single unified handler - Add YAML configuration support with
599
+ multiple database profiles - Improve connection management with proper pool handling - Add masked
600
+ logging for sensitive connection information - Refactor command line arguments for better
601
+ usability
602
+
603
+ - Split database tools and enforce explicit database selection
604
+ ([`2d6bfa3`](https://github.com/donghao1393/mcp-dbutils/commit/2d6bfa3e0779ef42e07dbc8884f2153230ad4f5c))
605
+
606
+ - Add set_database_profile tool with proper decorator - Split handle_call_tool into separate
607
+ handlers for each tool - Add validation for database selection before SQL execution - Update tool
608
+ handlers to return proper MCP response types - Add current database profile tracking
609
+
610
+ - Support YAML config for database connection
611
+ ([`35ac49c`](https://github.com/donghao1393/mcp-dbutils/commit/35ac49c7d9a93e0d5bbd9d741a5660cbc73004d0))
612
+
613
+ - Add YAML config support as an alternative to database URL - Implement PostgresConfig class with
614
+ both YAML and URL parsing - Use anyio for better async compatibility - Keep backward compatibility
615
+ with URL-based configuration - Improve connection parameter handling for special characters