@paretools/swift 0.12.0 → 0.13.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.
@@ -1,4 +1,5 @@
1
1
  import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ import { type LazyToolManager } from "@paretools/shared";
2
3
  /** Registers all Swift tools on the given MCP server, filtered by policy. */
3
- export declare function registerAllTools(server: McpServer): void;
4
+ export declare function registerAllTools(server: McpServer, lazyManager?: LazyToolManager): void;
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAWzE,6EAA6E;AAC7E,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,QAUjD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,mBAAmB,CAAC;AA6D3B,6EAA6E;AAC7E,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,eAAe,QAiBhF"}
@@ -1,4 +1,4 @@
1
- import { shouldRegisterTool } from "@paretools/shared";
1
+ import { shouldRegisterTool, isCoreToolForServer, registerDiscoverTool, } from "@paretools/shared";
2
2
  import { registerBuildTool } from "./build.js";
3
3
  import { registerTestTool } from "./test.js";
4
4
  import { registerRunTool } from "./run.js";
@@ -7,24 +7,64 @@ import { registerPackageUpdateTool } from "./package-update.js";
7
7
  import { registerPackageShowDependenciesTool } from "./package-show-dependencies.js";
8
8
  import { registerPackageCleanTool } from "./package-clean.js";
9
9
  import { registerPackageInitTool } from "./package-init.js";
10
+ const TOOL_DEFS = [
11
+ {
12
+ name: "build",
13
+ description: "Builds a Swift package and returns structured compiler diagnostics.",
14
+ register: registerBuildTool,
15
+ },
16
+ {
17
+ name: "test",
18
+ description: "Runs swift test and returns structured test results (name, status, pass/fail counts).",
19
+ register: registerTestTool,
20
+ },
21
+ {
22
+ name: "run",
23
+ description: "Runs a Swift executable and returns structured output (exit code, stdout, stderr).",
24
+ register: registerRunTool,
25
+ },
26
+ {
27
+ name: "package-resolve",
28
+ description: "Resolves Swift package dependencies and returns structured resolution results.",
29
+ register: registerPackageResolveTool,
30
+ },
31
+ {
32
+ name: "package-update",
33
+ description: "Updates Swift package dependencies and returns structured update results.",
34
+ register: registerPackageUpdateTool,
35
+ },
36
+ {
37
+ name: "package-show-dependencies",
38
+ description: "Shows the dependency tree of a Swift package and returns structured dependency data.",
39
+ register: registerPackageShowDependenciesTool,
40
+ },
41
+ {
42
+ name: "package-clean",
43
+ description: "Cleans Swift package build artifacts and returns structured result.",
44
+ register: registerPackageCleanTool,
45
+ },
46
+ {
47
+ name: "package-init",
48
+ description: "Initializes a new Swift package and returns structured result with created files.",
49
+ register: registerPackageInitTool,
50
+ },
51
+ ];
10
52
  /** Registers all Swift tools on the given MCP server, filtered by policy. */
