@kwonye/mcpx 0.1.67 → 0.1.73

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 (144) hide show
  1. package/dist/adapters/claude-desktop.d.ts +1 -0
  2. package/dist/adapters/claude-desktop.d.ts.map +1 -0
  3. package/dist/adapters/claude.d.ts +1 -0
  4. package/dist/adapters/claude.d.ts.map +1 -0
  5. package/dist/adapters/cline.d.ts +1 -0
  6. package/dist/adapters/cline.d.ts.map +1 -0
  7. package/dist/adapters/codex.d.ts +1 -0
  8. package/dist/adapters/codex.d.ts.map +1 -0
  9. package/dist/adapters/cursor.d.ts +1 -0
  10. package/dist/adapters/cursor.d.ts.map +1 -0
  11. package/dist/adapters/index.d.ts +1 -0
  12. package/dist/adapters/index.d.ts.map +1 -0
  13. package/dist/adapters/kiro.d.ts +1 -0
  14. package/dist/adapters/kiro.d.ts.map +1 -0
  15. package/dist/adapters/opencode.d.ts +1 -0
  16. package/dist/adapters/opencode.d.ts.map +1 -0
  17. package/dist/adapters/qwen.d.ts +1 -0
  18. package/dist/adapters/qwen.d.ts.map +1 -0
  19. package/dist/adapters/utils/index.d.ts +2 -0
  20. package/dist/adapters/utils/index.d.ts.map +1 -0
  21. package/dist/adapters/vscode.d.ts +1 -0
  22. package/dist/adapters/vscode.d.ts.map +1 -0
  23. package/dist/cli-7rggq938.js +3292 -0
  24. package/dist/cli-ezvj44tr.js +3292 -0
  25. package/dist/cli-q8de7zb0.js +12 -0
  26. package/dist/cli.d.ts +1 -0
  27. package/dist/cli.d.ts.map +1 -0
  28. package/dist/cli.js +1880 -1131
  29. package/dist/compat/claude.d.ts +1 -0
  30. package/dist/compat/claude.d.ts.map +1 -0
  31. package/dist/compat/codex.d.ts +1 -0
  32. package/dist/compat/codex.d.ts.map +1 -0
  33. package/dist/compat/index.d.ts +1 -0
  34. package/dist/compat/index.d.ts.map +1 -0
  35. package/dist/compat/qwen.d.ts +1 -0
  36. package/dist/compat/qwen.d.ts.map +1 -0
  37. package/dist/compat/unsupported.d.ts +1 -0
  38. package/dist/compat/unsupported.d.ts.map +1 -0
  39. package/dist/compat/vscode.d.ts +1 -0
  40. package/dist/compat/vscode.d.ts.map +1 -0
  41. package/dist/core/auth-probe.d.ts +1 -0
  42. package/dist/core/auth-probe.d.ts.map +1 -0
  43. package/dist/core/config.d.ts +1 -0
  44. package/dist/core/config.d.ts.map +1 -0
  45. package/dist/core/daemon.d.ts +1 -0
  46. package/dist/core/daemon.d.ts.map +1 -0
  47. package/dist/core/index.d.ts +1 -0
  48. package/dist/core/index.d.ts.map +1 -0
  49. package/dist/core/index.js +81 -24
  50. package/dist/core/managed-index.d.ts +1 -0
  51. package/dist/core/managed-index.d.ts.map +1 -0
  52. package/dist/core/paths.d.ts +2 -0
  53. package/dist/core/paths.d.ts.map +1 -0
  54. package/dist/core/registry.d.ts +1 -0
  55. package/dist/core/registry.d.ts.map +1 -0
  56. package/dist/core/secrets.d.ts +1 -0
  57. package/dist/core/secrets.d.ts.map +1 -0
  58. package/dist/core/server-auth.d.ts +1 -0
  59. package/dist/core/server-auth.d.ts.map +1 -0
  60. package/dist/core/status.d.ts +1 -0
  61. package/dist/core/status.d.ts.map +1 -0
  62. package/dist/core/sync.d.ts +1 -0
  63. package/dist/core/sync.d.ts.map +1 -0
  64. package/dist/core/update-manager.d.ts +1 -0
  65. package/dist/core/update-manager.d.ts.map +1 -0
  66. package/dist/core/update.d.ts +1 -0
  67. package/dist/core/update.d.ts.map +1 -0
  68. package/dist/gateway/server.d.ts +1 -0
  69. package/dist/gateway/server.d.ts.map +1 -0
  70. package/dist/types.d.ts +1 -0
  71. package/dist/types.d.ts.map +1 -0
  72. package/dist/types.js +8 -10
  73. package/dist/util/fs.d.ts +1 -0
  74. package/dist/util/fs.d.ts.map +1 -0
  75. package/dist/version.d.ts +2 -1
  76. package/dist/version.d.ts.map +1 -0
  77. package/package.json +10 -11
  78. package/dist/adapters/claude-desktop.js +0 -115
  79. package/dist/adapters/claude-desktop.js.map +0 -1
  80. package/dist/adapters/claude.js +0 -131
  81. package/dist/adapters/claude.js.map +0 -1
  82. package/dist/adapters/cline.js +0 -135
  83. package/dist/adapters/cline.js.map +0 -1
  84. package/dist/adapters/codex.js +0 -125
  85. package/dist/adapters/codex.js.map +0 -1
  86. package/dist/adapters/cursor.js +0 -122
  87. package/dist/adapters/cursor.js.map +0 -1
  88. package/dist/adapters/index.js +0 -23
  89. package/dist/adapters/index.js.map +0 -1
  90. package/dist/adapters/kiro.js +0 -120
  91. package/dist/adapters/kiro.js.map +0 -1
  92. package/dist/adapters/opencode.js +0 -122
  93. package/dist/adapters/opencode.js.map +0 -1
  94. package/dist/adapters/qwen.js +0 -113
  95. package/dist/adapters/qwen.js.map +0 -1
  96. package/dist/adapters/utils/index.js +0 -134
  97. package/dist/adapters/utils/index.js.map +0 -1
  98. package/dist/adapters/vscode.js +0 -122
  99. package/dist/adapters/vscode.js.map +0 -1
  100. package/dist/cli.js.map +0 -1
  101. package/dist/compat/claude.js +0 -252
  102. package/dist/compat/claude.js.map +0 -1
  103. package/dist/compat/codex.js +0 -179
  104. package/dist/compat/codex.js.map +0 -1
  105. package/dist/compat/index.js +0 -108
  106. package/dist/compat/index.js.map +0 -1
  107. package/dist/compat/qwen.js +0 -316
  108. package/dist/compat/qwen.js.map +0 -1
  109. package/dist/compat/unsupported.js +0 -47
  110. package/dist/compat/unsupported.js.map +0 -1
  111. package/dist/compat/vscode.js +0 -164
  112. package/dist/compat/vscode.js.map +0 -1
  113. package/dist/core/auth-probe.js +0 -54
  114. package/dist/core/auth-probe.js.map +0 -1
  115. package/dist/core/config.js +0 -76
  116. package/dist/core/config.js.map +0 -1
  117. package/dist/core/daemon.js +0 -176
  118. package/dist/core/daemon.js.map +0 -1
  119. package/dist/core/index.js.map +0 -1
  120. package/dist/core/managed-index.js +0 -22
  121. package/dist/core/managed-index.js.map +0 -1
  122. package/dist/core/paths.js +0 -55
  123. package/dist/core/paths.js.map +0 -1
  124. package/dist/core/registry.js +0 -51
  125. package/dist/core/registry.js.map +0 -1
  126. package/dist/core/secrets.js +0 -108
  127. package/dist/core/secrets.js.map +0 -1
  128. package/dist/core/server-auth.js +0 -112
  129. package/dist/core/server-auth.js.map +0 -1
  130. package/dist/core/status.js +0 -65
  131. package/dist/core/status.js.map +0 -1
  132. package/dist/core/sync.js +0 -128
  133. package/dist/core/sync.js.map +0 -1
  134. package/dist/core/update-manager.js +0 -170
  135. package/dist/core/update-manager.js.map +0 -1
  136. package/dist/core/update.js +0 -111
  137. package/dist/core/update.js.map +0 -1
  138. package/dist/gateway/server.js +0 -995
  139. package/dist/gateway/server.js.map +0 -1
  140. package/dist/types.js.map +0 -1
  141. package/dist/util/fs.js +0 -34
  142. package/dist/util/fs.js.map +0 -1
  143. package/dist/version.js +0 -2
  144. package/dist/version.js.map +0 -1
