superdb-mcp 1.0.0 → 1.2.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.
Files changed (47) hide show
  1. package/README.md +93 -34
  2. package/dist/index.js +180 -97
  3. package/dist/index.js.map +1 -1
  4. package/dist/lib/expert-sections.d.ts +32 -0
  5. package/dist/lib/expert-sections.d.ts.map +1 -0
  6. package/dist/lib/expert-sections.js +139 -0
  7. package/dist/lib/expert-sections.js.map +1 -0
  8. package/dist/lib/version.d.ts +24 -0
  9. package/dist/lib/version.d.ts.map +1 -1
  10. package/dist/lib/version.js +77 -15
  11. package/dist/lib/version.js.map +1 -1
  12. package/dist/tools/grok.d.ts +16 -0
  13. package/dist/tools/grok.d.ts.map +1 -0
  14. package/dist/tools/grok.js +64 -0
  15. package/dist/tools/grok.js.map +1 -0
  16. package/dist/tools/info.d.ts +7 -3
  17. package/dist/tools/info.d.ts.map +1 -1
  18. package/dist/tools/info.js +154 -6
  19. package/dist/tools/info.js.map +1 -1
  20. package/dist/tools/query.d.ts +1 -17
  21. package/dist/tools/query.d.ts.map +1 -1
  22. package/dist/tools/query.js +43 -53
  23. package/dist/tools/query.js.map +1 -1
  24. package/dist/tools/recipes.d.ts +29 -0
  25. package/dist/tools/recipes.d.ts.map +1 -0
  26. package/dist/tools/recipes.js +156 -0
  27. package/dist/tools/recipes.js.map +1 -0
  28. package/docs/grok-patterns.sup +89 -0
  29. package/docs/recipes/array.spq +31 -0
  30. package/docs/recipes/character.spq +57 -0
  31. package/docs/recipes/format.spq +24 -0
  32. package/docs/recipes/integer.spq +53 -0
  33. package/docs/recipes/records.spq +61 -0
  34. package/docs/recipes/string.spq +105 -0
  35. package/docs/superdb-expert.md +78 -42
  36. package/docs/tutorials/bash_to_sup.md +120 -0
  37. package/docs/tutorials/chess-tiebreaks.md +225 -0
  38. package/docs/tutorials/fork_for_window.md +302 -0
  39. package/docs/tutorials/grok.md +124 -0
  40. package/docs/tutorials/joins.md +76 -0
  41. package/docs/tutorials/moar_subqueries.md +32 -0
  42. package/docs/tutorials/subqueries.md +230 -0
  43. package/docs/tutorials/sup_to_bash.md +161 -0
  44. package/docs/tutorials/super_db_update.md +31 -0
  45. package/docs/tutorials/unnest.md +110 -0
  46. package/docs/zq-to-super-upgrades.md +43 -17
  47. package/package.json +1 -1
