mcp-macos 2.1.5 → 4.0.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 (40) hide show
  1. package/README.md +7 -60
  2. package/dist/config/index.d.ts +5 -32
  3. package/dist/config/index.js +5 -112
  4. package/dist/config/index.js.map +1 -1
  5. package/dist/config/schema.d.ts +1 -144
  6. package/dist/config/schema.js +1 -34
  7. package/dist/config/schema.js.map +1 -1
  8. package/dist/index.d.ts +1 -6
  9. package/dist/index.js +5 -46
  10. package/dist/index.js.map +1 -1
  11. package/dist/server/handlers.js +1 -20
  12. package/dist/server/handlers.js.map +1 -1
  13. package/dist/server/server.d.ts +1 -18
  14. package/dist/server/server.js +1 -33
  15. package/dist/server/server.js.map +1 -1
  16. package/dist/types/index.d.ts +1 -5
  17. package/dist/utils/errorHandling.js +1 -1
  18. package/dist/utils/errorHandling.js.map +1 -1
  19. package/package.json +3 -9
  20. package/dist/server/promptAbstractions.d.ts +0 -74
  21. package/dist/server/promptAbstractions.js +0 -150
  22. package/dist/server/promptAbstractions.js.map +0 -1
  23. package/dist/server/prompts.d.ts +0 -8
  24. package/dist/server/prompts.js +0 -480
  25. package/dist/server/prompts.js.map +0 -1
  26. package/dist/server/transports/http/auth.d.ts +0 -34
  27. package/dist/server/transports/http/auth.js +0 -148
  28. package/dist/server/transports/http/auth.js.map +0 -1
  29. package/dist/server/transports/http/health.d.ts +0 -35
  30. package/dist/server/transports/http/health.js +0 -93
  31. package/dist/server/transports/http/health.js.map +0 -1
  32. package/dist/server/transports/http/index.d.ts +0 -43
  33. package/dist/server/transports/http/index.js +0 -147
  34. package/dist/server/transports/http/index.js.map +0 -1
  35. package/dist/server/transports/http/middleware.d.ts +0 -53
  36. package/dist/server/transports/http/middleware.js +0 -133
  37. package/dist/server/transports/http/middleware.js.map +0 -1
  38. package/dist/types/prompts.d.ts +0 -84
  39. package/dist/types/prompts.js +0 -6
  40. package/dist/types/prompts.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/server/handlers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAM1D,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,WAAW,GACZ,MAAM,cAAc,CAAC;AAEtB;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAc;IAC7C,sCAAsC;IACtC,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;QAC1D,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,GAAG,IAAI,CAAC,SAAS,CAAC;YAChB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,mBAAmB;YAC1B,SAAS,EAAE,KAAK,CAAC,MAAM;YACvB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;SAChC,CAAC,IAAI,CACP,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,6BAA6B;IAC7B,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAChE,cAAc,CACZ,OAAO,CAAC,MAAM,CAAC,IAAI,EAClB,OAAO,CAAC,MAAM,CAAC,SAGK,IAAI,EAAE,CAC5B,CACF,CAAC;IAEF,wCAAwC;IACxC,MAAM,CAAC,iBAAiB,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;QAC9D,OAAO,EAAE,WAAW;KACrB,CAAC,CAAC,CAAC;IAEJ,wCAAwC;IACxC,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QACjE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;QAEjD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QAED,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAEnD,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO,mBAAmB,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/server/handlers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAO1D;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAc;IAC7C,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;QAC1D,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,GAAG,IAAI,CAAC,SAAS,CAAC;YAChB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,mBAAmB;YAC1B,SAAS,EAAE,KAAK,CAAC,MAAM;YACvB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;SAChC,CAAC,IAAI,CACP,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAChE,cAAc,CACZ,OAAO,CAAC,MAAM,CAAC,IAAI,EAClB,OAAO,CAAC,MAAM,CAAC,SAGK,IAAI,EAAE,CAC5B,CACF,CAAC;AACJ,CAAC"}
