@duckcodeailabs/dql-mcp 1.4.4 → 1.5.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,aAAa,EAEb,YAAY,EACZ,KAAK,WAAW,EAIjB,MAAM,0BAA0B,CAAC;AAElC,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;GAKG;AACH,qBAAa,UAAU;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,cAAc,CAA8B;IACpD,OAAO,CAAC,QAAQ,CAA6B;gBAEjC,OAAO,EAAE,iBAAiB;IAKtC,IAAI,QAAQ,IAAI,WAAW,CAG1B;IAED,IAAI,aAAa,IAAI,aAAa,CAGjC;IAED,IAAI,YAAY,IAAI,YAAY,CAG/B;IAED,OAAO,IAAI,IAAI;CAehB;AA8CD,0FAA0F;AAC1F,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAQxD"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAEA,OAAO,EAIL,aAAa,EAEb,YAAY,EACZ,KAAK,WAAW,EAIjB,MAAM,0BAA0B,CAAC;AAElC,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;GAKG;AACH,qBAAa,UAAU;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,cAAc,CAA8B;IACpD,OAAO,CAAC,QAAQ,CAA6B;gBAEjC,OAAO,EAAE,iBAAiB;IAKtC,IAAI,QAAQ,IAAI,WAAW,CAG1B;IAED,IAAI,aAAa,IAAI,aAAa,CAGjC;IAED,IAAI,YAAY,IAAI,YAAY,CAG/B;IAED,OAAO,IAAI,IAAI;CA4BhB;AA6BD,0FAA0F;AAC1F,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAQxD"}
package/dist/context.js CHANGED
@@ -1,6 +1,6 @@
1
- import { existsSync, readFileSync } from 'node:fs';
1
+ import { existsSync } from 'node:fs';
2
2
  import { dirname, join, resolve } from 'node:path';
3
- import { buildManifest, resolveDbtManifestPath, SemanticLayer, loadSemanticLayerFromDir, LineageGraph, } from '@duckcodeailabs/dql-core';
3
+ import { buildManifest, loadProjectConfig, resolveDbtManifestPath, SemanticLayer, resolveSemanticLayerWithDiagnostics, LineageGraph, } from '@duckcodeailabs/dql-core';
4
4
  /**
5
5
  * Shared read-only view over a DQL project.
6
6
  *
@@ -39,10 +39,25 @@ export class DQLContext {
39
39
  dqlVersion: this.dqlVersion,
40
40
  dbtManifestPath,
41
41
  });
42
- const semanticDir = resolveSemanticDir(this.projectRoot);
43
- this._semanticLayer = existsSync(semanticDir)
44
- ? loadSemanticLayerFromDir(semanticDir)
45
- : new SemanticLayer();
42
+ const config = loadProjectConfig(this.projectRoot);
43
+ const semanticConfig = config.semanticLayer?.provider
44
+ ? config.semanticLayer
45
+ : config.semanticLayer?.path
46
+ ? { provider: 'dql', path: config.semanticLayer.path }
47
+ : undefined;
48
+ const resolved = resolveSemanticLayerWithDiagnostics(semanticConfig, this.projectRoot);
49
+ if (resolved.layer) {
50
+ this._semanticLayer = resolved.layer;
51
+ }
52
+ else if (config.dbt?.projectDir) {
53
+ this._semanticLayer = resolveSemanticLayerWithDiagnostics({
54
+ provider: 'dbt',
55
+ projectPath: config.dbt.projectDir,
56
+ }, this.projectRoot).layer ?? new SemanticLayer();
57
+ }
58
+ else {
59
+ this._semanticLayer = new SemanticLayer();
60
+ }
46
61
  this._lineage = null;
47
62
  }
48
63
  }
@@ -72,21 +87,6 @@ function buildGraphFromManifest(manifest) {
72
87
  }
73
88
  return graph;
74
89
  }
75
- function resolveSemanticDir(projectRoot) {
76
- const configPath = join(projectRoot, 'dql.config.json');
77
- if (existsSync(configPath)) {
78
- try {
79
- const config = JSON.parse(readFileSync(configPath, 'utf-8'));
80
- if (config.semanticLayer?.path) {
81
- return join(projectRoot, config.semanticLayer.path);
82
- }
83
- }
84
- catch {
85
- /* fall through */
86
- }
87
- }
88
- return join(projectRoot, 'semantic-layer');
89
- }
90
90
  /** Walk up from `startDir` until a `dql.config.json` is found, else return `startDir`. */
91
91
  export function findProjectRoot(startDir) {
92
92
  let current = resolve(startDir);
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@duckcodeailabs/dql-mcp",
3
- "version": "1.4.4",
3
+ "version": "1.5.1",
4
4
  "description": "DQL MCP server: expose certified blocks, semantic layer, lineage, and governance to LLM agents via the Model Context Protocol",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -24,12 +24,12 @@
24
24
  "access": "public"
25
25
  },
26
26
  "dependencies": {
27
+ "@duckcodeailabs/dql-agent": "^1.5.1",
28
+ "@duckcodeailabs/dql-core": "^1.5.1",
29
+ "@duckcodeailabs/dql-governance": "^1.5.1",
30
+ "@duckcodeailabs/dql-project": "^1.5.1",
27
31
  "@modelcontextprotocol/sdk": "^1.0.4",
28
- "zod": "^3.25.0",
29
- "@duckcodeailabs/dql-agent": "1.4.4",
30
- "@duckcodeailabs/dql-core": "1.4.4",
31
- "@duckcodeailabs/dql-governance": "1.4.4",
32
- "@duckcodeailabs/dql-project": "1.4.4"
32
+ "zod": "^3.25.0"
33
33
  },
34
34
  "devDependencies": {
35
35
  "@types/node": "^20.0.0",