package/README.md CHANGED
@@ -4,6 +4,21 @@ An MCP (Model Context Protocol) server for [SuperDB](https://superdb.org/) that
4
4
  enables AI assistants to better compose SuperSQL queries, optionally backed by
5
5
  an LSP.
6
6
 
7
+ ## Table of Contents
8
+
9
+ - [About](#about)
10
+ - [Installation](#installation)
11
+ - [LSP (Optional)](#lsp-optional)
12
+ - [Tools](#tools)
13
+ - [Query & Data](#query--data)
14
+ - [Database (Lake)](#database-lake)
15
+ - [Documentation & Reference](#documentation--reference)
16
+ - [Environment & Diagnostics](#environment--diagnostics)
17
+ - [LSP Tools](#lsp-tools)
18
+ - [Example Usage](#example-usage)
19
+ - [Requirements](#requirements)
20
+ - [Versioning](#versioning)
21
+
7
22
  ## About
8
23
 
9
24
  [SuperDB](https://superdb.org/) is the successor to
@@ -77,38 +92,58 @@ npm run build
77
92
  }
78
93
  ```
79
94
 
95
+ ### LSP (Optional)
96
+
97
+ Only [`super_complete` and `super_docs`](#lsp-tools) use the LSP — query execution,
98
+ documentation, grok patterns, recipes, and database tools are fully
99
+ functional on their own. The
100
+ [SuperDB LSP](https://github.com/chrismo/superdb-lsp) adds code completions
101
+ and symbol documentation for those who want it. Download a binary from the
102
+ [releases page](https://github.com/chrismo/superdb-lsp/releases), then
103
+ point the MCP server to it:
104
+
105
+ ```bash
106
+ export SUPERDB_LSP_PATH=/path/to/superdb-lsp
107
+ ```
108
+
109
+ Add the export to your shell profile for persistence. Run `super_lsp_status`
110
+ to verify setup.
111
+
80
112
  ## Tools
81
113
 
82
- ### Query Tools
114
+ ### Query & Data
83
115
 
84
116
  #### `super_query`
85
- Execute a SuperSQL query on data files.
117
+ Execute a SuperSQL query on data files. On errors, includes migration hints for
118
+ common zq-to-SuperDB syntax changes (yield→values, over→unnest, func→fn, etc.).
86
119
 
87
120
  ```
88
121
  query: string # Required: The SuperSQL query
89
- files?: string[] # File paths to query
122
+ files?: string[] # Pipeline-style input (not for SQL FROM; use absolute paths in FROM)
90
123
  data?: string # Inline data (alternative to files)
91
124
  format?: string # Output: json (default), sup, csv, table
92
125
  inputFormat?: string # Force input format
93
126
  ```
94
127
 
95
- #### `super_validate`
96
- Validate query syntax without executing.
128
+ #### `super_schema`
129
+ Inspect types in a data file by finding unique shapes with counts and examples.
97
130
 
98
131
  ```
99
- query: string # The query to validate
132
+ file: string # Path to data file
100
133
  ```
101
134
 
102
- #### `super_schema`
103
- Inspect types in a data file by sampling records.
135
+ ### Database (Lake)
136
+
137
+ #### `super_db_query`
138
+ Query data from a database pool.
104
139
 
105
140
  ```
106
- file: string # Path to data file
107
- sample?: number # Records to sample (default: 5)
141
+ query: string # The SuperSQL query
142
+ pool?: string # Pool name
143
+ lake?: string # Lake path
144
+ format?: string # Output format
108
145
  ```
109
146
 
110
- ### Database Tools
111
-
112
147
  #### `super_db_list`
113
148
  List all pools in a SuperDB database.
114
149
 
@@ -116,14 +151,13 @@ List all pools in a SuperDB database.
116
151
  lake?: string # Lake path (default: ~/.super)
117
152
  ```
118
153
 
119
- #### `super_db_query`
120
- Query data from a database pool.
154
+ #### `super_db_create_pool`
155
+ Create a new pool.
121
156
 
122
157
  ```
123
- query: string # The SuperSQL query
124
- pool?: string # Pool name
158
+ name: string # Pool name
159
+ orderBy?: string # Sort key
125
160
  lake?: string # Lake path
126
- format?: string # Output format
127
161
  ```
128
162
 
129
163
  #### `super_db_load`
@@ -136,16 +170,33 @@ data?: string # Inline data
136
170
  lake?: string # Lake path
137
171
  ```
138
172
 
139
- #### `super_db_create_pool`
140
- Create a new pool.
173
+ ### Documentation & Reference
174
+
175
+ Content targets SuperDB v0.1.0. Responses include a `version_note` when
176
+ the installed runtime differs from the content target.
177
+
178
+ #### `super_help`
179
+ Get SuperDB documentation — expert guide, migration docs, or tutorials.
141
180
 
142
181
  ```
143
- name: string # Pool name
144
- orderBy?: string # Sort key
145
- lake?: string # Lake path
182
+ topic: string # "expert", "upgrade", "tutorials", or "tutorial:<name>"
183
+ ```
184
+
185
+ #### `super_grok_patterns`
186
+ Search/filter 89 grok patterns for parsing logs, timestamps, IPs, and more.
187
+
188
+ ```
189
+ query?: string # Filter by pattern name or regex content
190
+ ```
191
+
192
+ #### `super_recipes`
193
+ Search/list 16 recipe functions (from superkit) with signatures, descriptions, and examples.
194
+
195
+ ```
196
+ query?: string # Filter by function name, description, or source file
146
197
  ```
147
198
 
148
- ### Info Tools
199
+ ### Environment & Diagnostics
149
200
 
150
201
  #### `super_info`
151
202
  Get SuperDB version info, environment configuration, LSP availability, and installation instructions.
@@ -158,14 +209,7 @@ compare_to?: string # Optional path to another super binary to compare
158
209
  Check if the SuperDB LSP is installed and get installation instructions if not.
159
210
 
160
211
  ```
161
- # No parameters - returns availability status and setup instructions
162
- ```
163
-
164
- #### `super_help`
165
- Get SuperDB documentation (bundled expert guide or migration docs).
166
-
167
- ```
168
- topic: string # "expert", "upgrade", "upgrade-guide", or "migration"
212
+ # No parameters
169
213
  ```
170
214
 
171
215
  #### `super_test_compat`
@@ -220,9 +264,24 @@ No shell escaping needed - the query string is passed directly.
220
264
 
221
265
  ## Versioning
222
266
 
223
- This MCP server versions to match the SuperDB release it targets. The
224
- `super_info` tool reports both your runtime version and the bundled docs
225
- version, warning if they differ.
267
+ This MCP server uses its own independent semver, decoupled from SuperDB's
268
+ version. Query tools (`super_query`, `super_schema`, etc.) work with any
269
+ version of the `super` binary, so the MCP server is useful even if your
270
+ runtime is older or newer than the target. Bundled content — documentation,
271
+ tutorials, grok patterns, and recipes — is written for a specific SuperDB
272
+ release, so aligning your runtime with the target version gives the best
273
+ results. The `super_info` tool reports both versions, and content tools
274
+ include a `version_note` when they differ.
275
+
276
+ The optional [SuperDB LSP](#lsp-optional) enables code completions and
277
+ documentation lookup — see [installation instructions](#lsp-optional).
278
+
279
+ | MCP Version | SuperDB Target | Notes |
280
+ |-------------|------------------------|-------------------------------------------------|
281
+ | 1.1.0 | v0.1.0 | Grok patterns, tutorials, recipes from superkit |
282
+ | 1.0.0 | v0.1.0 | Switched to independent semver |
283
+ | 0.1.0 | v0.1.0 | Aligned with first official SuperDB release |
284
+ | 0.51231.x | 0.51231 (pre-release) | Legacy pseudo-version scheme |
226
285
 
227
286
  ## License
228
287
 
package/dist/index.js CHANGED
@@ -2,79 +2,90 @@
2
2
  import { Server } from '@modelcontextprotocol/sdk/server/index.js';
3
3
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
4
4
  import { CallToolRequestSchema, ListToolsRequestSchema, ListResourcesRequestSchema, ReadResourceRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
5
- import { readFileSync } from 'fs';
6
- import { join, dirname } from 'path';
5
+ import { readFileSync, readdirSync } from 'fs';
6
+ import { join, dirname, basename } from 'path';
7
7
  import { fileURLToPath } from 'url';
8
- import { superQuery, superValidate, superSchema } from './tools/query.js';
8
+ import { superQuery, superSchema } from './tools/query.js';
9
9
  import { superDbList, superDbQuery, superDbLoad, superDbCreatePool } from './tools/db.js';
10
10
  import { superInfo, superHelp, superTestCompat, superLspStatus } from './tools/info.js';
11
11
  import { superComplete, superDocs } from './tools/lsp.js';
12
+ import { superGrokPatterns } from './tools/grok.js';
13
+ import { superRecipes } from './tools/recipes.js';
12
14
  // Get docs directory path
13
15
  const __filename = fileURLToPath(import.meta.url);
14
16
  const __dirname = dirname(__filename);
15
17
  const docsDir = join(__dirname, '../docs');
16
18
  const server = new Server({
17
19
  name: 'superdb-mcp',
18
- version: '1.0.0',
20
+ version: '1.2.0',
19
21
  }, {
20
22
  capabilities: {
21
23
  tools: {},
22
24
  resources: {},
23
25
  },
24
26
  });
25
- // Resource definitions
26
- const resources = [
27
- {
28
- uri: 'superdb://docs/expert',
29
- name: 'SuperDB Expert Guide',
30
- description: 'Comprehensive guide for SuperDB queries, syntax patterns, and best practices. Read this before writing complex queries.',
31
- mimeType: 'text/markdown',
32
- },
33
- {
34
- uri: 'superdb://docs/upgrade-guide',
35
- name: 'ZQ to SuperDB Upgrade Guide',
36
- description: 'Migration guide covering all breaking changes from zq to SuperDB. Essential for upgrading old scripts.',
37
- mimeType: 'text/markdown',
38
- },
39
- ];
40
- // Tool definitions
41
- const tools = [
42
- {
43
- name: 'super_info',
44
- description: 'Get SuperDB version info, environment configuration, LSP availability, and installation instructions. Call this to check setup status or learn how to install the optional LSP for enhanced query assistance.',
45
- inputSchema: {
46
- type: 'object',
47
- properties: {
48
- compare_to: {
49
- type: 'string',
50
- description: 'Optional path to another super binary to compare versions',
51
- },
52
- },
27
+ // Build dynamic resource list
28
+ function buildResources() {
29
+ const staticResources = [
30
+ {
31
+ uri: 'superdb://docs/expert',
32
+ name: 'SuperDB Expert Guide',
33
+ description: 'Comprehensive guide for SuperDB queries, syntax patterns, and best practices. Read this before writing complex queries.',
34
+ mimeType: 'text/markdown',
53
35
  },
54
- },
55
- {
56
- name: 'super_lsp_status',
57
- description: 'Check if the SuperDB LSP is installed and get installation instructions if not. The LSP enables code completions and documentation lookup for SuperSQL queries.',
58
- inputSchema: {
59
- type: 'object',
60
- properties: {},
36
+ {
37
+ uri: 'superdb://docs/upgrade-guide',
38
+ name: 'ZQ to SuperDB Upgrade Guide',
39
+ description: 'Migration guide covering all breaking changes from zq to SuperDB. Essential for upgrading old scripts.',
40
+ mimeType: 'text/markdown',
61
41
  },
62
- },
63
- {
64
- name: 'super_help',
65
- description: 'Get SuperDB documentation. Call this before writing complex queries or when migrating from zq or earlier versions of SuperDB. Topics: expert (syntax guide), upgrade (zq migration).',
66
- inputSchema: {
67
- type: 'object',
68
- properties: {
69
- topic: {
70
- type: 'string',
71
- enum: ['expert', 'upgrade', 'upgrade-guide', 'migration'],
72
- description: 'Documentation topic to retrieve',
73
- },
74
- },
75
- required: ['topic'],
42
+ {
43
+ uri: 'superdb://docs/grok-patterns',
44
+ name: 'Grok Patterns',
45
+ description: 'Collection of 89 grok patterns for parsing common log formats, timestamps, network addresses, and more.',
46
+ mimeType: 'text/plain',
76
47
  },
77
- },
48
+ ];
49
+ // Add tutorial resources
50
+ const tutorialsDir = join(docsDir, 'tutorials');
51
+ try {
52
+ const tutorials = readdirSync(tutorialsDir).filter(f => f.endsWith('.md')).sort();
53
+ for (const file of tutorials) {
54
+ const name = basename(file, '.md');
55
+ staticResources.push({
56
+ uri: `superdb://tutorials/${name}`,
57
+ name: `Tutorial: ${name}`,
58
+ description: `SuperDB tutorial: ${name}`,
59
+ mimeType: 'text/markdown',
60
+ });
61
+ }
62
+ }
63
+ catch {
64
+ // tutorials dir may not exist
65
+ }
66
+ // Add recipe resources
67
+ const recipesDir = join(docsDir, 'recipes');
68
+ try {
69
+ const recipes = readdirSync(recipesDir).filter(f => f.endsWith('.spq')).sort();
70
+ for (const file of recipes) {
71
+ const name = basename(file, '.spq');
72
+ staticResources.push({
73
+ uri: `superdb://recipes/${name}`,
74
+ name: `Recipe: ${name}`,
75
+ description: `SuperDB recipe functions: ${name}`,
76
+ mimeType: 'text/plain',
77
+ });
78
+ }
79
+ }
80
+ catch {
81
+ // recipes dir may not exist
82
+ }
83
+ return staticResources;
84
+ }
85
+ const resources = buildResources();
86
+ // Tool definitions — grouped by category, ordered by likely usage frequency
87
+ const tools = [
88
+ // --- Query & Data ---
78
89
  {
79
90
  name: 'super_query',
80
91
  description: 'Execute a SuperDB/SuperSQL query on data files. Returns structured results without shell escaping issues.',
@@ -88,7 +99,7 @@ const tools = [
88
99
  files: {
89
100
  type: 'array',
90
101
  items: { type: 'string' },
91
- description: 'File paths to query (JSON, Parquet, CSV, SUP, etc.)',
102
+ description: 'File paths for pipeline-style input (piped into the query). For SQL FROM clauses, use absolute paths directly in the query instead.',
92
103
  },
93
104
  data: {
94
105
  type: 'string',
@@ -108,31 +119,45 @@ const tools = [
108
119
  },
109
120
  },
110
121
  {
111
- name: 'super_validate',
112
- description: 'Validate SuperSQL query syntax without executing. Returns diagnostics with position info and migration suggestions for common zq-to-SuperDB errors.',
122
+ name: 'super_schema',
123
+ description: 'Inspect the schema/types of a data file by finding all unique shapes (record types) with counts and examples.',
113
124
  inputSchema: {
114
125
  type: 'object',
115
126
  properties: {
116
- query: {
127
+ file: {
117
128
  type: 'string',
118
- description: 'The SuperSQL query to validate',
129
+ description: 'Path to the data file',
119
130
  },
120
131
  },
121
- required: ['query'],
132
+ required: ['file'],
122
133
  },
123
134
  },
135
+ // --- Database (Lake) ---
124
136
  {
125
- name: 'super_schema',
126
- description: 'Inspect the schema/types of a data file by finding all unique shapes (record types) with counts and examples.',
137
+ name: 'super_db_query',
138
+ description: 'Query data from a SuperDB database pool.',
127
139
  inputSchema: {
128
140
  type: 'object',
129
141
  properties: {
130
- file: {
142
+ query: {
131
143
  type: 'string',
132
- description: 'Path to the data file',
144
+ description: 'The SuperSQL query to execute',
145
+ },
146
+ pool: {
147
+ type: 'string',
148
+ description: 'Pool name (can also use FROM in query)',
149
+ },
150
+ lake: {
151
+ type: 'string',
152
+ description: 'Lake path (default: uses SUPER_DB_LAKE env or ~/.super)',
153
+ },
154
+ format: {
155
+ type: 'string',
156
+ enum: ['json', 'sup', 'csv', 'table'],
157
+ description: 'Output format (default: json)',
133
158
  },
134
159
  },
135
- required: ['file'],
160
+ required: ['query'],
136
161
  },
137
162
  },
138
163
  {
@@ -149,30 +174,25 @@ const tools = [
149
174
  },
150
175
  },
151
176
  {
152
- name: 'super_db_query',
153
- description: 'Query data from a SuperDB database pool.',
177
+ name: 'super_db_create_pool',
178
+ description: 'Create a new pool in a SuperDB database.',
154
179
  inputSchema: {
155
180
  type: 'object',
156
181
  properties: {
157
- query: {
182
+ name: {
158
183
  type: 'string',
159
- description: 'The SuperSQL query to execute',
184
+ description: 'Name for the new pool',
160
185
  },
161
- pool: {
186
+ orderBy: {
162
187
  type: 'string',
163
- description: 'Pool name (can also use FROM in query)',
188
+ description: 'Field to order/sort data by',
164
189
  },
165
190
  lake: {
166
191
  type: 'string',
167
192
  description: 'Lake path (default: uses SUPER_DB_LAKE env or ~/.super)',
168
193
  },
169
- format: {
170
- type: 'string',
171
- enum: ['json', 'sup', 'csv', 'table'],
172
- description: 'Output format (default: json)',
173
- },
174
194
  },
175
- required: ['query'],
195
+ required: ['name'],
176
196
  },
177
197
  },
178
198
  {
@@ -202,26 +222,67 @@ const tools = [
202
222
  required: ['pool'],
203
223
  },
204
224
  },
225
+ // --- Documentation & Reference ---
205
226
  {
206
- name: 'super_db_create_pool',
207
- description: 'Create a new pool in a SuperDB database.',
227
+ name: 'super_help',
228
+ description: 'Get SuperDB documentation (content targets v0.1.0). Call this before writing complex queries or when migrating from zq or earlier versions of SuperDB. Topics: expert (overview + section index), expert:<section> (e.g. expert:sql, expert:aggregates), expert:all (full document), upgrade (zq migration), tutorials (list tutorials), tutorial:<name> (read a specific tutorial). Call super_info to check your installed version.',
208
229
  inputSchema: {
209
230
  type: 'object',
210
231
  properties: {
211
- name: {
232
+ topic: {
212
233
  type: 'string',
213
- description: 'Name for the new pool',
234
+ description: 'Documentation topic to retrieve',
214
235
  },
215
- orderBy: {
236
+ },
237
+ required: ['topic'],
238
+ },
239
+ },
240
+ {
241
+ name: 'super_grok_patterns',
242
+ description: 'Search/filter grok patterns by name or regex content (content targets SuperDB v0.1.0). Returns matching patterns as JSON array of {pattern_name, regex} objects. No query returns all patterns.',
243
+ inputSchema: {
244
+ type: 'object',
245
+ properties: {
246
+ query: {
216
247
  type: 'string',
217
- description: 'Field to order/sort data by',
248
+ description: 'Optional filter matches against pattern name or regex content (case-insensitive substring)',
218
249
  },
219
- lake: {
250
+ },
251
+ },
252
+ },
253
+ {
254
+ name: 'super_recipes',
255
+ description: 'Search/list available SuperDB recipe functions from the superkit collection (content targets SuperDB v0.1.0). Returns structured JSON with function signatures, descriptions, and usage examples.',
256
+ inputSchema: {
257
+ type: 'object',
258
+ properties: {
259
+ query: {
220
260
  type: 'string',
221
- description: 'Lake path (default: uses SUPER_DB_LAKE env or ~/.super)',
261
+ description: 'Optional filter matches against function name, description, or source file (case-insensitive substring)',
222
262
  },
223
263
  },
224
- required: ['name'],
264
+ },
265
+ },
266
+ // --- Environment & Diagnostics ---
267
+ {
268
+ name: 'super_info',
269
+ description: 'Get SuperDB version info, environment configuration, LSP availability, and installation instructions. Call this to check setup status or learn how to install the optional LSP for enhanced query assistance.',
270
+ inputSchema: {
271
+ type: 'object',
272
+ properties: {
273
+ compare_to: {
274
+ type: 'string',
275
+ description: 'Optional path to another super binary to compare versions',
276
+ },
277
+ },
278
+ },
279
+ },
280
+ {
281
+ name: 'super_lsp_status',
282
+ description: 'Check if the SuperDB LSP is installed and get installation instructions if not. The LSP enables code completions and documentation lookup for SuperSQL queries.',
283
+ inputSchema: {
284
+ type: 'object',
285
+ properties: {},
225
286
  },
226
287
  },
227
288
  {
@@ -243,6 +304,7 @@ const tools = [
243
304
  required: ['query', 'versions'],
244
305
  },
245
306
  },
307
+ // --- LSP (requires SUPERDB_LSP_PATH) ---
246
308
  {
247
309
  name: 'super_complete',
248
310
  description: 'Get code completions for a SuperSQL query at a position. Requires SUPERDB_LSP_PATH to be set.',
@@ -295,22 +357,37 @@ server.setRequestHandler(ListResourcesRequestSchema, async () => ({
295
357
  // Register resource read handler
296
358
  server.setRequestHandler(ReadResourceRequestSchema, async (request) => {
297
359
  const { uri } = request.params;
298
- const resourceMap = {
360
+ const staticMap = {
299
361
  'superdb://docs/expert': 'superdb-expert.md',
300
362
  'superdb://docs/upgrade-guide': 'zq-to-super-upgrades.md',
363
+ 'superdb://docs/grok-patterns': 'grok-patterns.sup',
301
364
  };
302
- const filename = resourceMap[uri];
303
- if (!filename) {
365
+ let filepath = null;
366
+ let mimeType = 'text/markdown';
367
+ if (staticMap[uri]) {
368
+ filepath = join(docsDir, staticMap[uri]);
369
+ if (uri.endsWith('grok-patterns'))
370
+ mimeType = 'text/plain';
371
+ }
372
+ else if (uri.startsWith('superdb://tutorials/')) {
373
+ const name = uri.slice('superdb://tutorials/'.length);
374
+ filepath = join(docsDir, 'tutorials', `${name}.md`);
375
+ }
376
+ else if (uri.startsWith('superdb://recipes/')) {
377
+ const name = uri.slice('superdb://recipes/'.length);
378
+ filepath = join(docsDir, 'recipes', `${name}.spq`);
379
+ mimeType = 'text/plain';
380
+ }
381
+ if (!filepath) {
304
382
  throw new Error(`Unknown resource: ${uri}`);
305
383
  }
306
384
  try {
307
- const filepath = join(docsDir, filename);
308
385
  const content = readFileSync(filepath, 'utf-8');
309
386
  return {
310
387
  contents: [
311
388
  {
312
389
  uri,
313
- mimeType: 'text/markdown',
390
+ mimeType,
314
391
  text: content,
315
392
  },
316
393
  ],
@@ -341,12 +418,6 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
341
418
  content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
342
419
  };
343
420
  }
344
- case 'super_validate': {
345
- const result = await superValidate(args?.query);
346
- return {
347
- content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
348
- };
349
- }
350
421
  case 'super_schema': {
351
422
  const result = await superSchema(args?.file);
352
423
  return {
@@ -427,6 +498,18 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
427
498
  content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
428
499
  };
429
500
  }
501
+ case 'super_grok_patterns': {
502
+ const result = superGrokPatterns(args?.query);
503
+ return {
504
+ content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
505
+ };
506
+ }
507
+ case 'super_recipes': {
508
+ const result = superRecipes(args?.query);
509
+ return {
510
+ content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
511
+ };
512
+ }
430
513
  default:
431
514
  throw new Error(`Unknown tool: ${name}`);
432
515
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}