11
- export function registerAllTools(server) {
53
+ export function registerAllTools(server, lazyManager) {
12
54
  const s = (name) => shouldRegisterTool("swift", name);
13
- if (s("build"))
14
- registerBuildTool(server);
15
- if (s("test"))
16
- registerTestTool(server);
17
- if (s("run"))
18
- registerRunTool(server);
19
- if (s("package-resolve"))
20
- registerPackageResolveTool(server);
21
- if (s("package-update"))
22
- registerPackageUpdateTool(server);
23
- if (s("package-show-dependencies"))
24
- registerPackageShowDependenciesTool(server);
25
- if (s("package-clean"))
26
- registerPackageCleanTool(server);
27
- if (s("package-init"))
28
- registerPackageInitTool(server);
55
+ const isCore = (name) => isCoreToolForServer("swift", name);
56
+ for (const def of TOOL_DEFS) {
57
+ if (!s(def.name))
58
+ continue;
59
+ if (lazyManager && !isCore(def.name)) {
60
+ lazyManager.registerLazy(def);
61
+ }
62
+ else {
63
+ def.register(server);
64
+ }
65
+ }
66
+ if (lazyManager && lazyManager.hasDeferredTools()) {
67
+ registerDiscoverTool(server, lazyManager, "swift");
68
+ }
29
69
  }
30
70
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,mCAAmC,EAAE,MAAM,gCAAgC,CAAC;AACrF,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAE5D,6EAA6E;AAC7E,MAAM,UAAU,gBAAgB,CAAC,MAAiB;IAChD,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC9D,IAAI,CAAC,CAAC,OAAO,CAAC;QAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC1C,IAAI,CAAC,CAAC,MAAM,CAAC;QAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACxC,IAAI,CAAC,CAAC,KAAK,CAAC;QAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,CAAC,CAAC,iBAAiB,CAAC;QAAE,0BAA0B,CAAC,MAAM,CAAC,CAAC;IAC7D,IAAI,CAAC,CAAC,gBAAgB,CAAC;QAAE,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAC3D,IAAI,CAAC,CAAC,2BAA2B,CAAC;QAAE,mCAAmC,CAAC,MAAM,CAAC,CAAC;IAChF,IAAI,CAAC,CAAC,eAAe,CAAC;QAAE,wBAAwB,CAAC,MAAM,CAAC,CAAC;IACzD,IAAI,CAAC,CAAC,cAAc,CAAC;QAAE,uBAAuB,CAAC,MAAM,CAAC,CAAC;AACzD,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,GAErB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,mCAAmC,EAAE,MAAM,gCAAgC,CAAC;AACrF,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAE5D,MAAM,SAAS,GAIV;IACH;QACE,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,qEAAqE;QAClF,QAAQ,EAAE,iBAAiB;KAC5B;IACD;QACE,IAAI,EAAE,MAAM;QACZ,WAAW,EACT,uFAAuF;QACzF,QAAQ,EAAE,gBAAgB;KAC3B;IACD;QACE,IAAI,EAAE,KAAK;QACX,WAAW,EACT,oFAAoF;QACtF,QAAQ,EAAE,eAAe;KAC1B;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,gFAAgF;QAC7F,QAAQ,EAAE,0BAA0B;KACrC;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,2EAA2E;QACxF,QAAQ,EAAE,yBAAyB;KACpC;IACD;QACE,IAAI,EAAE,2BAA2B;QACjC,WAAW,EACT,sFAAsF;QACxF,QAAQ,EAAE,mCAAmC;KAC9C;IACD;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,qEAAqE;QAClF,QAAQ,EAAE,wBAAwB;KACnC;IACD;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EACT,mFAAmF;QACrF,QAAQ,EAAE,uBAAuB;KAClC;CACF,CAAC;AAEF,6EAA6E;AAC7E,MAAM,UAAU,gBAAgB,CAAC,MAAiB,EAAE,WAA6B;IAC/E,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC9D,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAEpE,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC5B,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,SAAS;QAE3B,IAAI,WAAW,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IAED,IAAI,WAAW,IAAI,WAAW,CAAC,gBAAgB,EAAE,EAAE,CAAC;QAClD,oBAAoB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paretools/swift",
3
- "version": "0.12.0",
3
+ "version": "0.13.0",
4
4
  "mcpName": "io.github.Dave-London/pare-swift",
5
5
  "description": "MCP server for Swift build, test, and package operations with structured, token-efficient output",
6
6
  "license": "MIT",
@@ -53,12 +53,12 @@
53
53
  "dist"
54
54
  ],
55
55
  "dependencies": {
56
- "@modelcontextprotocol/sdk": "^1.26.0",
56
+ "@modelcontextprotocol/sdk": "^1.27.0",
57
57
  "zod": "^4.3.6",
58
- "@paretools/shared": "0.12.0"
58
+ "@paretools/shared": "0.13.0"
59
59
  },
60
60
  "devDependencies": {
61
- "@types/node": "^25.2.3",
61
+ "@types/node": "^25.3.0",
62
62
  "typescript": "^5.7.0",
63
63
  "vitest": "^4.0.18",
64
64
  "@paretools/tsconfig": "0.0.0"