@@ -1,28 +1,11 @@
1
1
  /**
2
2
  * server/server.ts
3
- * Server configuration and startup logic
3
+ * MCP server factory
4
4
  */
5
5
  import { Server } from '@modelcontextprotocol/sdk/server/index.js';
6
- import type { ServerConfig } from '../types/index.js';
7
- /**
8
- * Server configuration interface for createServer
9
- * Accepts either basic ServerConfig or FullServerConfig (which extends it)
10
- */
11
6
  interface CreateServerConfig {
12
7
  name: string;
13
8
  version: string;
14
9
  }
15
- /**
16
- * Creates and configures an MCP server instance
17
- * @param config - Server configuration (basic or full)
18
- * @returns Configured server instance
19
- */
20
10
  export declare function createServer(config: CreateServerConfig): Server;
21
- /**
22
- * Starts the MCP server with stdio transport
23
- * @deprecated Use index.ts entry point with loadConfig() for multi-transport support
24
- * @param config - Server configuration
25
- * @returns A promise that resolves when the server starts
26
- */
27
- export declare function startServer(config: ServerConfig): Promise<void>;
28
11
  export {};
@@ -1,21 +1,14 @@
1
1
  /**
2
2
  * server/server.ts
3
- * Server configuration and startup logic
3
+ * MCP server factory
4
4
  */
5
5
  import { Server } from '@modelcontextprotocol/sdk/server/index.js';
6
- import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
7
6
  import { registerHandlers } from './handlers.js';
8
7
  // Gracefully exit on EPIPE (broken pipe) when the MCP client disconnects.
9
- // Replaces the `exit-on-epipe` npm package with an inline equivalent.
10
8
  process.stdout?.on?.('error', (err) => {
11
9
  if (err.code === 'EPIPE')
12
10
  process.exit(0);
13
11
  });
