@noteplanco/noteplan-mcp 1.1.18 → 1.1.21

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 (72) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +46 -0
  3. package/dist/noteplan/file-reader.d.ts.map +1 -1
  4. package/dist/noteplan/file-reader.js +131 -19
  5. package/dist/noteplan/file-reader.js.map +1 -1
  6. package/dist/noteplan/file-writer.d.ts.map +1 -1
  7. package/dist/noteplan/file-writer.js +3 -1
  8. package/dist/noteplan/file-writer.js.map +1 -1
  9. package/dist/noteplan/file-writer.test.js +5 -0
  10. package/dist/noteplan/file-writer.test.js.map +1 -1
  11. package/dist/noteplan/frontmatter-parser.d.ts +5 -2
  12. package/dist/noteplan/frontmatter-parser.d.ts.map +1 -1
  13. package/dist/noteplan/frontmatter-parser.js +106 -32
  14. package/dist/noteplan/frontmatter-parser.js.map +1 -1
  15. package/dist/noteplan/frontmatter-parser.test.js +216 -0
  16. package/dist/noteplan/frontmatter-parser.test.js.map +1 -1
  17. package/dist/noteplan/sqlite-writer.d.ts.map +1 -1
  18. package/dist/noteplan/sqlite-writer.js +10 -0
  19. package/dist/noteplan/sqlite-writer.js.map +1 -1
  20. package/dist/noteplan/unified-store.d.ts.map +1 -1
  21. package/dist/noteplan/unified-store.js +5 -3
  22. package/dist/noteplan/unified-store.js.map +1 -1
  23. package/dist/server.d.ts.map +1 -1
  24. package/dist/server.js +108 -13
  25. package/dist/server.js.map +1 -1
  26. package/dist/tools/notes.d.ts +2 -0
  27. package/dist/tools/notes.d.ts.map +1 -1
  28. package/dist/tools/notes.js +32 -9
  29. package/dist/tools/notes.js.map +1 -1
  30. package/dist/tools/notes.test.js +62 -4
  31. package/dist/tools/notes.test.js.map +1 -1
  32. package/dist/tools/plugins.d.ts +17 -3
  33. package/dist/tools/plugins.d.ts.map +1 -1
  34. package/dist/tools/plugins.js +259 -69
  35. package/dist/tools/plugins.js.map +1 -1
  36. package/dist/tools/tasks.d.ts +131 -0
  37. package/dist/tools/tasks.d.ts.map +1 -1
  38. package/dist/tools/tasks.js +203 -0
  39. package/dist/tools/tasks.js.map +1 -1
  40. package/dist/tools/tasks.test.d.ts +2 -0
  41. package/dist/tools/tasks.test.d.ts.map +1 -0
  42. package/dist/tools/tasks.test.js +51 -0
  43. package/dist/tools/tasks.test.js.map +1 -0
  44. package/dist/utils/confirmation-tokens.d.ts.map +1 -1
  45. package/dist/utils/confirmation-tokens.js +6 -0
  46. package/dist/utils/confirmation-tokens.js.map +1 -1
  47. package/dist/utils/confirmation-tokens.test.js +42 -0
  48. package/dist/utils/confirmation-tokens.test.js.map +1 -1
  49. package/dist/utils/filename-normalize.d.ts +21 -0
  50. package/dist/utils/filename-normalize.d.ts.map +1 -0
  51. package/dist/utils/filename-normalize.js +32 -0
  52. package/dist/utils/filename-normalize.js.map +1 -0
  53. package/dist/utils/filename-normalize.test.d.ts +2 -0
  54. package/dist/utils/filename-normalize.test.d.ts.map +1 -0
  55. package/dist/utils/filename-normalize.test.js +63 -0
  56. package/dist/utils/filename-normalize.test.js.map +1 -0
  57. package/dist/utils/folder-matcher.d.ts.map +1 -1
  58. package/dist/utils/folder-matcher.js +10 -0
  59. package/dist/utils/folder-matcher.js.map +1 -1
  60. package/dist/utils/folder-matcher.test.d.ts +2 -0
  61. package/dist/utils/folder-matcher.test.d.ts.map +1 -0
  62. package/dist/utils/folder-matcher.test.js +37 -0
  63. package/dist/utils/folder-matcher.test.js.map +1 -0
  64. package/dist/utils/server-config.d.ts +9 -0
  65. package/dist/utils/server-config.d.ts.map +1 -0
  66. package/dist/utils/server-config.js +17 -0
  67. package/dist/utils/server-config.js.map +1 -0
  68. package/dist/utils/server-config.test.d.ts +2 -0
  69. package/dist/utils/server-config.test.d.ts.map +1 -0
  70. package/dist/utils/server-config.test.js +51 -0
  71. package/dist/utils/server-config.test.js.map +1 -0
  72. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"unified-store.js","sourceRoot":"","sources":["../../src/noteplan/unified-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unified-store.js","sourceRoot":"","sources":["../../src/noteplan/unified-store.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAu5BnE,wBAAgB,YAAY,IAAI,MAAM,CA+7DrC;AAGD,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CA4BjD"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AA46BnE,wBAAgB,YAAY,IAAI,MAAM,CA0gErC;AAGD,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CA4BjD"}
package/dist/server.js CHANGED
@@ -24,6 +24,7 @@ import * as templateTools from './tools/templates.js';
24
24
  import * as attachmentTools from './tools/attachments.js';
25
25
  import { parseFlexibleDate } from './utils/date-utils.js';
26
26
  import { upgradeMessage, getNotePlanVersion, getMcpServerVersion, MIN_BUILD_ADVANCED_FEATURES, MIN_BUILD_CREATE_BACKUP } from './utils/version.js';
27
+ import { isReadOnly, isSkipDryRun } from './utils/server-config.js';
27
28
  import { initSqlite } from './noteplan/sqlite-loader.js';
28
29
  import { getDatabase, getDatabasePath, listSpaces as listSpacesFromDb } from './noteplan/sqlite-reader.js';
29
30
  const __filename = fileURLToPath(import.meta.url);
@@ -364,6 +365,23 @@ function compactToolDefinition(tool, maxDescLength = 120) {
364
365
  };
365
366
  }
366
367
  function getToolAnnotations(toolName) {
368
+ const toolTitles = {
369
+ noteplan_get_notes: 'Get Notes',
370
+ noteplan_manage_note: 'Manage Note',
371
+ noteplan_edit_content: 'Edit Content',
372
+ noteplan_paragraphs: 'Paragraphs & Tasks',
373
+ noteplan_search: 'Search',
374
+ noteplan_folders: 'Folders & Spaces',
375
+ noteplan_filters: 'Filters',
376
+ noteplan_eventkit: 'Calendar & Reminders',
377
+ noteplan_memory: 'Memory',
378
+ noteplan_ui: 'UI Control',
379
+ noteplan_plugins: 'Plugins',
380
+ noteplan_themes: 'Themes',
381
+ noteplan_embeddings: 'Embeddings',
382
+ noteplan_templates: 'Templates',
383
+ noteplan_attachments: 'Attachments',
384
+ };
367
385
  // Read-only tools
368
386
  const readOnlyTools = new Set([
369
387
  'noteplan_get_notes',
@@ -405,6 +423,7 @@ function getToolAnnotations(toolName) {
405
423
  'noteplan_templates',
406
424
  ]);
407
425
  return {
426
+ title: toolTitles[toolName] || toolName,
408
427
  readOnlyHint: readOnlyTools.has(toolName),
409
428
  destructiveHint: destructiveTools.has(toolName),
410
429
  idempotentHint: !nonIdempotentTools.has(toolName),
@@ -852,6 +871,7 @@ export function createServer() {
852
871
  '- Add tasks via `noteplan_paragraphs(action: add)` — the server auto-formats the task marker to match the user\'s NotePlan settings. Never write raw markers like `- [ ]` or `* [ ]`; just pass the task text.',
853
872
  '- Find tasks: `noteplan_paragraphs(action: search)` in one note, or `search_global` across all notes',
854
873
  '- Complete/update: `noteplan_paragraphs(action: complete/update)`',
874
+ '- Delete recurring: `noteplan_paragraphs(action: delete_recurring)` — deletes a task with @repeat tag and all its future occurrences in calendar notes',
855
875
  '- Use `heading` parameter to target a specific section (e.g., heading: "Tasks")',
856
876
  '',
857
877
  '## Destructive Operations',
@@ -909,6 +929,15 @@ export function createServer() {
909
929
  else {
910
930
  console.error('[noteplan-mcp] Space database: not found');
911
931
  }
932
+ // Log environment configuration
933
+ const readOnly = isReadOnly();
934
+ const skipDryRun = isSkipDryRun();
935
+ if (readOnly) {
936
+ console.error('[noteplan-mcp] Read-only mode: ENABLED (all write actions will be rejected)');
937
+ }
938
+ if (skipDryRun) {
939
+ console.error('[noteplan-mcp] Skip dry-run: ENABLED (confirmation tokens not required)');
940
+ }
912
941
  const toolDefinitions = [
913
942
  // ── Consolidated tools (16 — action/param-based dispatch) ──
914
943
  {
@@ -1064,7 +1093,7 @@ export function createServer() {
1064
1093
  },
1065
1094
  {
1066
1095
  name: 'noteplan_manage_note',
1067
- description: 'Manage notes: create, update, delete, move, restore, rename, or manage frontmatter properties.\n\nActions:\n- create: Create a project note (requires title). Set noteType="template" to create in @Templates with proper frontmatter. After creating a template, verify it with noteplan_templates(action: "render").\n- update: Replace note content (requires note ref via id/filename/title/date/query, content, fullReplace + confirmationToken)\n- delete/move/restore: Lifecycle ops (requires id or filename + dryRun/confirmationToken)\n- rename: Rename a note (accepts id, filename, title, or query to find the note + newTitle for the new name + dryRun/confirmationToken)\n- set_property/remove_property: Frontmatter (requires note ref via id/filename/title/date/query + key)',
1096
+ description: 'Manage notes: create, update, delete, move, restore, rename, or manage frontmatter properties.\n\nActions:\n- create: Create a project note (requires title). Creates immediately — NO dryRun/confirmationToken needed. Set noteType="template" to create in @Templates with proper frontmatter. After creating a template, verify it with noteplan_templates(action: "render").\n- update: Replace note content (requires note ref via id/filename/title/date/query, content, fullReplace + confirmationToken)\n- delete/move/restore: Lifecycle ops (requires id or filename + dryRun/confirmationToken)\n- rename: Rename a note (accepts id, filename, title, or query to find the note + newTitle for the new name + dryRun/confirmationToken)\n- set_property/remove_property: Frontmatter (requires note ref via id/filename/title/date/query + key)',
1068
1097
  inputSchema: {
1069
1098
  type: 'object',
1070
1099
  properties: {
@@ -1099,7 +1128,7 @@ export function createServer() {
1099
1128
  },
1100
1129
  folder: {
1101
1130
  type: 'string',
1102
- description: 'Folder path — used by create (smart matching built in)',
1131
+ description: 'Folder name or path without Notes/ prefix (e.g. "Projects" or "Work/Active") — used by create. Smart matching built in.',
1103
1132
  },
1104
1133
  create_new_folder: {
1105
1134
  type: 'boolean',
@@ -1137,7 +1166,7 @@ export function createServer() {
1137
1166
  },
1138
1167
  destinationFolder: {
1139
1168
  type: 'string',
1140
- description: 'Target folder — used by move, restore',
1169
+ description: 'Target folder without Notes/ prefix (e.g. "Projects" or "Work/Active") — used by move, restore',
1141
1170
  },
1142
1171
  newFilename: {
1143
1172
  type: 'string',
@@ -1165,7 +1194,7 @@ export function createServer() {
1165
1194
  },
1166
1195
  {
1167
1196
  name: 'noteplan_edit_content',
1168
- description: 'Edit note content. IMPORTANT: action values use snake_case.\n\nValid actions (exactly these strings):\n- "insert": Insert at position. Combine any position with heading="Section Name" to scope insertion to that section. position="start" + heading inserts right after the heading. position="end" + heading appends at end of the heading\'s section. position="after-heading" inserts right after a heading. position="in-section" appends at end of a heading\'s section. position="start" (no heading) inserts after frontmatter. position="at-line" inserts at a specific line number. position="end" (no heading) appends to note.\n- "append": Shorthand for insert at end. Supports heading="Section Name" to append at end of that section. Use date="today" to append to today\'s daily note.\n- "delete_lines": Delete a line range. Requires startLine + endLine (1-indexed). Use dryRun=true first, then confirmationToken to execute.\n- "edit_line": Edit a single line. Requires line (1-indexed) + content. Set content="" to clear a line.\n- "replace_lines": Replace a line range. Requires startLine + endLine + content. Use dryRun=true first, then confirmationToken to execute.\n\nTarget note via id, filename, title, date, or query. Calendar notes (date param) are auto-created if they don\'t exist yet. Always use tab characters for indentation.\n\nAdding tasks: When inserting a task, set type="task" and pass only the task text as content (e.g. content="Buy groceries", type="task"). Do NOT include raw markers like "* [ ]" or "- [ ]" in content the type parameter handles formatting to match the user\'s configured style. For checklists use type="checklist". For task lifecycle (complete, update, search), use noteplan_paragraphs instead.\n\nSchedule tasks with >YYYY-MM-DD. Link to notes with [[Note Name]]. Never add block IDs (^id).\n\nUse scheduleDate to auto-append >YYYY-MM-DD to content.',
1197
+ description: 'Edit note content. Actions use snake_case.\n\nActions:\n- "insert": Insert at position. Add heading="Section Name" to scope to a section. Positions: "start"+heading = after heading, "end"+heading = end of section, "after-heading" = after heading, "in-section" = end of section, "start" (no heading) = after frontmatter, "at-line" = specific line, "end" (no heading) = end of note.\n- "append": Insert at end. Supports heading param. Use date="today" for daily note.\n- "delete_lines": Delete line range (startLine + endLine, 1-indexed). Requires dryRun then confirmationToken.\n- "edit_line": Edit one line (line + content, 1-indexed). content="" clears line.\n- "replace_lines": Replace line range (startLine + endLine + content). Requires dryRun then confirmationToken.\n\nTarget note via id, filename, title, date, or query. Calendar notes auto-created. Use tabs for indentation.\n\nTasks: Set type="task", pass only text as content (e.g. "Buy groceries"). Do NOT include markers like "* [ ]" — type param handles formatting. type="checklist" for checklists. For task lifecycle use noteplan_paragraphs.\n\nSchedule: >YYYY-MM-DD or scheduleDate param. Links: [[Note Name]]. Never add ^id.\n\nFull content replace: use noteplan_manage_note(action: "update", fullReplace=true).',
1169
1198
  inputSchema: {
1170
1199
  type: 'object',
1171
1200
  properties: {
@@ -1272,14 +1301,14 @@ export function createServer() {
1272
1301
  },
1273
1302
  {
1274
1303
  name: 'noteplan_paragraphs',
1275
- description: 'Task lifecycle and paragraph inspection.\n\nParagraph actions:\n- get: Get note lines with metadata (requires filename). Returns line, lineIndex, content, type, etc. Supports types filter to return only specific paragraph types: base types (title, heading, bullet, text, quote, separator, empty), task/checklist by status (task, open-task, done-task, cancelled-task, scheduled-task, checklist, open-checklist, done-checklist, cancelled-checklist, scheduled-checklist). Use types=["open-task","open-checklist"] to get all open items.\n- search: Search for matching lines in a note (requires query + note ref via id/filename/title/date)\n\nTask actions:\n- search_global: Search tasks across all notes (requires query, supports "*" wildcard)\n- add: Add a task (requires target + content). Target is a date ("today", "tomorrow", "YYYY-MM-DD") for daily notes or a filename for project notes. Pass only the task text as content — formatting auto-matches user settings. Position+heading combos: position="start"+heading inserts right after the heading, position="end"+heading appends at end of that section, position="after-heading" inserts right after heading, position="in-section" appends at end of section. Default position is "end" (bottom of note). Use scheduleDate for >YYYY-MM-DD, [[Note Name]] to link, #tag for tags, @person for mentions.\n- complete: Mark task done (requires note ref via id/filename/title/date + lineIndex/line or taskQuery to find by text)\n- update: Update task content/status (requires note ref via id/filename/title/date + lineIndex or line)',
1304
+ description: 'Task lifecycle and paragraph inspection.\n\nParagraph actions:\n- get: Get note lines with metadata (requires note ref). Returns lineIndex, content, type. Filter with types param: base types (title, heading, bullet, text, quote, separator, empty), task/checklist by status (open-task, done-task, cancelled-task, scheduled-task, open-checklist, done-checklist, etc). types=["open-task","open-checklist"] gets all open items.\n- search: Search lines in a note (requires query + note ref)\n\nTask actions:\n- search_global: Search tasks across all notes (requires query, "*" for all)\n- add: Add task (requires target + content). target = date ("today", "YYYY-MM-DD") or filename. Pass only task text — formatting auto-matches user settings. Position+heading: "start"+heading = after heading, "end"+heading = end of section. Default "end" = bottom of note. scheduleDate for >YYYY-MM-DD, [[Note Name]] to link, #tag, @mention.\n- complete: Mark done (note ref + lineIndex/line or taskQuery)\n- update: Update content/status (note ref + lineIndex or line)',
1276
1305
  inputSchema: {
1277
1306
  type: 'object',
1278
1307
  properties: {
1279
1308
  action: {
1280
1309
  type: 'string',
1281
- enum: ['get', 'search', 'search_global', 'add', 'complete', 'update', 'list_actions'],
1282
- description: 'Action: get | search | search_global | add | complete | update | list_actions (discover all actions)',
1310
+ enum: ['get', 'search', 'search_global', 'add', 'complete', 'update', 'delete_recurring', 'list_actions'],
1311
+ description: 'Action: get | search | search_global | add | complete | update | delete_recurring | list_actions (discover all actions)',
1283
1312
  },
1284
1313
  id: {
1285
1314
  type: 'string',
@@ -1417,6 +1446,10 @@ export function createServer() {
1417
1446
  type: 'string',
1418
1447
  description: 'Cursor from previous page',
1419
1448
  },
1449
+ deleteSource: {
1450
+ type: 'boolean',
1451
+ description: 'Also delete the task from the source note (default: true) — used by delete_recurring',
1452
+ },
1420
1453
  },
1421
1454
  required: ['action'],
1422
1455
  },
@@ -1999,12 +2032,12 @@ export function createServer() {
1999
2032
  properties: {
2000
2033
  action: {
2001
2034
  type: 'string',
2002
- enum: ['list', 'list_available', 'create', 'delete', 'install', 'log', 'source', 'update_html', 'screenshot', 'list_actions'],
2003
- description: 'Action: list | list_available | create | delete | install | log | source | update_html | screenshot | list_actions (discover all actions)',
2035
+ enum: ['list', 'list_available', 'create', 'delete', 'install', 'log', 'source', 'update_html', 'update_json', 'screenshot', 'list_actions'],
2036
+ description: 'Action: list | list_available | create | delete | install | log | source | update_html | update_json | screenshot | list_actions (discover all actions)',
2004
2037
  },
2005
2038
  pluginId: {
2006
2039
  type: 'string',
2007
- description: 'Plugin ID — used by create, delete, install, log, source, update_html, screenshot',
2040
+ description: 'Plugin ID — used by create, delete, install, log, source, update_html, update_json, screenshot',
2008
2041
  },
2009
2042
  pluginName: {
2010
2043
  type: 'string',
@@ -2033,7 +2066,7 @@ export function createServer() {
2033
2066
  },
2034
2067
  autoLaunch: {
2035
2068
  type: 'boolean',
2036
- description: 'Auto-reload and run — used by create, update_html',
2069
+ description: 'Auto-reload and run — used by create, update_html, update_json',
2037
2070
  },
2038
2071
  patches: {
2039
2072
  type: 'array',
@@ -2047,6 +2080,10 @@ export function createServer() {
2047
2080
  },
2048
2081
  description: 'Find/replace patches — used by update_html',
2049
2082
  },
2083
+ updates: {
2084
+ type: 'object',
2085
+ description: 'Key-value pairs to set in plugin.json — used by update_json (e.g., {"plugin.author": "John", "plugin.version": "1.2.0"})',
2086
+ },
2050
2087
  query: {
2051
2088
  type: 'string',
2052
2089
  description: 'Filter/search — used by list, list_available, source',
@@ -2219,6 +2256,40 @@ export function createServer() {
2219
2256
  const registeredToolNames = annotatedToolDefinitions.map((tool) => tool.name);
2220
2257
  const registeredToolNameSet = new Set(registeredToolNames);
2221
2258
  const compactToolDefinitions = annotatedToolDefinitions.map((tool) => compactToolDefinition(tool));
2259
+ // ── Write actions map for read-only mode guard and description hints ──
2260
+ const WRITE_ACTIONS_MAP = {
2261
+ noteplan_manage_note: new Set(['create', 'update', 'delete', 'move', 'restore', 'rename', 'set_property', 'remove_property']),
2262
+ noteplan_edit_content: new Set(['insert', 'append', 'delete_lines', 'edit_line', 'replace_lines']),
2263
+ noteplan_paragraphs: new Set(['add', 'complete', 'update', 'delete_recurring']),
2264
+ noteplan_folders: new Set(['create', 'move', 'rename', 'delete']),
2265
+ noteplan_eventkit: new Set(['create_event', 'update_event', 'delete_event', 'create', 'complete', 'update', 'delete']),
2266
+ noteplan_memory: new Set(['save', 'update', 'delete']),
2267
+ noteplan_filters: new Set(['save', 'rename']),
2268
+ noteplan_ui: new Set(['run_plugin', 'backup']),
2269
+ noteplan_plugins: new Set(['create', 'delete', 'install', 'update_html', 'update_json', 'screenshot']),
2270
+ noteplan_themes: new Set(['save', 'set_active']),
2271
+ noteplan_embeddings: new Set(['sync', 'reset']),
2272
+ noteplan_attachments: new Set(['add', 'move']),
2273
+ };
2274
+ // Append mode hints to tool descriptions so the LLM knows about active config.
2275
+ // Only add hints to tools that actually have write actions.
2276
+ if (skipDryRun || readOnly) {
2277
+ const writeCapableTools = new Set(Object.keys(WRITE_ACTIONS_MAP));
2278
+ for (const tool of compactToolDefinitions) {
2279
+ if (!writeCapableTools.has(tool.name))
2280
+ continue;
2281
+ const hints = [];
2282
+ if (skipDryRun) {
2283
+ hints.push('NOTEPLAN_SKIP_DRY_RUN is enabled: skip dryRun, call write actions directly without confirmationToken.');
2284
+ }
2285
+ if (readOnly) {
2286
+ hints.push('NOTEPLAN_READ_ONLY is enabled: write actions are disabled and will be rejected.');
2287
+ }
2288
+ if (hints.length > 0) {
2289
+ tool.description += '\n\n' + hints.join(' ');
2290
+ }
2291
+ }
2292
+ }
2222
2293
  // Register tool listing handler — all 12 tools returned directly (no pagination needed)
2223
2294
  server.setRequestHandler(ListToolsRequestSchema, async () => {
2224
2295
  return { tools: compactToolDefinitions };
@@ -2289,10 +2360,10 @@ export function createServer() {
2289
2360
  { action: 'list_tags', description: 'List all tags/hashtags with optional filtering' },
2290
2361
  ],
2291
2362
  noteplan_manage_note: [
2292
- { action: 'create', description: 'Create a project note (requires title)' },
2363
+ { action: 'create', description: 'Create a project note (requires title). No dryRun needed — creates immediately' },
2293
2364
  { action: 'update', description: 'Replace note content (requires filename, content, fullReplace + confirmationToken)' },
2294
2365
  { action: 'delete', description: 'Delete a note (requires dryRun/confirmationToken)' },
2295
- { action: 'move', description: 'Move a note to another folder (requires dryRun/confirmationToken)' },
2366
+ { action: 'move', description: 'Move a note to another folder (requires destinationFolder + dryRun/confirmationToken). Find the note first via id, filename, or title' },
2296
2367
  { action: 'restore', description: 'Restore a trashed note (requires dryRun/confirmationToken)' },
2297
2368
  { action: 'rename', description: 'Rename a note (requires newTitle)' },
2298
2369
  { action: 'set_property', description: 'Set a frontmatter property (requires key + value)' },
@@ -2304,6 +2375,7 @@ export function createServer() {
2304
2375
  { action: 'delete_lines', description: 'Delete a line range (requires startLine + endLine, 1-indexed)' },
2305
2376
  { action: 'edit_line', description: 'Edit a single line (requires line + content)' },
2306
2377
  { action: 'replace_lines', description: 'Replace a line range (requires startLine + endLine + content)' },
2378
+ { action: '(full replace)', description: 'To replace ALL content, use noteplan_manage_note(action: "update") with fullReplace=true instead' },
2307
2379
  ],
2308
2380
  noteplan_paragraphs: [
2309
2381
  { action: 'get', description: 'Get note lines with metadata (requires filename). Use types param to filter by paragraph type (e.g. open-task, done-checklist, heading)' },
@@ -2312,6 +2384,7 @@ export function createServer() {
2312
2384
  { action: 'add', description: 'Add a task (requires target + content)' },
2313
2385
  { action: 'complete', description: 'Mark task done (requires filename + lineIndex or line)' },
2314
2386
  { action: 'update', description: 'Update task content/status (requires filename + lineIndex or line)' },
2387
+ { action: 'delete_recurring', description: 'Delete a recurring task and all future occurrences in calendar notes (requires note ref + lineIndex/line/taskQuery). Detects @repeat(X/Y) tag, strips it for comparison, and removes matching lines from all future daily notes' },
2315
2388
  ],
2316
2389
  noteplan_folders: [
2317
2390
  { action: 'list', description: 'List folders with optional filtering' },
@@ -2370,6 +2443,7 @@ export function createServer() {
2370
2443
  { action: 'log', description: 'Read plugin console log (requires pluginId)' },
2371
2444
  { action: 'source', description: 'Read plugin source (requires pluginId)' },
2372
2445
  { action: 'update_html', description: 'Apply find/replace patches (requires pluginId + patches)' },
2446
+ { action: 'update_json', description: 'Update plugin.json metadata (requires pluginId + updates)' },
2373
2447
  { action: 'screenshot', description: 'Capture plugin WebView screenshot (requires pluginId)' },
2374
2448
  ],
2375
2449
  noteplan_themes: [
@@ -2413,6 +2487,21 @@ export function createServer() {
2413
2487
  const resultWithDuration = withDuration(result, Date.now() - startTime, includeTiming);
2414
2488
  return { content: [{ type: 'text', text: JSON.stringify(resultWithDuration, null, 2) }] };
2415
2489
  }
2490
+ // ── Read-only mode: reject write actions ──
2491
+ if (readOnly) {
2492
+ const action = args?.action;
2493
+ const writeSet = WRITE_ACTIONS_MAP[normalizedName];
2494
+ if (writeSet && action && writeSet.has(action)) {
2495
+ const errorResult = { success: false, error: `Read-only mode is enabled (NOTEPLAN_READ_ONLY=true). Write action "${action}" on ${normalizedName} is not allowed.`, code: 'ERR_READ_ONLY' };
2496
+ const hasOutputSchema = !!toolDefinitions.find(t => t.name === normalizedName)?.outputSchema;
2497
+ const resultWithDuration = withDuration(errorResult, Date.now() - startTime, includeTiming);
2498
+ return {
2499
+ content: [{ type: 'text', text: JSON.stringify(resultWithDuration, null, 2) }],
2500
+ ...(hasOutputSchema ? { structuredContent: resultWithDuration } : {}),
2501
+ isError: true,
2502
+ };
2503
+ }
2504
+ }
2416
2505
  switch (normalizedName) {
2417
2506
  // ── Primary consolidated tools ──
2418
2507
  case 'noteplan_get_notes':
@@ -2529,6 +2618,9 @@ export function createServer() {
2529
2618
  case 'update':
2530
2619
  result = taskTools.updateTask(a);
2531
2620
  break;
2621
+ case 'delete_recurring':
2622
+ result = taskTools.deleteRecurringTask(a);
2623
+ break;
2532
2624
  default: throw new Error(`Unknown action: ${action}`);
2533
2625
  }
2534
2626
  break;
@@ -2780,6 +2872,9 @@ export function createServer() {
2780
2872
  case 'update_html':
2781
2873
  result = pluginTools.updatePluginHtml(args);
2782
2874
  break;
2875
+ case 'update_json':
2876
+ result = pluginTools.updatePluginJson(args);
2877
+ break;
2783
2878
  case 'screenshot':
2784
2879
  result = pluginTools.screenshotPlugin(args);
2785
2880
  break;