sqlew 1.0.0
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.
- package/ARCHITECTURE.md +636 -0
- package/CHANGELOG.md +107 -0
- package/LICENSE +21 -0
- package/README.md +359 -0
- package/assets/schema.sql +320 -0
- package/assets/sqlew-logo.png +0 -0
- package/dist/constants.d.ts +146 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +230 -0
- package/dist/constants.js.map +1 -0
- package/dist/database.d.ts +94 -0
- package/dist/database.d.ts.map +1 -0
- package/dist/database.js +214 -0
- package/dist/database.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +771 -0
- package/dist/index.js.map +1 -0
- package/dist/schema.d.ts +50 -0
- package/dist/schema.d.ts.map +1 -0
- package/dist/schema.js +161 -0
- package/dist/schema.js.map +1 -0
- package/dist/tools/constraints.d.ts +29 -0
- package/dist/tools/constraints.d.ts.map +1 -0
- package/dist/tools/constraints.js +192 -0
- package/dist/tools/constraints.js.map +1 -0
- package/dist/tools/context.d.ts +56 -0
- package/dist/tools/context.d.ts.map +1 -0
- package/dist/tools/context.js +442 -0
- package/dist/tools/context.js.map +1 -0
- package/dist/tools/files.d.ts +30 -0
- package/dist/tools/files.d.ts.map +1 -0
- package/dist/tools/files.js +201 -0
- package/dist/tools/files.js.map +1 -0
- package/dist/tools/messaging.d.ts +50 -0
- package/dist/tools/messaging.d.ts.map +1 -0
- package/dist/tools/messaging.js +151 -0
- package/dist/tools/messaging.js.map +1 -0
- package/dist/tools/utils.d.ts +29 -0
- package/dist/tools/utils.d.ts.map +1 -0
- package/dist/tools/utils.js +131 -0
- package/dist/tools/utils.js.map +1 -0
- package/dist/types.d.ts +388 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +50 -0
- package/dist/types.js.map +1 -0
- package/package.json +60 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to sqlew will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [1.0.0] - 2025-01-10
|
|
9
|
+
|
|
10
|
+
### Initial Release
|
|
11
|
+
|
|
12
|
+
First production release of sqlew - MCP server for efficient context sharing between Claude Code sub-agents.
|
|
13
|
+
|
|
14
|
+
### Added
|
|
15
|
+
|
|
16
|
+
#### Context Management (6 tools)
|
|
17
|
+
- `set_decision` - Set or update decisions with metadata (tags, layers, scopes, versions)
|
|
18
|
+
- `get_context` - Advanced filtering for decision retrieval
|
|
19
|
+
- `get_decision` - Retrieve specific decision by key
|
|
20
|
+
- `search_by_tags` - Tag-based search with AND/OR logic
|
|
21
|
+
- `get_versions` - Version history tracking
|
|
22
|
+
- `search_by_layer` - Layer-based decision filtering
|
|
23
|
+
|
|
24
|
+
#### Messaging System (3 tools)
|
|
25
|
+
- `send_message` - Agent-to-agent messaging with priority levels
|
|
26
|
+
- `get_messages` - Message retrieval with filtering (priority, unread status)
|
|
27
|
+
- `mark_read` - Mark messages as read
|
|
28
|
+
|
|
29
|
+
#### File Change Tracking (3 tools)
|
|
30
|
+
- `record_file_change` - Track file modifications with layer assignment
|
|
31
|
+
- `get_file_changes` - File change history retrieval
|
|
32
|
+
- `check_file_lock` - Concurrent edit prevention
|
|
33
|
+
|
|
34
|
+
#### Constraint Management (3 tools)
|
|
35
|
+
- `add_constraint` - Add constraints with priority and metadata
|
|
36
|
+
- `get_constraints` - Complex constraint filtering
|
|
37
|
+
- `deactivate_constraint` - Soft delete constraints
|
|
38
|
+
|
|
39
|
+
#### Utilities (3 tools)
|
|
40
|
+
- `get_layer_summary` - Per-layer aggregated statistics
|
|
41
|
+
- `clear_old_data` - Manual cleanup of old data
|
|
42
|
+
- `get_stats` - Comprehensive database statistics
|
|
43
|
+
|
|
44
|
+
### Features
|
|
45
|
+
|
|
46
|
+
- **Token Efficiency:** 72% reduction through ID-based normalization, integer enums, and pre-aggregated views
|
|
47
|
+
- **Metadata System:** Tags, layers, scopes, versions, and priorities for intelligent organization
|
|
48
|
+
- **SQLite Database:** Fast, reliable, offline-only operation with ACID guarantees
|
|
49
|
+
- **Automatic Cleanup:** Configurable retention policies (24h for messages, 7 days for file changes)
|
|
50
|
+
- **Version History:** Automatic tracking of decision evolution
|
|
51
|
+
- **Concurrent Access:** Support for multiple agents simultaneously
|
|
52
|
+
- **WAL Mode:** Write-Ahead Logging for improved concurrency
|
|
53
|
+
|
|
54
|
+
### Database Schema
|
|
55
|
+
|
|
56
|
+
- 7 Master tables for normalization (agents, files, context_keys, layers, tags, scopes, constraint_categories)
|
|
57
|
+
- 10 Transaction tables for core data
|
|
58
|
+
- 6 Token-efficient pre-aggregated views
|
|
59
|
+
- 9 Optimized indexes for common queries
|
|
60
|
+
- 3 Automatic triggers for cleanup and history
|
|
61
|
+
|
|
62
|
+
### Architecture
|
|
63
|
+
|
|
64
|
+
- **Standard Layers:** presentation, business, data, infrastructure, cross-cutting
|
|
65
|
+
- **Constraint Categories:** performance, architecture, security
|
|
66
|
+
- **Priority Levels:** low, medium, high, critical
|
|
67
|
+
- **Message Types:** decision, warning, request, info
|
|
68
|
+
- **Change Types:** created, modified, deleted
|
|
69
|
+
- **Status Values:** active, deprecated, draft
|
|
70
|
+
|
|
71
|
+
### Performance
|
|
72
|
+
|
|
73
|
+
- Query performance: 2-20ms for typical operations
|
|
74
|
+
- Concurrent access: Tested with 5 simultaneous agents
|
|
75
|
+
- Database size: ~140 bytes per decision (efficient storage)
|
|
76
|
+
- Token reduction: 72% compared to traditional JSON approach
|
|
77
|
+
|
|
78
|
+
### Documentation
|
|
79
|
+
|
|
80
|
+
- Comprehensive README with quick start guide
|
|
81
|
+
- Complete tool reference with examples
|
|
82
|
+
- Architecture documentation
|
|
83
|
+
- Schema reference
|
|
84
|
+
- Development guidelines
|
|
85
|
+
|
|
86
|
+
### Testing
|
|
87
|
+
|
|
88
|
+
- 100% tool coverage (all 18 tools verified)
|
|
89
|
+
- Comprehensive test suite
|
|
90
|
+
- MCP Inspector compatibility
|
|
91
|
+
|
|
92
|
+
### Technical Details
|
|
93
|
+
|
|
94
|
+
- **Runtime:** Node.js 18+
|
|
95
|
+
- **Language:** TypeScript 5.0+
|
|
96
|
+
- **Database:** better-sqlite3 ^11.0.0
|
|
97
|
+
- **MCP SDK:** @modelcontextprotocol/sdk (latest)
|
|
98
|
+
- **Transport:** stdio (standard MCP pattern)
|
|
99
|
+
|
|
100
|
+
### Code Statistics
|
|
101
|
+
|
|
102
|
+
- 3,424 lines of TypeScript
|
|
103
|
+
- 10 source files
|
|
104
|
+
- Full type safety
|
|
105
|
+
- Comprehensive error handling
|
|
106
|
+
|
|
107
|
+
[1.0.0]: https://github.com/sin5ddd/mcp-sqlew/releases/tag/v1.0.0
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 sin5ddd
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,359 @@
|
|
|
1
|
+
# sqlew
|
|
2
|
+
|
|
3
|
+
[](https://www.npmjs.com/package/sqlew)
|
|
4
|
+
[](https://opensource.org/licenses/MIT)
|
|
5
|
+
|
|
6
|
+
**sqlew** (SQL Efficient Workflow) is a Model Context Protocol (MCP) server for efficient context sharing between Claude Code sub-agents. Achieve **72% token reduction** while managing structured data through a metadata-driven SQLite database.
|
|
7
|
+
|
|
8
|
+
## Why sqlew?
|
|
9
|
+
|
|
10
|
+
When coordinating multiple Claude Code agents on a complex project, context sharing becomes critical. Traditional JSON-based approaches consume massive amounts of tokens. sqlew solves this with:
|
|
11
|
+
|
|
12
|
+
- **72% Token Reduction:** ID-based normalization, integer enums, and pre-aggregated views
|
|
13
|
+
- **Structured Metadata:** Tags, layers, scopes, versions, and priorities for intelligent organization
|
|
14
|
+
- **Fast & Reliable:** SQLite-backed with ACID guarantees and automatic cleanup
|
|
15
|
+
- **18 MCP Tools:** Comprehensive API for decisions, messaging, file tracking, and constraints
|
|
16
|
+
|
|
17
|
+
## Features
|
|
18
|
+
|
|
19
|
+
- **Context Management:** Record and retrieve decisions with advanced filtering (tags, layers, scopes, versions)
|
|
20
|
+
- **Agent Messaging:** Priority-based messaging system with broadcast support
|
|
21
|
+
- **File Change Tracking:** Layer-based file organization with lock detection
|
|
22
|
+
- **Constraint Management:** Track performance, architecture, and security constraints
|
|
23
|
+
- **Token Efficient:** Pre-aggregated views and integer enums minimize token consumption
|
|
24
|
+
- **Automatic Cleanup:** Configurable retention policies for messages and file changes
|
|
25
|
+
- **Version History:** Track decision evolution over time
|
|
26
|
+
- **Concurrent Access:** Supports multiple agents simultaneously
|
|
27
|
+
|
|
28
|
+
## Installation
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
npm install sqlew
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Quick Start
|
|
35
|
+
|
|
36
|
+
### Add to Claude Desktop
|
|
37
|
+
|
|
38
|
+
Add sqlew to your Claude Desktop configuration (`claude_desktop_config.json`):
|
|
39
|
+
|
|
40
|
+
```json
|
|
41
|
+
{
|
|
42
|
+
"mcpServers": {
|
|
43
|
+
"sqlew": {
|
|
44
|
+
"command": "npx",
|
|
45
|
+
"args": ["sqlew"]
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Or with a custom database path:
|
|
52
|
+
|
|
53
|
+
```json
|
|
54
|
+
{
|
|
55
|
+
"mcpServers": {
|
|
56
|
+
"sqlew": {
|
|
57
|
+
"command": "npx",
|
|
58
|
+
"args": ["sqlew", "/path/to/database.db"]
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### Using with MCP Inspector
|
|
65
|
+
|
|
66
|
+
Test all tools interactively:
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
npx @modelcontextprotocol/inspector npx sqlew
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### Database Location
|
|
73
|
+
|
|
74
|
+
Default: `.sqlew/sqlew.db` (created in current directory)
|
|
75
|
+
|
|
76
|
+
## Available Tools
|
|
77
|
+
|
|
78
|
+
### Context Management (6 tools)
|
|
79
|
+
|
|
80
|
+
#### `set_decision`
|
|
81
|
+
Set or update a decision with metadata support.
|
|
82
|
+
|
|
83
|
+
```typescript
|
|
84
|
+
{
|
|
85
|
+
key: "auth_method",
|
|
86
|
+
value: "JWT",
|
|
87
|
+
agent: "auth-agent",
|
|
88
|
+
layer: "business",
|
|
89
|
+
tags: ["authentication", "security"],
|
|
90
|
+
scopes: ["user-service"],
|
|
91
|
+
version: "1.0.0",
|
|
92
|
+
status: "active"
|
|
93
|
+
}
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
#### `get_context`
|
|
97
|
+
Retrieve decisions with advanced filtering.
|
|
98
|
+
|
|
99
|
+
```typescript
|
|
100
|
+
{
|
|
101
|
+
status: "active",
|
|
102
|
+
layer: "business",
|
|
103
|
+
tags: ["authentication"],
|
|
104
|
+
tag_match: "AND"
|
|
105
|
+
}
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
#### `get_decision`
|
|
109
|
+
Get a specific decision by key.
|
|
110
|
+
|
|
111
|
+
#### `search_by_tags`
|
|
112
|
+
Search decisions by tags with AND/OR logic.
|
|
113
|
+
|
|
114
|
+
#### `get_versions`
|
|
115
|
+
Retrieve version history for a decision.
|
|
116
|
+
|
|
117
|
+
#### `search_by_layer`
|
|
118
|
+
Search decisions within an architecture layer.
|
|
119
|
+
|
|
120
|
+
### Messaging (3 tools)
|
|
121
|
+
|
|
122
|
+
#### `send_message`
|
|
123
|
+
Send messages between agents with priority levels.
|
|
124
|
+
|
|
125
|
+
```typescript
|
|
126
|
+
{
|
|
127
|
+
from_agent: "agent1",
|
|
128
|
+
to_agent: "agent2",
|
|
129
|
+
msg_type: "warning",
|
|
130
|
+
message: "File locked",
|
|
131
|
+
priority: "high",
|
|
132
|
+
payload: { file: "/src/auth.ts" }
|
|
133
|
+
}
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
#### `get_messages`
|
|
137
|
+
Retrieve messages with filtering (priority, unread status).
|
|
138
|
+
|
|
139
|
+
#### `mark_read`
|
|
140
|
+
Mark messages as read.
|
|
141
|
+
|
|
142
|
+
### File Tracking (3 tools)
|
|
143
|
+
|
|
144
|
+
#### `record_file_change`
|
|
145
|
+
Record file changes with layer assignment.
|
|
146
|
+
|
|
147
|
+
```typescript
|
|
148
|
+
{
|
|
149
|
+
file_path: "/src/auth.ts",
|
|
150
|
+
agent_name: "auth-agent",
|
|
151
|
+
change_type: "modified",
|
|
152
|
+
layer: "business",
|
|
153
|
+
description: "Updated JWT validation"
|
|
154
|
+
}
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
#### `get_file_changes`
|
|
158
|
+
Retrieve file change history with filtering.
|
|
159
|
+
|
|
160
|
+
#### `check_file_lock`
|
|
161
|
+
Check if a file is recently modified (prevents concurrent edits).
|
|
162
|
+
|
|
163
|
+
### Constraint Management (3 tools)
|
|
164
|
+
|
|
165
|
+
#### `add_constraint`
|
|
166
|
+
Add constraints with priority and metadata.
|
|
167
|
+
|
|
168
|
+
```typescript
|
|
169
|
+
{
|
|
170
|
+
category: "performance",
|
|
171
|
+
constraint_text: "Response time < 200ms",
|
|
172
|
+
priority: "high",
|
|
173
|
+
layer: "business",
|
|
174
|
+
tags: ["api", "performance"]
|
|
175
|
+
}
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
#### `get_constraints`
|
|
179
|
+
Retrieve constraints with complex filtering.
|
|
180
|
+
|
|
181
|
+
#### `deactivate_constraint`
|
|
182
|
+
Deactivate a constraint (soft delete).
|
|
183
|
+
|
|
184
|
+
### Utilities (3 tools)
|
|
185
|
+
|
|
186
|
+
#### `get_layer_summary`
|
|
187
|
+
Get aggregated statistics per architecture layer.
|
|
188
|
+
|
|
189
|
+
#### `clear_old_data`
|
|
190
|
+
Manually clear old messages and file changes.
|
|
191
|
+
|
|
192
|
+
#### `get_stats`
|
|
193
|
+
Get comprehensive database statistics.
|
|
194
|
+
|
|
195
|
+
## Database Schema
|
|
196
|
+
|
|
197
|
+
sqlew uses a normalized SQLite schema optimized for token efficiency:
|
|
198
|
+
|
|
199
|
+
**Master Tables:** agents, files, context_keys, layers, tags, scopes, constraint_categories
|
|
200
|
+
|
|
201
|
+
**Transaction Tables:** decisions, decisions_numeric, decision_history, agent_messages, file_changes, constraints
|
|
202
|
+
|
|
203
|
+
**Token-Efficient Views:** tagged_decisions, active_context, layer_summary, recent_file_changes, tagged_constraints
|
|
204
|
+
|
|
205
|
+
## Token Efficiency
|
|
206
|
+
|
|
207
|
+
sqlew achieves **72% token reduction** through:
|
|
208
|
+
|
|
209
|
+
1. **ID-Based Normalization:** Strings stored once, referenced by integer IDs
|
|
210
|
+
2. **Integer Enums:** Status, priority, message types use integers (1-4) instead of strings
|
|
211
|
+
3. **Pre-Aggregated Views:** Common queries use pre-computed results
|
|
212
|
+
4. **Type-Based Tables:** Separate storage for numeric vs string values
|
|
213
|
+
5. **Automatic Cleanup:** Prevents database bloat
|
|
214
|
+
|
|
215
|
+
### Example Comparison
|
|
216
|
+
|
|
217
|
+
**Traditional JSON (1000 tokens):**
|
|
218
|
+
```json
|
|
219
|
+
{
|
|
220
|
+
"key": "auth_method",
|
|
221
|
+
"value": "JWT",
|
|
222
|
+
"agent": "auth-agent",
|
|
223
|
+
"layer": "business",
|
|
224
|
+
"status": "active",
|
|
225
|
+
"tags": ["authentication", "security"],
|
|
226
|
+
"scopes": ["user-service"],
|
|
227
|
+
"updated": "2025-01-10T12:00:00Z"
|
|
228
|
+
}
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
**sqlew Response (280 tokens):**
|
|
232
|
+
```json
|
|
233
|
+
{
|
|
234
|
+
"key_id": 42,
|
|
235
|
+
"value": "JWT",
|
|
236
|
+
"agent_id": 5,
|
|
237
|
+
"layer_id": 2,
|
|
238
|
+
"status": 1,
|
|
239
|
+
"tag_ids": [1,4],
|
|
240
|
+
"scope_ids": [3],
|
|
241
|
+
"ts": 1736510400
|
|
242
|
+
}
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
**Token Savings: 720 tokens (72%)**
|
|
246
|
+
|
|
247
|
+
## Architecture Layers
|
|
248
|
+
|
|
249
|
+
sqlew organizes code by standard architecture layers:
|
|
250
|
+
|
|
251
|
+
- **presentation:** UI, API endpoints, views
|
|
252
|
+
- **business:** Business logic, services, use cases
|
|
253
|
+
- **data:** Repositories, database access
|
|
254
|
+
- **infrastructure:** Configuration, external services
|
|
255
|
+
- **cross-cutting:** Logging, security, utilities
|
|
256
|
+
|
|
257
|
+
## Development
|
|
258
|
+
|
|
259
|
+
### Building from Source
|
|
260
|
+
|
|
261
|
+
```bash
|
|
262
|
+
git clone https://github.com/sin5ddd/mcp-sqlew.git
|
|
263
|
+
cd mcp-sqlew
|
|
264
|
+
npm install
|
|
265
|
+
npm run build
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
### Running Locally
|
|
269
|
+
|
|
270
|
+
```bash
|
|
271
|
+
npm start
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
### Testing
|
|
275
|
+
|
|
276
|
+
```bash
|
|
277
|
+
# Run verification script
|
|
278
|
+
node verify-all-tools.mjs
|
|
279
|
+
|
|
280
|
+
# Or use MCP Inspector
|
|
281
|
+
npm run inspector
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
### Project Structure
|
|
285
|
+
|
|
286
|
+
```
|
|
287
|
+
sqlew/
|
|
288
|
+
├── src/
|
|
289
|
+
│ ├── index.ts # MCP server entry point
|
|
290
|
+
│ ├── database.ts # Database initialization
|
|
291
|
+
│ ├── schema.ts # Schema management
|
|
292
|
+
│ ├── types.ts # TypeScript types
|
|
293
|
+
│ ├── constants.ts # Constants & enums
|
|
294
|
+
│ └── tools/
|
|
295
|
+
│ ├── context.ts # Context management
|
|
296
|
+
│ ├── messaging.ts # Messaging system
|
|
297
|
+
│ ├── files.ts # File tracking
|
|
298
|
+
│ ├── constraints.ts # Constraint management
|
|
299
|
+
│ └── utils.ts # Utilities
|
|
300
|
+
├── dist/ # Compiled JavaScript
|
|
301
|
+
└── package.json
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
## Configuration
|
|
305
|
+
|
|
306
|
+
### Retention Periods
|
|
307
|
+
|
|
308
|
+
- **Messages:** Auto-deleted after 24 hours
|
|
309
|
+
- **File Changes:** Auto-deleted after 7 days
|
|
310
|
+
- **Decisions:** Permanent (version history preserved)
|
|
311
|
+
- **Constraints:** Permanent (soft delete only)
|
|
312
|
+
|
|
313
|
+
### Environment Variables
|
|
314
|
+
|
|
315
|
+
- `DEBUG_SQL`: Set to enable SQL query logging
|
|
316
|
+
|
|
317
|
+
## License
|
|
318
|
+
|
|
319
|
+
MIT - see [LICENSE](LICENSE) file for details
|
|
320
|
+
|
|
321
|
+
## Contributing
|
|
322
|
+
|
|
323
|
+
Contributions welcome! Areas of interest:
|
|
324
|
+
|
|
325
|
+
- Performance optimizations
|
|
326
|
+
- Additional metadata features
|
|
327
|
+
- Enhanced querying capabilities
|
|
328
|
+
- Integration with other MCP tools
|
|
329
|
+
|
|
330
|
+
### Development Guidelines
|
|
331
|
+
|
|
332
|
+
1. Fork the repository
|
|
333
|
+
2. Create a feature branch
|
|
334
|
+
3. Make your changes
|
|
335
|
+
4. Add tests if applicable
|
|
336
|
+
5. Submit a pull request
|
|
337
|
+
|
|
338
|
+
## Support
|
|
339
|
+
|
|
340
|
+
- **Issues:** [GitHub Issues](https://github.com/sin5ddd/mcp-sqlew/issues)
|
|
341
|
+
- **Documentation:** See [ARCHITECTURE.md](ARCHITECTURE.md) for technical details
|
|
342
|
+
- **Schema Reference:** See source code for complete schema
|
|
343
|
+
|
|
344
|
+
## Acknowledgments
|
|
345
|
+
|
|
346
|
+
Built with:
|
|
347
|
+
- [Model Context Protocol SDK](https://github.com/modelcontextprotocol/sdk)
|
|
348
|
+
- [better-sqlite3](https://github.com/WiseLibs/better-sqlite3)
|
|
349
|
+
- TypeScript
|
|
350
|
+
|
|
351
|
+
## Author
|
|
352
|
+
|
|
353
|
+
**sin5ddd**
|
|
354
|
+
|
|
355
|
+
## Links
|
|
356
|
+
|
|
357
|
+
- [npm package](https://www.npmjs.com/package/sqlew)
|
|
358
|
+
- [GitHub repository](https://github.com/sin5ddd/mcp-sqlew)
|
|
359
|
+
- [Model Context Protocol](https://modelcontextprotocol.io/)
|