14
- /**
15
- * Creates and configures an MCP server instance
16
- * @param config - Server configuration (basic or full)
17
- * @returns Configured server instance
18
- */
19
12
  export function createServer(config) {
20
13
  const server = new Server({
21
14
  name: config.name,
@@ -24,34 +17,9 @@ export function createServer(config) {
24
17
  capabilities: {
25
18
  resources: {},
26
19
  tools: {},
27
- prompts: {},
28
20
  },
29
21
  });
30
- // Register request handlers
31
22
  registerHandlers(server);
32
23
  return server;
33
24
  }
34
- /**
35
- * Starts the MCP server with stdio transport
36
- * @deprecated Use index.ts entry point with loadConfig() for multi-transport support
37
- * @param config - Server configuration
38
- * @returns A promise that resolves when the server starts
39
- */
40
- export async function startServer(config) {
41
- try {
42
- const server = createServer(config);
43
- const transport = new StdioServerTransport();
44
- // Handle process signals for graceful shutdown
45
- process.on('SIGINT', () => {
46
- process.exit(0);
47
- });
48
- process.on('SIGTERM', () => {
49
- process.exit(0);
50
- });
51
- await server.connect(transport);
52
- }
53
- catch {
54
- process.exit(1);
55
- }
56
- }
57
25
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,0EAA0E;AAC1E,sEAAsE;AACtE,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,GAA0B,EAAE,EAAE;IAC3D,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC;AAWH;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,MAA0B;IACrD,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB;QACE,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,OAAO,EAAE,MAAM,CAAC,OAAO;KACxB,EACD;QACE,YAAY,EAAE;YACZ,SAAS,EAAE,EAAE;YACb,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,EAAE;SACZ;KACF,CACF,CAAC;IAEF,4BAA4B;IAC5B,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAEzB,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAoB;IACpD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QACpC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAE7C,+CAA+C;QAC/C,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;YACxB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;YACzB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,0EAA0E;AAC1E,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,GAA0B,EAAE,EAAE;IAC3D,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC;AAOH,MAAM,UAAU,YAAY,CAAC,MAA0B;IACrD,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB;QACE,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,OAAO,EAAE,MAAM,CAAC,OAAO;KACxB,EACD;QACE,YAAY,EAAE;YACZ,SAAS,EAAE,EAAE;YACb,KAAK,EAAE,EAAE;SACV;KACF,CACF,CAAC;IAEF,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAEzB,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -258,8 +258,4 @@ export interface ContactsToolArgs extends BaseToolArgs {
258
258
  limit?: number;
259
259
  offset?: number;
260
260
  }
261
- /**
262
- * Prompt-related type exports for consumers that need to interact with the
263
- * structured MCP prompt registry.
264
- */
265
- export type { DailyTaskOrganizerArgs, PromptArgsByName, PromptArgumentDefinition, PromptMessage, PromptMessageContent, PromptMetadata, PromptName, PromptResponse, PromptTemplate, ReminderReviewAssistantArgs, SmartReminderCreatorArgs, WeeklyPlanningWorkflowArgs, } from './prompts.js';
261
+ export {};
@@ -31,7 +31,7 @@ export function createCliPermissionHint(domain) {
31
31
  * Includes the System Settings deep-link URL for FDA.
32
32
  */
33
33
  export function createFdaHint(dbName) {
34
- return `Grant Full Disk Access to your terminal app (or the actual node binary for LaunchAgent) in System Settings > Privacy & Security > Full Disk Access. Open settings: ${SYSTEM_SETTINGS.FULL_DISK_ACCESS} (${dbName} database)`;
34
+ return `Grant Full Disk Access to your terminal app (or the actual node binary if running headless) in System Settings > Privacy & Security > Full Disk Access. Open settings: ${SYSTEM_SETTINGS.FULL_DISK_ACCESS} (${dbName} database)`;
35
35
  }
36
36
  /**
37
37
  * Creates a user-friendly error message for known JXA failure modes.
@@ -1 +1 @@
1
- {"version":3,"file":"errorHandling.js","sourceRoot":"","sources":["../../src/utils/errorHandling.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errorHandling.js","sourceRoot":"","sources":["../../src/utils/errorHandling.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "mcp-macos",
3
- "version": "2.1.5",
4
- "description": "MCP server that provides native integration with Apple Reminders, Calendar, Notes, Mail, and Messages on macOS.",
3
+ "version": "4.0.0",
4
+ "description": "MCP server for Reminders, Calendar, Notes, Mail, Messages, and Contacts on macOS.",
5
5
  "author": "Kyle Jensen",
6
6
  "contributors": [
7
7
  "Frad Lee <https://frad.me>"
@@ -55,7 +55,6 @@
55
55
  "test": "NODE_NO_WARNINGS=1 jest",
56
56
  "test:e2e": "pnpm build && node --import tsx/esm --test --test-concurrency=1 tests/e2e/functional.test.mts",
57
57
  "test:e2e:functional": "pnpm build && node --import tsx/esm --test --test-concurrency=1 tests/e2e/functional.test.mts",
58
- "test:e2e:http": "pnpm build && node --import tsx/esm --test --test-concurrency=1 tests/e2e/http-transport.test.mts",
59
58
  "test:e2e:all": "pnpm build && node --import tsx/esm --test --test-concurrency=1 tests/e2e/*.test.mts",
60
59
  "lint": "pnpm exec biome check --write --unsafe && pnpm exec tsc --noEmit --project tsconfig.json",
61
60
  "postinstall": "node -e \"process.platform === 'darwin' && require('child_process').execSync('node scripts/build-swift.mjs', {stdio: 'inherit'})\"",
@@ -68,9 +67,6 @@
68
67
  },
69
68
  "dependencies": {
70
69
  "@modelcontextprotocol/sdk": "^1.26.0",
71
- "express": "^5.2.1",
72
- "express-rate-limit": "^8.2.1",
73
- "jose": "^6.1.3",
74
70
  "zod": "^4.3.6"
75
71
  },
76
72
  "devDependencies": {
@@ -78,16 +74,14 @@
78
74
  "@biomejs/biome": "2.3.15",
79
75
  "@semantic-release/changelog": "^6.0.3",
80
76
  "@semantic-release/git": "^10.0.1",
81
- "@types/express": "^5.0.6",
82
77
  "@types/jest": "^30.0.0",
83
78
  "@types/node": "^25.2.3",
84
- "@types/supertest": "^6.0.3",
85
79
  "babel-jest": "^30.2.0",
86
80
  "tsx": "^4.21.0",
87
81
  "babel-plugin-transform-import-meta": "^2.3.3",
88
82
  "jest": "^30.2.0",
83
+ "jest-environment-node": "^30.2.0",
89
84
  "semantic-release": "^25.0.3",
90
- "supertest": "^7.2.2",
91
85
  "ts-jest": "^29.4.6",
92
86
  "typescript": "^5.9.3"
93
87
  },
@@ -1,74 +0,0 @@
1
- /**
2
- * @fileoverview Shared abstractions for prompt templates
3
- * @module server/promptAbstractions
4
- * @description Output formats and constraints shared across all prompt templates
5
- * Provides consistent behavior for action execution based on confidence thresholds
6
- */
7
- /**
8
- * Standard confidence system constraints
9
- * Decision priority: (1) If scope is ambiguous → confirm, (2) Then apply confidence thresholds
10
- */
11
- export declare const CONFIDENCE_CONSTRAINTS: string[];
12
- /**
13
- * Standard note formatting constraints (compressed from 14 lines to 5 lines)
14
- */
15
- export declare const NOTE_FORMATTING_CONSTRAINTS: string[];
16
- /**
17
- * Standard batching and idempotency constraints
18
- */
19
- export declare const BATCHING_CONSTRAINTS: string[];
20
- export declare const TASK_BATCHING_CONSTRAINTS: string[];
21
- /**
22
- * Standard calibration guidance for overwhelming workloads
23
- */
24
- export declare const WORKLOAD_CALIBRATION: string[];
25
- /**
26
- * Standard calibration for missing context
27
- */
28
- export declare const CONTEXT_CALIBRATION: string[];
29
- /**
30
- * Apple Reminders limitations reminder
31
- */
32
- export declare const APPLE_REMINDERS_LIMITATIONS: string[];
33
- /**
34
- * Core constraints applied to all prompts
35
- */
36
- export declare const CORE_CONSTRAINTS: string[];
37
- /**
38
- * Deep work time block execution details (trigger rules moved to TIME_BLOCK_CREATION_CONSTRAINTS)
39
- */
40
- export declare const DEEP_WORK_CONSTRAINTS: string[];
41
- /**
42
- * Shallow tasks time block creation guidelines
43
- * Encompasses all non-deep-work activities: quick wins, routine tasks, administrative work
44
- */
45
- export declare const SHALLOW_TASKS_CONSTRAINTS: string[];
46
- /**
47
- * Daily capacity and workload balancing constraints
48
- * Includes implicit 20% buffer time allocation
49
- */
50
- export declare const DAILY_CAPACITY_CONSTRAINTS: string[];
51
- /**
52
- * Time format specification (single source of truth)
53
- * Format includes explicit timezone offset to prevent ambiguity in containerized environments
54
- */
55
- export declare const TIME_FORMAT_SPEC = "YYYY-MM-DD HH:mm:ss\u00B1HH:MM (with explicit timezone offset, e.g., \"2025-11-17 14:00:00-05:00\" for 2PM EST)";
56
- /**
57
- * Time block creation strict rules (includes trigger conditions from former DEEP_WORK_CONSTRAINTS)
58
- */
59
- export declare const TIME_BLOCK_CREATION_CONSTRAINTS: string[];
60
- /**
61
- * Standard action queue output format
62
- */
63
- export declare const getActionQueueFormat: (_currentDate: string) => string[];
64
- /**
65
- * Standard verification log format
66
- */
67
- export declare const getVerificationLogFormat: (currentDate: string) => string;
68
- /**
69
- * Build standard output format sections
70
- */
71
- export declare const buildStandardOutputFormat: (currentDate: string) => {
72
- actionQueue: string[];
73
- verificationLog: string;
74
- };
@@ -1,150 +0,0 @@
1
- /**
2
- * @fileoverview Shared abstractions for prompt templates
3
- * @module server/promptAbstractions
4
- * @description Output formats and constraints shared across all prompt templates
5
- * Provides consistent behavior for action execution based on confidence thresholds
6
- */
7
- /**
8
- * Standard confidence system constraints
9
- * Decision priority: (1) If scope is ambiguous → confirm, (2) Then apply confidence thresholds
10
- */
11
- export const CONFIDENCE_CONSTRAINTS = [
12
- 'Assess confidence levels for each potential action (high >80%, medium 60-80%, low <60%).',
13
- 'Decision priority: First check if scope is ambiguous (if yes, request confirmation). Then apply confidence thresholds for clear-scope actions.',
14
- 'For high-confidence actions (>80%), immediately call the tool to execute. For medium-confidence actions, provide recommendations in tool call format. For low-confidence actions, ask for user confirmation.',
15
- 'Provide brief rationale for medium-confidence decisions before taking action.',
16
- ];
17
- /**
18
- * Standard note formatting constraints (compressed from 14 lines to 5 lines)
19
- */
20
- export const NOTE_FORMATTING_CONSTRAINTS = [
21
- 'Existing reminders: ONLY edit notes when ALL conditions met: (a) adding essential info (duration/links), (b) confidence >80%, (c) essential for completion, (d) user has not objected.',
22
- 'New reminders: Freely add execution context as long as formatting rules below are followed.',
23
- 'Allowed keywords (one per line + plain text): See: [reference/URL], Note: [brief context], Duration: [time estimate].',
24
- 'Forbidden syntax: No markdown (no "- [ ]", "**bold**", "# headers", etc.). Apple Reminders does NOT render markdown.',
25
- 'Correct format: Use "-" for bullets, "\\n" for line breaks, plain text only.',
26
- ];
27
- /**
28
- * Standard batching and idempotency constraints
29
- */
30
- export const BATCHING_CONSTRAINTS = [
31
- 'Run idempotency checks before creating anything: search for likely duplicates by normalized title (lowercase, trimmed, punctuation removed). Prefer updating an existing reminder over creating a duplicate.',
32
- 'Batch tool calls when executing multiple changes to reduce overhead and keep actions atomic by concern (e.g., all creates, then updates).',
33
- ];
34
- export const TASK_BATCHING_CONSTRAINTS = [
35
- '**Task batching strategy**: Group similar tasks together and complete in dedicated time blocks to minimize context switching.',
36
- ' - Examples: Batch all code reviews together, all emails together, all meetings together',
37
- ' - Naming pattern: "Code Review Batch — 3 PRs", "Email Processing — Inbox Zero", "Admin Batch — 5 tasks"',
38
- ' - Reduces context switching by 60-80% compared to handling tasks individually',
39
- ' - Schedule batches: Similar cognitive requirements, tools, or workflows = good batch candidates',
40
- ' - Avoid: Batching unrelated tasks that require different mental modes',
41
- ];
42
- /**
43
- * Standard calibration guidance for overwhelming workloads
44
- */
45
- export const WORKLOAD_CALIBRATION = [
46
- 'When workload appears overwhelming, prioritize critical path tasks (using urgent due dates and important lists) and suggest deferring non-essential items.',
47
- 'If multiple similar tasks exist, recommend consolidation or batching strategies.',
48
- ];
49
- /**
50
- * Standard calibration for missing context
51
- */
52
- export const CONTEXT_CALIBRATION = [
53
- 'When creating reminders for unknown tasks, use clear, descriptive titles and suggest appropriate list placement.',
54
- ];
55
- /**
56
- * Apple Reminders limitations reminder
57
- */
58
- export const APPLE_REMINDERS_LIMITATIONS = [
59
- 'Remember: Apple Reminders does not support priority fields. Use due date urgency and list importance to convey task importance.',
60
- ];
61
- /**
62
- * Core constraints applied to all prompts
63
- */
64
- export const CORE_CONSTRAINTS = [
65
- ...CONFIDENCE_CONSTRAINTS,
66
- ...NOTE_FORMATTING_CONSTRAINTS,
67
- ...BATCHING_CONSTRAINTS,
68
- ];
69
- /**
70
- * Deep work time block execution details (trigger rules moved to TIME_BLOCK_CREATION_CONSTRAINTS)
71
- */
72
- export const DEEP_WORK_CONSTRAINTS = [
73
- '**Deep work execution details** (apply when TIME_BLOCK_CREATION_CONSTRAINTS triggers are met):',
74
- ' - Time block length: Minimum 60 minutes, with 90-120 minutes recommended to sustain flow. Split anything beyond 120 minutes into multiple sessions.',
75
- ' - Flow state entry: Takes ~20 minutes to enter deep focus. Longer blocks (2 hours) maximize productive time in flow state.',
76
- ' - Scheduling: Peak energy hours (9am-12pm). Plan 2 blocks per day (e.g., two 2-hour sessions = 4 hours total).',
77
- ' - Break intervals: 15-30 minutes between blocks. Longer breaks (60+ minutes) after 4 hours of deep work.',
78
- ' - Clear objectives: Each block has specific goal in notes.',
79
- ' - Anchor to due times: Start time = due time - duration. If past, move forward.',
80
- ' - Naming pattern: "Deep Work — [Project Name]" (for tasks meeting deep work criteria).',
81
- ];
82
- /**
83
- * Shallow tasks time block creation guidelines
84
- * Encompasses all non-deep-work activities: quick wins, routine tasks, administrative work
85
- */
86
- export const SHALLOW_TASKS_CONSTRAINTS = [
87
- '**Shallow tasks time block guidelines**:',
88
- ' - Time block length: 15-60 minutes for all non-deep-work activities including quick wins, routine tasks, and administrative work',
89
- ' - Task examples: Email processing, status updates, meeting preparation, quick code reviews, administrative paperwork, scheduling, light coordination, quick fixes',
90
- ' - Scheduling strategy: Fill gaps between deep work blocks, schedule during lower energy periods (typically 2-4pm), batch similar tasks together',
91
- ' - Batching encouraged: Group similar shallow tasks into single blocks when possible (e.g., "Email & Admin" combining multiple small tasks)',
92
- ' - Calendar naming pattern: "Shallow Task — [Task Description]" or batch as "Shallow Tasks — [Category]" (e.g., "Shallow Tasks — Admin & Email")',
93
- ' - Energy awareness: Schedule during post-lunch dip, end-of-day, or gaps between meetings when cognitive capacity is lower',
94
- ];
95
- /**
96
- * Daily capacity and workload balancing constraints
97
- * Includes implicit 20% buffer time allocation
98
- */
99
- export const DAILY_CAPACITY_CONSTRAINTS = [
100
- '**Daily capacity limits and workload balancing**:',
101
- ' - Deep Work maximum: 4 hours per day (typically 2-3 blocks of 60-90 minutes). Research shows this is the sustainable maximum for focused cognitive work',
102
- ' - Implicit buffer allocation: When scheduling, automatically leave ~20% of working hours unscheduled (approximately 1.5-2 hours in 8-hour workday) as gaps between blocks and at day end',
103
- ' - Shallow Tasks fill remaining time after deep work allocation and implicit buffer time',
104
- ' - Total validation: Deep Work + Shallow Tasks + implicit buffer (~20%) should equal working hours (typically 8 hours)',
105
- ' - Energy alignment: Schedule deep work during peak energy (9am-12pm), shallow tasks during lower energy periods (2-4pm), with natural transition gaps',
106
- ' - Warn when overcommitted: If total scheduled work exceeds available hours or deep work exceeds 4 hours, flag the issue and suggest prioritization',
107
- ' - Buffer time handling: Do not create explicit "Buffer Time" calendar events. Instead, leave natural gaps (15-30 minutes) between major blocks for transitions, unexpected work, and flexibility',
108
- ];
109
- /**
110
- * Time format specification (single source of truth)
111
- * Format includes explicit timezone offset to prevent ambiguity in containerized environments
112
- */
113
- export const TIME_FORMAT_SPEC = 'YYYY-MM-DD HH:mm:ss±HH:MM (with explicit timezone offset, e.g., "2025-11-17 14:00:00-05:00" for 2PM EST)';
114
- /**
115
- * Time block creation strict rules (includes trigger conditions from former DEEP_WORK_CONSTRAINTS)
116
- */
117
- export const TIME_BLOCK_CREATION_CONSTRAINTS = [
118
- '**Time block creation triggers**: CREATE calendar_events time blocks when tasks meet ANY criteria:',
119
- ' - Task has duration estimate ≥60 minutes with due date today (applies DEEP_WORK_CONSTRAINTS for execution details)',
120
- ' - Task title suggests cognitively demanding work (开发, 设计, 分析, 规划, 重构, 架构) with duration ≥60min',
121
- ' - Multiple related tasks with explicit times due today, totaling ≥60 minutes, that can be batched',
122
- ' - Task notes mention "deep work", "focused time", "uninterrupted"',
123
- ' - Task explicitly marked as requiring focused/uninterrupted time',
124
- ' - Task benefits from calendar visibility to prevent double-booking',
125
- ` - Always use ${TIME_FORMAT_SPEC} format for startDate and endDate (e.g., "2025-11-04 14:00:00-05:00" for 2PM EST)`,
126
- ' - Anchor calendar events to reminder due timestamps by subtracting duration to determine startDate. If start would be in the past, move forward but preserve duration.',
127
- ' - When multiple tasks share a project, use single block with shared objective in notes.',
128
- ' - For confidence levels and execution: Follow standard CONFIDENCE_CONSTRAINTS (>80% execute, 60-80% recommend, <60% confirm). Apply DEEP_WORK_CONSTRAINTS for block sizing and scheduling.',
129
- ];
130
- /**
131
- * Standard action queue output format
132
- */
133
- export const getActionQueueFormat = (_currentDate) => [
134
- '### Action queue — prioritized list of actions organized by confidence level (high/medium/low) and impact. IMPORTANT: High-confidence actions (>80%) should be EXECUTED immediately using MCP tool calls, not just described. Each action should specify:',
135
- ' - HIGH CONFIDENCE (>80%): Execute using tool calls. MEDIUM CONFIDENCE (60-80%): Provide recommendations in tool call format. LOW CONFIDENCE (<60%): Text description only, ask for confirmation.',
136
- ' - Each action must include: confidence level, action type (create/update/recommendation), exact properties (title, list, dueDate, note, url if applicable), and brief rationale',
137
- ` - Use ${TIME_FORMAT_SPEC} format for dueDate (e.g., "2025-11-04 18:00:00-05:00").`,
138
- ];
139
- /**
140
- * Standard verification log format
141
- */
142
- export const getVerificationLogFormat = (currentDate) => `### Verification log — bullet list confirming that each executed due date marked "today" uses ${currentDate} in the tool call output and persisted value (include reminder title + due date).`;
143
- /**
144
- * Build standard output format sections
145
- */
146
- export const buildStandardOutputFormat = (currentDate) => ({
147
- actionQueue: getActionQueueFormat(currentDate),
148
- verificationLog: getVerificationLogFormat(currentDate),
149
- });
150
- //# sourceMappingURL=promptAbstractions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"promptAbstractions.js","sourceRoot":"","sources":["../../src/server/promptAbstractions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,0FAA0F;IAC1F,gJAAgJ;IAChJ,8MAA8M;IAC9M,+EAA+E;CAChF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,wLAAwL;IACxL,6FAA6F;IAC7F,uHAAuH;IACvH,sHAAsH;IACtH,8EAA8E;CAC/E,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,8MAA8M;IAC9M,2IAA2I;CAC5I,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,+HAA+H;IAC/H,2FAA2F;IAC3F,2GAA2G;IAC3G,iFAAiF;IACjF,mGAAmG;IACnG,yEAAyE;CAC1E,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,4JAA4J;IAC5J,kFAAkF;CACnF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,kHAAkH;CACnH,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,iIAAiI;CAClI,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,GAAG,sBAAsB;IACzB,GAAG,2BAA2B;IAC9B,GAAG,oBAAoB;CACxB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,gGAAgG;IAChG,uJAAuJ;IACvJ,8HAA8H;IAC9H,kHAAkH;IAClH,4GAA4G;IAC5G,8DAA8D;IAC9D,mFAAmF;IACnF,0FAA0F;CAC3F,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,0CAA0C;IAC1C,oIAAoI;IACpI,qKAAqK;IACrK,mJAAmJ;IACnJ,8IAA8I;IAC9I,mJAAmJ;IACnJ,6HAA6H;CAC9H,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,mDAAmD;IACnD,2JAA2J;IAC3J,4LAA4L;IAC5L,2FAA2F;IAC3F,yHAAyH;IACzH,yJAAyJ;IACzJ,sJAAsJ;IACtJ,oMAAoM;CACrM,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAC3B,0GAA0G,CAAC;AAE7G;;GAEG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG;IAC7C,oGAAoG;IACpG,sHAAsH;IACtH,kGAAkG;IAClG,qGAAqG;IACrG,qEAAqE;IACrE,oEAAoE;IACpE,sEAAsE;IACtE,kBAAkB,gBAAgB,mFAAmF;IACrH,0KAA0K;IAC1K,2FAA2F;IAC3F,8LAA8L;CAC/L,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,YAAoB,EAAY,EAAE,CAAC;IACtE,2PAA2P;IAC3P,oMAAoM;IACpM,mLAAmL;IACnL,WAAW,gBAAgB,0DAA0D;CACtF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,WAAmB,EAAU,EAAE,CACtE,iGAAiG,WAAW,mFAAmF,CAAC;AAElM;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,WAAmB,EAInB,EAAE,CAAC,CAAC;IACJ,WAAW,EAAE,oBAAoB,CAAC,WAAW,CAAC;IAC9C,eAAe,EAAE,wBAAwB,CAAC,WAAW,CAAC;CACvD,CAAC,CAAC"}
@@ -1,8 +0,0 @@
1
- /**
2
- * server/prompts.ts
3
- * Central registry for MCP prompts and their runtime helpers
4
- */
5
- import type { PromptMetadata, PromptName, PromptResponse, PromptTemplate } from '../types/prompts.js';
6
- export declare const PROMPT_LIST: PromptMetadata[];
7
- export declare const getPromptDefinition: (name: string) => PromptTemplate<PromptName> | undefined;
8
- export declare const buildPromptResponse: <Name extends PromptName>(template: PromptTemplate<Name>, rawArgs: Record<string, unknown> | null | undefined) => PromptResponse;