@@ -1,131 +0,0 @@
1
- import os from "node:os";
2
- import path from "node:path";
3
- import { z } from "zod";
4
- import { readJsonFile, writeJsonAtomic } from "../util/fs.js";
5
- import { buildImportSkip, emptyImportScan, ensureManagedEntryWritable, errorResult, isManagedGatewayProjection, okResult, pruneStaleManagedEntries, removeSourceEntries, setManagedEntries, syncDisabledMcpServersArray } from "./utils/index.js";
6
- const stringMapSchema = z.record(z.string(), z.string());
7
- const claudeEntrySchema = z.object({
8
- type: z.string().optional(),
9
- url: z.string().min(1).optional(),
10
- headers: stringMapSchema.optional(),
11
- command: z.string().min(1).optional(),
12
- args: z.array(z.string()).optional(),
13
- env: stringMapSchema.optional(),
14
- cwd: z.string().min(1).optional(),
15
- disabled: z.boolean().optional()
16
- }).passthrough();
17
- export class ClaudeAdapter {
18
- id = "claude";
19
- detectConfigPath() {
20
- return path.join(os.homedir(), ".claude.json");
21
- }
22
- supportsHttp() {
23
- return true;
24
- }
25
- scanForImports(_config, managedIndex) {
26
- const configPath = this.detectConfigPath();
27
- const result = emptyImportScan(this.id, configPath ?? undefined);
28
- if (!configPath) {
29
- return result;
30
- }
31
- const raw = readJsonFile(configPath, {});
32
- const topLevelServers = (raw.mcpServers ?? {});
33
- const disabledMcpServers = new Set(raw.disabledMcpServers ?? []);
34
- const projects = raw.projects ?? {};
35
- for (const project of Object.values(projects)) {
36
- const projectDisabled = project?.disabledMcpServers ?? [];
37
- for (const name of projectDisabled) {
38
- disabledMcpServers.add(name);
39
- }
40
- }
41
- for (const [name, rawEntry] of Object.entries(topLevelServers)) {
42
- if (isManagedGatewayProjection(name) || managedIndex.managed[this.id]?.entries?.[name]) {
43
- continue;
44
- }
45
- const parsed = claudeEntrySchema.safeParse(rawEntry);
46
- if (!parsed.success) {
47
- result.skipped.push(buildImportSkip(this.id, name, "Entry could not be mapped to an mcpx server.", configPath));
48
- continue;
49
- }
50
- const entry = parsed.data;
51
- const isDisabled = entry.disabled === true || disabledMcpServers.has(name);
52
- if ((entry.type === undefined || entry.type === "http") && entry.url && !entry.command) {
53
- result.candidates.push({
54
- clientId: this.id,
55
- configPath,
56
- sourceEntryName: name,
57
- serverName: name,
58
- spec: {
59
- transport: "http",
60
- url: entry.url,
61
- headers: entry.headers,
62
- enabled: !isDisabled
63
- }
64
- });
65
- continue;
66
- }
67
- if ((entry.type === undefined || entry.type === "stdio") && entry.command && !entry.url) {
68
- result.candidates.push({
69
- clientId: this.id,
70
- configPath,
71
- sourceEntryName: name,
72
- serverName: name,
73
- spec: {
74
- transport: "stdio",
75
- command: entry.command,
76
- args: entry.args,
77
- env: entry.env,
78
- cwd: entry.cwd,
79
- enabled: !isDisabled
80
- }
81
- });
82
- continue;
83
- }
84
- result.skipped.push(buildImportSkip(this.id, name, "Entry must define exactly one transport that mcpx supports.", configPath));
85
- }
86
- return result;
87
- }
88
- syncGateway(_config, options) {
89
- const configPath = this.detectConfigPath();
90
- if (!configPath) {
91
- return errorResult(this.id, undefined, "Unable to resolve Claude config path.");
92
- }
93
- try {
94
- const raw = readJsonFile(configPath, {});
95
- const managedNames = options.managedEntries.map((entry) => entry.name);
96
- const serverEntries = Object.fromEntries(options.managedEntries.map((entry) => [entry.name, {
97
- type: "http",
98
- url: entry.url,
99
- headers: entry.headers
100
- }]));
101
- const topLevelServers = (raw.mcpServers ?? {});
102
- removeSourceEntries(topLevelServers, options.sourceEntriesToRemove);
103
- for (const name of managedNames) {
104
- const topLevelConflict = ensureManagedEntryWritable(options.managedIndex, this.id, name, topLevelServers[name]);
105
- if (topLevelConflict) {
106
- return errorResult(this.id, configPath, topLevelConflict);
107
- }
108
- }
109
- pruneStaleManagedEntries(options.managedIndex, this.id, topLevelServers, managedNames);
110
- for (const [name, entry] of Object.entries(serverEntries)) {
111
- topLevelServers[name] = entry;
112
- }
113
- raw.mcpServers = topLevelServers;
114
- syncDisabledMcpServersArray(raw, managedNames, options.managedEntries);
115
- const projects = raw.projects ?? {};
116
- for (const projectPath of Object.keys(projects)) {
117
- const project = projects[projectPath] ?? {};
118
- syncDisabledMcpServersArray(project, managedNames, options.managedEntries);
119
- projects[projectPath] = project;
120
- }
121
- raw.projects = projects;
122
- writeJsonAtomic(configPath, raw);
123
- setManagedEntries(options.managedIndex, this.id, configPath, Object.fromEntries(Object.entries(serverEntries).map(([name, entry]) => [name, JSON.stringify(entry)])));
124
- return okResult(this.id, configPath);
125
- }
126
- catch (error) {
127
- return errorResult(this.id, configPath, error.message);
128
- }
129
- }
130
- }
131
- //# sourceMappingURL=claude.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../src/adapters/claude.ts"],"names":[],"mappings":"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"}
@@ -1,135 +0,0 @@
1
- import os from "node:os";
2
- import path from "node:path";
3
- import fs from "node:fs";
4
- import { z } from "zod";
5
- import { readJsonFile, writeJsonAtomic } from "../util/fs.js";
6
- import { buildImportSkip, emptyImportScan, ensureManagedEntryWritable, errorResult, isManagedGatewayProjection, okResult, pruneStaleManagedEntries, removeSourceEntries, setManagedEntries } from "./utils/index.js";
7
- const stringMapSchema = z.record(z.string(), z.string());
8
- const clineEntrySchema = z.object({
9
- transportType: z.string().optional(),
10
- url: z.string().min(1).optional(),
11
- headers: stringMapSchema.optional(),
12
- command: z.string().min(1).optional(),
13
- args: z.array(z.string()).optional(),
14
- env: stringMapSchema.optional(),
15
- cwd: z.string().min(1).optional(),
16
- disabled: z.boolean().optional()
17
- }).passthrough();
18
- function getCandidatePaths() {
19
- return [
20
- path.join(os.homedir(), "Library", "Application Support", "Code", "User", "globalStorage", "saoudrizwan.claude-dev", "settings", "cline_mcp_settings.json"),
21
- path.join(os.homedir(), "Library", "Application Support", "Cursor", "User", "globalStorage", "saoudrizwan.claude-dev", "settings", "cline_mcp_settings.json")
22
- ];
23
- }
24
- export class ClineAdapter {
25
- id = "cline";
26
- detectConfigPath() {
27
- const candidates = getCandidatePaths();
28
- for (const candidate of candidates) {
29
- if (fs.existsSync(candidate)) {
30
- return candidate;
31
- }
32
- }
33
- return candidates[0] ?? null;
34
- }
35
- supportsHttp() {
36
- return true;
37
- }
38
- scanForImports(_config, managedIndex) {
39
- const configPath = this.detectConfigPath();
40
- const result = emptyImportScan(this.id, configPath ?? undefined);
41
- if (!configPath || !fs.existsSync(configPath)) {
42
- return result;
43
- }
44
- const raw = readJsonFile(configPath, {});
45
- const servers = {
46
- ...(raw.mcpServers ?? {})
47
- };
48
- for (const [name, rawEntry] of Object.entries(servers)) {
49
- if (isManagedGatewayProjection(name) || managedIndex.managed[this.id]?.entries?.[name]) {
50
- continue;
51
- }
52
- const parsed = clineEntrySchema.safeParse(rawEntry);
53
- if (!parsed.success) {
54
- result.skipped.push(buildImportSkip(this.id, name, "Entry could not be mapped to an mcpx server.", configPath));
55
- continue;
56
- }
57
- const entry = parsed.data;
58
- if ((entry.transportType === undefined || entry.transportType === "http") && entry.url && !entry.command) {
59
- result.candidates.push({
60
- clientId: this.id,
61
- configPath,
62
- sourceEntryName: name,
63
- serverName: name,
64
- spec: {
65
- transport: "http",
66
- url: entry.url,
67
- headers: entry.headers,
68
- enabled: entry.disabled !== true
69
- }
70
- });
71
- continue;
72
- }
73
- if ((entry.transportType === undefined || entry.transportType === "stdio") && entry.command && !entry.url) {
74
- result.candidates.push({
75
- clientId: this.id,
76
- configPath,
77
- sourceEntryName: name,
78
- serverName: name,
79
- spec: {
80
- transport: "stdio",
81
- command: entry.command,
82
- args: entry.args,
83
- env: entry.env,
84
- cwd: entry.cwd,
85
- enabled: entry.disabled !== true
86
- }
87
- });
88
- continue;
89
- }
90
- result.skipped.push(buildImportSkip(this.id, name, "Entry must define exactly one transport that mcpx supports.", configPath));
91
- }
92
- return result;
93
- }
94
- syncGateway(_config, options) {
95
- const configPath = this.detectConfigPath();
96
- if (!configPath) {
97
- return errorResult(this.id, undefined, "Unable to resolve Cline MCP config path.");
98
- }
99
- try {
100
- const raw = readJsonFile(configPath, {});
101
- const servers = {
102
- ...(raw.mcpServers ?? {})
103
- };
104
- removeSourceEntries(servers, options.sourceEntriesToRemove);
105
- const managedNames = options.managedEntries.map((entry) => entry.name);
106
- const serverEntries = Object.fromEntries(options.managedEntries.map((entry) => [entry.name, {
107
- transportType: "http",
108
- url: entry.url,
109
- headers: entry.headers,
110
- disabled: !entry.enabled
111
- }]));
112
- for (const name of managedNames) {
113
- const conflict = ensureManagedEntryWritable(options.managedIndex, this.id, name, servers[name]);
114
- if (conflict) {
115
- return errorResult(this.id, configPath, conflict);
116
- }
117
- }
118
- pruneStaleManagedEntries(options.managedIndex, this.id, servers, managedNames);
119
- for (const [name, entry] of Object.entries(serverEntries)) {
120
- servers[name] = entry;
121
- }
122
- const next = {
123
- ...raw,
124
- mcpServers: servers
125
- };
126
- writeJsonAtomic(configPath, next);
127
- setManagedEntries(options.managedIndex, this.id, configPath, Object.fromEntries(Object.entries(serverEntries).map(([name, entry]) => [name, JSON.stringify(entry)])));
128
- return okResult(this.id, configPath);
129
- }
130
- catch (error) {
131
- return errorResult(this.id, configPath, error.message);
132
- }
133
- }
134
- }
135
- //# sourceMappingURL=cline.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cline.js","sourceRoot":"","sources":["../../src/adapters/cline.ts"],"names":[],"mappings":"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"}
@@ -1,125 +0,0 @@
1
- import os from "node:os";
2
- import path from "node:path";
3
- import fs from "node:fs";
4
- import { parse, stringify } from "@iarna/toml";
5
- import { z } from "zod";
6
- import { buildImportSkip, emptyImportScan, ensureManagedEntryWritable, errorResult, isManagedGatewayProjection, okResult, pruneStaleManagedEntries, removeSourceEntries, setManagedEntries } from "./utils/index.js";
7
- const stringMapSchema = z.preprocess((value) => {
8
- if (!value || typeof value !== "object" || Array.isArray(value)) {
9
- return value;
10
- }
11
- return Object.fromEntries(Object.entries(value));
12
- }, z.record(z.string(), z.string()));
13
- const codexEntrySchema = z.object({
14
- enabled: z.boolean().optional(),
15
- url: z.string().min(1).optional(),
16
- headers: stringMapSchema.optional(),
17
- http_headers: stringMapSchema.optional(),
18
- command: z.string().min(1).optional(),
19
- args: z.array(z.string()).optional(),
20
- env: stringMapSchema.optional(),
21
- cwd: z.string().min(1).optional()
22
- }).passthrough();
23
- export class CodexAdapter {
24
- id = "codex";
25
- detectConfigPath() {
26
- return path.join(os.homedir(), ".codex", "config.toml");
27
- }
28
- supportsHttp() {
29
- return true;
30
- }
31
- scanForImports(_config, managedIndex) {
32
- const configPath = this.detectConfigPath();
33
- const result = emptyImportScan(this.id, configPath ?? undefined);
34
- if (!configPath || !fs.existsSync(configPath)) {
35
- return result;
36
- }
37
- const existing = fs.readFileSync(configPath, "utf8");
38
- const doc = existing.trim().length > 0 ? parse(existing) : {};
39
- const mcpServers = (doc.mcp_servers ?? {});
40
- for (const [name, rawEntry] of Object.entries(mcpServers)) {
41
- if (isManagedGatewayProjection(name) || managedIndex.managed[this.id]?.entries?.[name]) {
42
- continue;
43
- }
44
- const parsed = codexEntrySchema.safeParse(rawEntry);
45
- if (!parsed.success) {
46
- result.skipped.push(buildImportSkip(this.id, name, "Entry could not be mapped to an mcpx server.", configPath));
47
- continue;
48
- }
49
- const entry = parsed.data;
50
- if (entry.url && !entry.command) {
51
- result.candidates.push({
52
- clientId: this.id,
53
- configPath,
54
- sourceEntryName: name,
55
- serverName: name,
56
- spec: {
57
- transport: "http",
58
- url: entry.url,
59
- headers: entry.http_headers ?? entry.headers,
60
- enabled: entry.enabled !== false
61
- }
62
- });
63
- continue;
64
- }
65
- if (entry.command && !entry.url) {
66
- result.candidates.push({
67
- clientId: this.id,
68
- configPath,
69
- sourceEntryName: name,
70
- serverName: name,
71
- spec: {
72
- transport: "stdio",
73
- command: entry.command,
74
- args: entry.args,
75
- env: entry.env,
76
- cwd: entry.cwd,
77
- enabled: entry.enabled !== false
78
- }
79
- });
80
- continue;
81
- }
82
- result.skipped.push(buildImportSkip(this.id, name, "Entry must define exactly one transport that mcpx supports.", configPath));
83
- }
84
- return result;
85
- }
86
- syncGateway(_config, options) {
87
- const configPath = this.detectConfigPath();
88
- if (!configPath) {
89
- return errorResult(this.id, undefined, "Unable to resolve Codex config.toml path.");
90
- }
91
- try {
92
- const existing = fs.existsSync(configPath) ? fs.readFileSync(configPath, "utf8") : "";
93
- const doc = existing.trim().length > 0 ? parse(existing) : {};
94
- const mcpServers = (doc.mcp_servers ?? {});
95
- removeSourceEntries(mcpServers, options.sourceEntriesToRemove);
96
- const managedNames = options.managedEntries.map((entry) => entry.name);
97
- const serverEntries = Object.fromEntries(options.managedEntries.map((entry) => [entry.name, {
98
- enabled: entry.enabled,
99
- url: entry.url,
100
- http_headers: entry.headers
101
- }]));
102
- for (const name of managedNames) {
103
- const conflict = ensureManagedEntryWritable(options.managedIndex, this.id, name, mcpServers[name]);
104
- if (conflict) {
105
- return errorResult(this.id, configPath, conflict);
106
- }
107
- }
108
- pruneStaleManagedEntries(options.managedIndex, this.id, mcpServers, managedNames);
109
- for (const [name, entry] of Object.entries(serverEntries)) {
110
- mcpServers[name] = entry;
111
- }
112
- doc.mcp_servers = mcpServers;
113
- fs.mkdirSync(path.dirname(configPath), { recursive: true });
114
- const tmpPath = `${configPath}.tmp-${process.pid}-${Date.now()}`;
115
- fs.writeFileSync(tmpPath, stringify(doc), { mode: 0o600 });
116
- fs.renameSync(tmpPath, configPath);
117
- setManagedEntries(options.managedIndex, this.id, configPath, Object.fromEntries(Object.entries(serverEntries).map(([name, entry]) => [name, JSON.stringify(entry)])));
118
- return okResult(this.id, configPath);
119
- }
120
- catch (error) {
121
- return errorResult(this.id, configPath, error.message);
122
- }
123
- }
124
- }
125
- //# sourceMappingURL=codex.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"codex.js","sourceRoot":"","sources":["../../src/adapters/codex.ts"],"names":[],"mappings":"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"}
@@ -1,122 +0,0 @@
1
- import os from "node:os";
2
- import path from "node:path";
3
- import { z } from "zod";
4
- import { readJsonFile, writeJsonAtomic } from "../util/fs.js";
5
- import { buildImportSkip, emptyImportScan, ensureManagedEntryWritable, errorResult, isManagedGatewayProjection, okResult, pruneStaleManagedEntries, removeSourceEntries, setManagedEntries } from "./utils/index.js";
6
- const stringMapSchema = z.record(z.string(), z.string());
7
- const cursorEntrySchema = z.object({
8
- type: z.string().optional(),
9
- url: z.string().min(1).optional(),
10
- headers: stringMapSchema.optional(),
11
- command: z.string().min(1).optional(),
12
- args: z.array(z.string()).optional(),
13
- env: stringMapSchema.optional(),
14
- cwd: z.string().min(1).optional(),
15
- disabled: z.boolean().optional()
16
- }).passthrough();
17
- export class CursorAdapter {
18
- id = "cursor";
19
- detectConfigPath() {
20
- return path.join(os.homedir(), "Library", "Application Support", "Cursor", "User", "mcp.json");
21
- }
22
- supportsHttp() {
23
- return true;
24
- }
25
- scanForImports(_config, managedIndex) {
26
- const configPath = this.detectConfigPath();
27
- const result = emptyImportScan(this.id, configPath ?? undefined);
28
- if (!configPath) {
29
- return result;
30
- }
31
- const raw = readJsonFile(configPath, {});
32
- const servers = {
33
- ...(raw.servers ?? {})
34
- };
35
- for (const [name, rawEntry] of Object.entries(servers)) {
36
- if (isManagedGatewayProjection(name) || managedIndex.managed[this.id]?.entries?.[name]) {
37
- continue;
38
- }
39
- const parsed = cursorEntrySchema.safeParse(rawEntry);
40
- if (!parsed.success) {
41
- result.skipped.push(buildImportSkip(this.id, name, "Entry could not be mapped to an mcpx server.", configPath));
42
- continue;
43
- }
44
- const entry = parsed.data;
45
- if ((entry.type === undefined || entry.type === "http") && entry.url && !entry.command) {
46
- result.candidates.push({
47
- clientId: this.id,
48
- configPath,
49
- sourceEntryName: name,
50
- serverName: name,
51
- spec: {
52
- transport: "http",
53
- url: entry.url,
54
- headers: entry.headers,
55
- enabled: entry.disabled !== true
56
- }
57
- });
58
- continue;
59
- }
60
- if ((entry.type === undefined || entry.type === "stdio") && entry.command && !entry.url) {
61
- result.candidates.push({
62
- clientId: this.id,
63
- configPath,
64
- sourceEntryName: name,
65
- serverName: name,
66
- spec: {
67
- transport: "stdio",
68
- command: entry.command,
69
- args: entry.args,
70
- env: entry.env,
71
- cwd: entry.cwd,
72
- enabled: entry.disabled !== true
73
- }
74
- });
75
- continue;
76
- }
77
- result.skipped.push(buildImportSkip(this.id, name, "Entry must define exactly one transport that mcpx supports.", configPath));
78
- }
79
- return result;
80
- }
81
- syncGateway(_config, options) {
82
- const configPath = this.detectConfigPath();
83
- if (!configPath) {
84
- return errorResult(this.id, undefined, "Unable to resolve Cursor MCP config path.");
85
- }
86
- try {
87
- const raw = readJsonFile(configPath, {});
88
- const servers = {
89
- ...(raw.servers ?? {})
90
- };
91
- removeSourceEntries(servers, options.sourceEntriesToRemove);
92
- const managedNames = options.managedEntries.map((entry) => entry.name);
93
- const serverEntries = Object.fromEntries(options.managedEntries.map((entry) => [entry.name, {
94
- type: "http",
95
- url: entry.url,
96
- headers: entry.headers,
97
- disabled: !entry.enabled
98
- }]));
99
- for (const name of managedNames) {
100
- const conflict = ensureManagedEntryWritable(options.managedIndex, this.id, name, servers[name]);
101
- if (conflict) {
102
- return errorResult(this.id, configPath, conflict);
103
- }
104
- }
105
- pruneStaleManagedEntries(options.managedIndex, this.id, servers, managedNames);
106
- for (const [name, entry] of Object.entries(serverEntries)) {
107
- servers[name] = entry;
108
- }
109
- const next = {
110
- ...raw,
111
- servers
112
- };
113
- writeJsonAtomic(configPath, next);
114
- setManagedEntries(options.managedIndex, this.id, configPath, Object.fromEntries(Object.entries(serverEntries).map(([name, entry]) => [name, JSON.stringify(entry)])));
115
- return okResult(this.id, configPath);
116
- }
117
- catch (error) {
118
- return errorResult(this.id, configPath, error.message);
119
- }
120
- }
121
- }
122
- //# sourceMappingURL=cursor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../src/adapters/cursor.ts"],"names":[],"mappings":"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"}
@@ -1,23 +0,0 @@
1
- import { ClaudeAdapter } from "./claude.js";
2
- import { ClaudeDesktopAdapter } from "./claude-desktop.js";
3
- import { CodexAdapter } from "./codex.js";
4
- import { CursorAdapter } from "./cursor.js";
5
- import { ClineAdapter } from "./cline.js";
6
- import { KiroAdapter } from "./kiro.js";
7
- import { OpenCodeAdapter } from "./opencode.js";
8
- import { VsCodeAdapter } from "./vscode.js";
9
- import { QwenAdapter } from "./qwen.js";
10
- export function getAdapters() {
11
- return [
12
- new ClaudeAdapter(),
13
- new ClaudeDesktopAdapter(),
14
- new CodexAdapter(),
15
- new CursorAdapter(),
16
- new ClineAdapter(),
17
- new OpenCodeAdapter(),
18
- new KiroAdapter(),
19
- new VsCodeAdapter(),
20
- new QwenAdapter()
21
- ];
22
- }
23
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/adapters/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,MAAM,UAAU,WAAW;IACzB,OAAO;QACL,IAAI,aAAa,EAAE;QACnB,IAAI,oBAAoB,EAAE;QAC1B,IAAI,YAAY,EAAE;QAClB,IAAI,aAAa,EAAE;QACnB,IAAI,YAAY,EAAE;QAClB,IAAI,eAAe,EAAE;QACrB,IAAI,WAAW,EAAE;QACjB,IAAI,aAAa,EAAE;QACnB,IAAI,WAAW,EAAE;KAClB,CAAC;AACJ,CAAC"}