@everstateai/mcp 1.3.1 → 1.3.3

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 (70) hide show
  1. package/dist/index.d.ts +5 -3
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +32 -5
  4. package/dist/index.js.map +1 -1
  5. package/dist/setup/auto-update.d.ts +20 -0
  6. package/dist/setup/auto-update.d.ts.map +1 -0
  7. package/dist/setup/auto-update.js +295 -0
  8. package/dist/setup/auto-update.js.map +1 -0
  9. package/dist/setup/commands/doctor.d.ts +15 -0
  10. package/dist/setup/commands/doctor.d.ts.map +1 -0
  11. package/dist/setup/commands/doctor.js +264 -0
  12. package/dist/setup/commands/doctor.js.map +1 -0
  13. package/dist/setup/commands/repair.d.ts +14 -0
  14. package/dist/setup/commands/repair.d.ts.map +1 -0
  15. package/dist/setup/commands/repair.js +252 -0
  16. package/dist/setup/commands/repair.js.map +1 -0
  17. package/dist/setup/hooks/templates.d.ts +30 -0
  18. package/dist/setup/hooks/templates.d.ts.map +1 -0
  19. package/dist/setup/hooks/templates.js +237 -0
  20. package/dist/setup/hooks/templates.js.map +1 -0
  21. package/dist/setup/types.d.ts +120 -0
  22. package/dist/setup/types.d.ts.map +1 -0
  23. package/dist/setup/types.js +58 -0
  24. package/dist/setup/types.js.map +1 -0
  25. package/dist/setup/validators/api-key.d.ts +8 -0
  26. package/dist/setup/validators/api-key.d.ts.map +1 -0
  27. package/dist/setup/validators/api-key.js +233 -0
  28. package/dist/setup/validators/api-key.js.map +1 -0
  29. package/dist/setup/validators/connectivity.d.ts +8 -0
  30. package/dist/setup/validators/connectivity.d.ts.map +1 -0
  31. package/dist/setup/validators/connectivity.js +150 -0
  32. package/dist/setup/validators/connectivity.js.map +1 -0
  33. package/dist/setup/validators/hooks.d.ts +8 -0
  34. package/dist/setup/validators/hooks.d.ts.map +1 -0
  35. package/dist/setup/validators/hooks.js +431 -0
  36. package/dist/setup/validators/hooks.js.map +1 -0
  37. package/dist/setup/validators/index.d.ts +18 -0
  38. package/dist/setup/validators/index.d.ts.map +1 -0
  39. package/dist/setup/validators/index.js +123 -0
  40. package/dist/setup/validators/index.js.map +1 -0
  41. package/dist/setup/validators/mcp-config.d.ts +8 -0
  42. package/dist/setup/validators/mcp-config.d.ts.map +1 -0
  43. package/dist/setup/validators/mcp-config.js +333 -0
  44. package/dist/setup/validators/mcp-config.js.map +1 -0
  45. package/dist/setup/validators/project.d.ts +8 -0
  46. package/dist/setup/validators/project.d.ts.map +1 -0
  47. package/dist/setup/validators/project.js +202 -0
  48. package/dist/setup/validators/project.js.map +1 -0
  49. package/dist/setup/version.d.ts +58 -0
  50. package/dist/setup/version.d.ts.map +1 -0
  51. package/dist/setup/version.js +262 -0
  52. package/dist/setup/version.js.map +1 -0
  53. package/dist/setup.d.ts.map +1 -1
  54. package/dist/setup.js +264 -28
  55. package/dist/setup.js.map +1 -1
  56. package/package.json +1 -1
  57. package/src/index.ts +32 -5
  58. package/src/setup/auto-update.ts +328 -0
  59. package/src/setup/commands/doctor.ts +266 -0
  60. package/src/setup/commands/repair.ts +260 -0
  61. package/src/setup/hooks/templates.ts +239 -0
  62. package/src/setup/types.ts +199 -0
  63. package/src/setup/validators/api-key.ts +218 -0
  64. package/src/setup/validators/connectivity.ts +176 -0
  65. package/src/setup/validators/hooks.ts +447 -0
  66. package/src/setup/validators/index.ts +137 -0
  67. package/src/setup/validators/mcp-config.ts +329 -0
  68. package/src/setup/validators/project.ts +179 -0
  69. package/src/setup/version.ts +267 -0
  70. package/src/setup.ts +297 -28
