@pilat/mcp-datalink 1.2.0 → 1.2.2
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/README.md
CHANGED
|
@@ -10,7 +10,7 @@ Works with Claude Desktop, Claude Code, Cursor, Cline, and any MCP-compatible cl
|
|
|
10
10
|
|
|
11
11
|
## Installation
|
|
12
12
|
|
|
13
|
-
Add to your MCP client config:
|
|
13
|
+
Add to your MCP client config file (see [config locations](#config-file-locations) below):
|
|
14
14
|
|
|
15
15
|
```json
|
|
16
16
|
{
|
|
@@ -19,19 +19,51 @@ Add to your MCP client config:
|
|
|
19
19
|
"command": "npx",
|
|
20
20
|
"args": ["-y", "@pilat/mcp-datalink"],
|
|
21
21
|
"env": {
|
|
22
|
-
"
|
|
22
|
+
"DATALINK_ANALYTICS_URL": "postgresql://user:password@localhost:5432/analytics",
|
|
23
|
+
"DATALINK_ANALYTICS_READONLY": "true",
|
|
24
|
+
|
|
25
|
+
"DATALINK_INVENTORY_URL": "mysql://user:password@localhost:3306/inventory",
|
|
26
|
+
|
|
27
|
+
"DATALINK_CACHE_URL": "sqlite:///path/to/cache.db"
|
|
23
28
|
}
|
|
24
29
|
}
|
|
25
30
|
}
|
|
26
31
|
}
|
|
27
32
|
```
|
|
28
33
|
|
|
34
|
+
This creates three database connections: `analytics` (read-only), `inventory`, and `cache`.
|
|
35
|
+
|
|
29
36
|
| Variable | Description |
|
|
30
37
|
|----------|-------------|
|
|
31
38
|
| `DATALINK_{NAME}_URL` | Connection URL (creates database named `{name}`) |
|
|
32
39
|
| `DATALINK_{NAME}_READONLY` | Set to `true` to block writes |
|
|
33
40
|
|
|
34
|
-
**
|
|
41
|
+
**Connection URL formats:**
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
# PostgreSQL
|
|
45
|
+
postgresql://user:password@localhost:5432/dbname
|
|
46
|
+
postgresql://user:password@localhost:5432/dbname?sslmode=require
|
|
47
|
+
|
|
48
|
+
# MySQL
|
|
49
|
+
mysql://user:password@localhost:3306/dbname
|
|
50
|
+
mysql://user:password@localhost:3306/dbname?ssl=true
|
|
51
|
+
|
|
52
|
+
# SQLite
|
|
53
|
+
sqlite:///path/to/database.db
|
|
54
|
+
sqlite:///Users/me/data/app.sqlite
|
|
55
|
+
sqlite://../relative/path/data.db
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### Config File Locations
|
|
59
|
+
|
|
60
|
+
| Client | Config file |
|
|
61
|
+
|--------|-------------|
|
|
62
|
+
| Claude Code | `~/.claude/settings.local.json` (global) or `.mcp.json` (project) |
|
|
63
|
+
| Claude Desktop (macOS) | `~/Library/Application Support/Claude/claude_desktop_config.json` |
|
|
64
|
+
| Claude Desktop (Windows) | `%APPDATA%\Claude\claude_desktop_config.json` |
|
|
65
|
+
| Cursor | `~/.cursor/mcp.json` or Settings → Features → MCP Servers |
|
|
66
|
+
| Cline | `cline_mcp_settings.json` or VS Code settings `cline.mcpServers` |
|
|
35
67
|
|
|
36
68
|
## Tools
|
|
37
69
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql-parser.d.ts","sourceRoot":"","sources":["../../src/utils/sql-parser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"sql-parser.d.ts","sourceRoot":"","sources":["../../src/utils/sql-parser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAI7C;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,YAAY,GAAG,OAAO,GAAG,QAAQ,CAAC;AA6J3D;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,MAAM,CAyCnF;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;CACb;AA6CD;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,WAAW,CAwExE;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,OAAO,GAAG,SAAS,GACxB,IAAI,CA6CN"}
|
package/dist/utils/sql-parser.js
CHANGED
|
@@ -4,7 +4,8 @@
|
|
|
4
4
|
* Provides SQL parsing and validation for PostgreSQL, MySQL, and SQLite
|
|
5
5
|
* using node-sql-parser library.
|
|
6
6
|
*/
|
|
7
|
-
import
|
|
7
|
+
import NodeSqlParser from 'node-sql-parser';
|
|
8
|
+
const { Parser } = NodeSqlParser;
|
|
8
9
|
import { DbMcpError, ErrorCode } from './errors.js';
|
|
9
10
|
/**
|
|
10
11
|
* Prefixes that indicate dangerous SQL operations
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql-parser.js","sourceRoot":"","sources":["../../src/utils/sql-parser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"sql-parser.js","sourceRoot":"","sources":["../../src/utils/sql-parser.ts"],"names":[],"mappings":"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"}
|