package/dist/index.d.ts CHANGED
@@ -2,9 +2,11 @@
2
2
  /**
3
3
  * Everstate MCP Package
4
4
  *
5
- * Two modes:
6
- * 1. Setup: npx @everstateai/mcp setup YOUR_API_KEY
7
- * 2. MCP Server: Runs as stdio MCP server (default)
5
+ * Commands:
6
+ * 1. Setup: npx @everstateai/mcp setup YOUR_API_KEY
7
+ * 2. Doctor: npx @everstateai/mcp doctor
8
+ * 3. Repair: npx @everstateai/mcp repair
9
+ * 4. MCP Server: Runs as stdio MCP server (default)
8
10
  */
9
11
  export {};
10
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;GAMG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;GAQG"}
package/dist/index.js CHANGED
@@ -3,9 +3,11 @@
3
3
  /**
4
4
  * Everstate MCP Package
5
5
  *
6
- * Two modes:
7
- * 1. Setup: npx @everstateai/mcp setup YOUR_API_KEY
8
- * 2. MCP Server: Runs as stdio MCP server (default)
6
+ * Commands:
7
+ * 1. Setup: npx @everstateai/mcp setup YOUR_API_KEY
8
+ * 2. Doctor: npx @everstateai/mcp doctor
9
+ * 3. Repair: npx @everstateai/mcp repair
10
+ * 4. MCP Server: Runs as stdio MCP server (default)
9
11
  */
10
12
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
11
13
  if (k2 === undefined) k2 = k;
@@ -43,14 +45,33 @@ var __importStar = (this && this.__importStar) || (function () {
43
45
  Object.defineProperty(exports, "__esModule", { value: true });
44
46
  const fs = __importStar(require("fs"));
45
47
  const path = __importStar(require("path"));
46
- // Check if this is a setup command
48
+ // Check which command to run
47
49
  const args = process.argv.slice(2);
48
- if (args[0] === "setup" || args[0] === "--help" || args[0] === "-h") {
50
+ const command = args[0];
51
+ if (command === "setup" || command === "--help" || command === "-h") {
49
52
  // Dynamic import to avoid loading MCP deps for setup
50
53
  import("./setup.js").then(({ runSetup }) => {
51
54
  runSetup(args);
52
55
  });
53
56
  }
57
+ else if (command === "doctor") {
58
+ // Run doctor command
59
+ import("./setup/commands/doctor.js").then(({ doctorCli }) => {
60
+ doctorCli(args.slice(1)).catch((error) => {
61
+ console.error("Doctor failed:", error);
62
+ process.exit(1);
63
+ });
64
+ });
65
+ }
66
+ else if (command === "repair") {
67
+ // Run repair command
68
+ import("./setup/commands/repair.js").then(({ repairCli }) => {
69
+ repairCli(args.slice(1)).catch((error) => {
70
+ console.error("Repair failed:", error);
71
+ process.exit(1);
72
+ });
73
+ });
74
+ }
54
75
  else {
55
76
  // Run MCP server
56
77
  runMcpServer();
@@ -188,6 +209,12 @@ async function runMcpServer() {
188
209
  });
189
210
  // Auto-detect default project before starting
190
211
  await detectDefaultProject();
212
+ // Check for and apply updates (runs in background, doesn't block startup)
213
+ import("./setup/auto-update.js")
214
+ .then(({ checkAndApplyUpdates }) => checkAndApplyUpdates())
215
+ .catch((error) => {
216
+ console.error("[Everstate] Auto-update check failed:", error);
217
+ });
191
218
  const transport = new StdioServerTransport();
192
219
  await server.connect(transport);
193
220
  console.error("Everstate MCP Proxy connected to", API_BASE);
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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"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Auto-Update System
3
+ *
4
+ * Automatically updates hooks and configuration when the MCP proxy starts.
5
+ * Runs silently in the background without blocking the MCP server.
6
+ *
7
+ * Also checks the Everstate server for available updates (same as the dashboard UI).
8
+ */
9
+ interface UpdateCheckResult {
10
+ needsUpdate: boolean;
11
+ updates: string[];
12
+ errors: string[];
13
+ }
14
+ /**
15
+ * Check and apply updates silently.
16
+ * Called on MCP server startup.
17
+ */
18
+ export declare function checkAndApplyUpdates(): Promise<UpdateCheckResult>;
19
+ export {};
20
+ //# sourceMappingURL=auto-update.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-update.d.ts","sourceRoot":"","sources":["../../src/setup/auto-update.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA4BH,UAAU,iBAAiB;IACzB,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,iBAAiB,CAAC,CA6FvE"}
@@ -0,0 +1,295 @@
1
+ "use strict";
2
+ /**
3
+ * Auto-Update System
4
+ *
5
+ * Automatically updates hooks and configuration when the MCP proxy starts.
6
+ * Runs silently in the background without blocking the MCP server.
7
+ *
8
+ * Also checks the Everstate server for available updates (same as the dashboard UI).
9
+ */
10
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ var desc = Object.getOwnPropertyDescriptor(m, k);
13
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
14
+ desc = { enumerable: true, get: function() { return m[k]; } };
15
+ }
16
+ Object.defineProperty(o, k2, desc);
17
+ }) : (function(o, m, k, k2) {
18
+ if (k2 === undefined) k2 = k;
19
+ o[k2] = m[k];
20
+ }));
21
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
22
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
23
+ }) : function(o, v) {
24
+ o["default"] = v;
25
+ });
26
+ var __importStar = (this && this.__importStar) || (function () {
27
+ var ownKeys = function(o) {
28
+ ownKeys = Object.getOwnPropertyNames || function (o) {
29
+ var ar = [];
30
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
31
+ return ar;
32
+ };
33
+ return ownKeys(o);
34
+ };
35
+ return function (mod) {
36
+ if (mod && mod.__esModule) return mod;
37
+ var result = {};
38
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
39
+ __setModuleDefault(result, mod);
40
+ return result;
41
+ };
42
+ })();
43
+ Object.defineProperty(exports, "__esModule", { value: true });
44
+ exports.checkAndApplyUpdates = checkAndApplyUpdates;
45
+ const fs = __importStar(require("fs"));
46
+ const types_js_1 = require("./types.js");
47
+ const version_js_1 = require("./version.js");
48
+ const templates_js_1 = require("./hooks/templates.js");
49
+ const UPDATE_CHECK_INTERVAL_MS = 24 * 60 * 60 * 1000; // 24 hours
50
+ /**
51
+ * Check and apply updates silently.
52
+ * Called on MCP server startup.
53
+ */
54
+ async function checkAndApplyUpdates() {
55
+ const result = {
56
+ needsUpdate: false,
57
+ updates: [],
58
+ errors: [],
59
+ };
60
+ try {
61
+ // Read or create version file
62
+ let versionFile = (0, version_js_1.readVersionFile)();
63
+ const isFirstRun = !versionFile;
64
+ if (!versionFile) {
65
+ versionFile = (0, version_js_1.createVersionFile)('npx');
66
+ }
67
+ // Check if we should skip this update check (rate limiting)
68
+ const lastCheck = versionFile.lastUpdateCheck;
69
+ if (lastCheck) {
70
+ const elapsed = Date.now() - new Date(lastCheck).getTime();
71
+ if (elapsed < UPDATE_CHECK_INTERVAL_MS) {
72
+ // Skip - checked recently
73
+ return result;
74
+ }
75
+ }
76
+ // Update the check timestamp
77
+ versionFile.lastUpdateCheck = new Date().toISOString();
78
+ // Check hook versions
79
+ const hooksDir = `${(0, types_js_1.getEverstateDir)()}/hooks`;
80
+ const syncTodosPath = `${hooksDir}/sync-todos.js`;
81
+ // Update sync-todos.js if needed
82
+ if (shouldUpdateHook(syncTodosPath, types_js_1.HOOK_VERSIONS.syncTodos, versionFile.components.hooks.syncTodos)) {
83
+ try {
84
+ await updateSyncTodosHook(hooksDir, syncTodosPath);
85
+ versionFile.components.hooks.syncTodos = types_js_1.HOOK_VERSIONS.syncTodos;
86
+ result.updates.push(`sync-todos.js updated to v${types_js_1.HOOK_VERSIONS.syncTodos}`);
87
+ result.needsUpdate = true;
88
+ }
89
+ catch (error) {
90
+ result.errors.push(`Failed to update sync-todos.js: ${String(error)}`);
91
+ }
92
+ }
93
+ // Update TodoWrite hook registration if needed
94
+ const hookRegistrationUpdated = await ensureHookRegistration(syncTodosPath);
95
+ if (hookRegistrationUpdated) {
96
+ result.updates.push('TodoWrite hook registration updated');
97
+ result.needsUpdate = true;
98
+ }
99
+ // Update MCP proxy version in version file
100
+ const currentVersion = (0, version_js_1.getMcpProxyVersion)();
101
+ if (versionFile.components.mcpProxy !== currentVersion) {
102
+ versionFile.components.mcpProxy = currentVersion;
103
+ result.updates.push(`MCP proxy version recorded: ${currentVersion}`);
104
+ }
105
+ // Write updated version file
106
+ (0, version_js_1.writeVersionFile)(versionFile);
107
+ // Check for server-side updates (same as dashboard UI)
108
+ const apiKey = loadApiKey();
109
+ if (apiKey) {
110
+ try {
111
+ const serverUpdates = await checkServerUpdates(apiKey, versionFile.components);
112
+ if (serverUpdates.length > 0) {
113
+ console.error(`[Everstate] ${serverUpdates.length} update(s) available:`);
114
+ for (const update of serverUpdates) {
115
+ console.error(` - ${update.title} (${update.category} v${update.version})`);
116
+ }
117
+ console.error(` Run 'npx @everstateai/mcp doctor' to see details`);
118
+ }
119
+ }
120
+ catch {
121
+ // Silently ignore server check failures
122
+ }
123
+ }
124
+ // Log updates to stderr (MCP servers use stderr for logging)
125
+ if (result.updates.length > 0) {
126
+ console.error(`[Everstate] Auto-updated: ${result.updates.join(', ')}`);
127
+ }
128
+ if (result.errors.length > 0) {
129
+ console.error(`[Everstate] Update errors: ${result.errors.join(', ')}`);
130
+ }
131
+ }
132
+ catch (error) {
133
+ result.errors.push(`Auto-update check failed: ${String(error)}`);
134
+ }
135
+ return result;
136
+ }
137
+ /**
138
+ * Load API key from file
139
+ */
140
+ function loadApiKey() {
141
+ const keyPath = `${(0, types_js_1.getEverstateDir)()}/api-key`;
142
+ try {
143
+ if (fs.existsSync(keyPath)) {
144
+ return fs.readFileSync(keyPath, 'utf8').trim();
145
+ }
146
+ }
147
+ catch { }
148
+ return null;
149
+ }
150
+ /**
151
+ * Check for updates from the Everstate server
152
+ */
153
+ async function checkServerUpdates(apiKey, installedComponents) {
154
+ const response = await fetch(`${types_js_1.EVERSTATE_API_URL}/api/updates/check`, {
155
+ method: 'POST',
156
+ headers: {
157
+ 'Authorization': `Bearer ${apiKey}`,
158
+ 'Content-Type': 'application/json',
159
+ },
160
+ body: JSON.stringify({
161
+ installedVersions: {
162
+ mcpProxy: installedComponents.mcpProxy,
163
+ syncTodos: installedComponents.hooks.syncTodos,
164
+ },
165
+ }),
166
+ });
167
+ if (!response.ok) {
168
+ return [];
169
+ }
170
+ const data = await response.json();
171
+ return data.updates || [];
172
+ }
173
+ /**
174
+ * Determine if a hook needs updating
175
+ */
176
+ function shouldUpdateHook(hookPath, expectedVersion, installedVersion) {
177
+ // If file doesn't exist, needs update
178
+ if (!fs.existsSync(hookPath)) {
179
+ return true;
180
+ }
181
+ // Compare versions
182
+ if (compareVersions(installedVersion, expectedVersion) < 0) {
183
+ return true;
184
+ }
185
+ // Also check the file's embedded version
186
+ const fileVersion = extractHookVersion(hookPath);
187
+ if (!fileVersion || compareVersions(fileVersion, expectedVersion) < 0) {
188
+ return true;
189
+ }
190
+ return false;
191
+ }
192
+ /**
193
+ * Extract version from hook file
194
+ */
195
+ function extractHookVersion(filePath) {
196
+ try {
197
+ const content = fs.readFileSync(filePath, 'utf8');
198
+ const versionMatch = content.match(/VERSION:\s*(\d+\.\d+\.\d+)/i);
199
+ if (versionMatch) {
200
+ return versionMatch[1];
201
+ }
202
+ // Legacy format
203
+ const hookVMatch = content.match(/Hook\s+v(\d+)/i);
204
+ if (hookVMatch) {
205
+ return `${hookVMatch[1]}.0.0`;
206
+ }
207
+ return null;
208
+ }
209
+ catch {
210
+ return null;
211
+ }
212
+ }
213
+ /**
214
+ * Compare semver versions
215
+ */
216
+ function compareVersions(a, b) {
217
+ const aParts = a.split('.').map(Number);
218
+ const bParts = b.split('.').map(Number);
219
+ for (let i = 0; i < 3; i++) {
220
+ const aNum = aParts[i] || 0;
221
+ const bNum = bParts[i] || 0;
222
+ if (aNum < bNum)
223
+ return -1;
224
+ if (aNum > bNum)
225
+ return 1;
226
+ }
227
+ return 0;
228
+ }
229
+ /**
230
+ * Update the sync-todos hook
231
+ */
232
+ async function updateSyncTodosHook(hooksDir, hookPath) {
233
+ // Ensure directory exists
234
+ if (!fs.existsSync(hooksDir)) {
235
+ fs.mkdirSync(hooksDir, { recursive: true });
236
+ }
237
+ // Get the new hook content
238
+ const hookContent = (0, templates_js_1.getSyncTodosHook)();
239
+ // Backup existing hook if present
240
+ if (fs.existsSync(hookPath)) {
241
+ const backupPath = `${hookPath}.backup.${Date.now()}`;
242
+ fs.copyFileSync(hookPath, backupPath);
243
+ }
244
+ // Write new hook
245
+ fs.writeFileSync(hookPath, hookContent, { mode: 0o755 });
246
+ }
247
+ /**
248
+ * Ensure TodoWrite hook is registered in ~/.claude.json
249
+ */
250
+ async function ensureHookRegistration(syncTodosPath) {
251
+ const configPath = (0, types_js_1.getClaudeConfigPath)();
252
+ if (!fs.existsSync(configPath)) {
253
+ return false;
254
+ }
255
+ try {
256
+ const config = JSON.parse(fs.readFileSync(configPath, 'utf8'));
257
+ if (!config.hooks) {
258
+ config.hooks = {};
259
+ }
260
+ if (!config.hooks.PostToolUse) {
261
+ config.hooks.PostToolUse = [];
262
+ }
263
+ const postToolUse = config.hooks.PostToolUse;
264
+ // Find or create TodoWrite entry
265
+ let todoWriteEntry = postToolUse.find((e) => e.matcher === 'TodoWrite');
266
+ if (!todoWriteEntry) {
267
+ todoWriteEntry = { matcher: 'TodoWrite', hooks: [] };
268
+ postToolUse.push(todoWriteEntry);
269
+ }
270
+ // Check if sync-todos hook is registered with correct path
271
+ const expectedCommand = `node ${syncTodosPath}`;
272
+ const existingHook = todoWriteEntry.hooks.find((h) => h.command?.includes('sync-todos'));
273
+ if (!existingHook) {
274
+ // Add new hook
275
+ todoWriteEntry.hooks.push({
276
+ type: 'command',
277
+ command: expectedCommand,
278
+ timeout: 10,
279
+ });
280
+ fs.writeFileSync(configPath, JSON.stringify(config, null, 2) + '\n');
281
+ return true;
282
+ }
283
+ else if (existingHook.command !== expectedCommand) {
284
+ // Update existing hook with correct path
285
+ existingHook.command = expectedCommand;
286
+ fs.writeFileSync(configPath, JSON.stringify(config, null, 2) + '\n');
287
+ return true;
288
+ }
289
+ return false;
290
+ }
291
+ catch {
292
+ return false;
293
+ }
294
+ }
295
+ //# sourceMappingURL=auto-update.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-update.js","sourceRoot":"","sources":["../../src/setup/auto-update.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Doctor Command
3
+ *
4
+ * Diagnoses Everstate installation issues.
5
+ *
6
+ * Usage:
7
+ * npx @everstateai/mcp doctor
8
+ * npx @everstateai/mcp doctor --json
9
+ * npx @everstateai/mcp doctor --verbose
10
+ * npx @everstateai/mcp doctor --component hooks
11
+ */
12
+ import { DoctorOptions } from '../types.js';
13
+ export declare function doctor(options?: DoctorOptions): Promise<void>;
14
+ export declare function doctorCli(args: string[]): Promise<void>;
15
+ //# sourceMappingURL=doctor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/setup/commands/doctor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAIL,aAAa,EAGd,MAAM,aAAa,CAAC;AAIrB,wBAAsB,MAAM,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6BvE;AA0JD,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA8B7D"}