remnote-mcp-server 0.7.0 → 0.9.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.
- package/CHANGELOG.md +41 -1
- package/README.md +5 -3
- package/dist/schemas/remnote-schemas.d.ts +2 -1
- package/dist/schemas/remnote-schemas.js +17 -4
- package/dist/schemas/remnote-schemas.js.map +1 -1
- package/dist/tools/index.d.ts +195 -0
- package/dist/tools/index.js +237 -32
- package/dist/tools/index.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,7 +5,47 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic
|
|
6
6
|
Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
-
## [
|
|
8
|
+
## [0.9.0] - 2026-03-17
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
- Enhanced `remnote_create_note` with direct hierarchical tree creation and flashcards via RemNote native markdown syntax.
|
|
12
|
+
|
|
13
|
+
### Changed
|
|
14
|
+
- Updated `remnote_create_note` input schema:
|
|
15
|
+
- Made `title` optional (at least one of `title` or `content` must be provided).
|
|
16
|
+
- Updated `remnote_create_note` output schema to return plural `remIds` and `titles` arrays.
|
|
17
|
+
- Clarified unified create-note docs and added integration coverage for markdown-tree retrieval.
|
|
18
|
+
|
|
19
|
+
### Documentation
|
|
20
|
+
|
|
21
|
+
- Clarified across setup guides that MCP clients must use HTTP transport (`http://localhost:3001/mcp`), not `stdio`.
|
|
22
|
+
- Added the recommended startup order: start the server, open RemNote, open the Automation Bridge sidebar panel,
|
|
23
|
+
confirm bridge connection, then use the MCP client.
|
|
24
|
+
- Replaced misleading plugin auto-reconnect wording with the current retry-plus-manual-`Reconnect` behavior.
|
|
25
|
+
|
|
26
|
+
### Attribution
|
|
27
|
+
|
|
28
|
+
- Most of the cross-repo `create_note` / markdown-tree work in this release was implemented by @Twb06.
|
|
29
|
+
|
|
30
|
+
## [0.8.0] - 2026-03-04
|
|
31
|
+
|
|
32
|
+
### Added
|
|
33
|
+
|
|
34
|
+
- Added `replaceContent` support for `remnote_update_note` in MCP input validation and tool schemas.
|
|
35
|
+
- Added schema-level validation that rejects `appendContent` + `replaceContent` in one update request.
|
|
36
|
+
- Added `remnote_get_playbook`, a read-only MCP tool that returns navigation defaults, content-mode guidance, and a
|
|
37
|
+
short decision tree for MCP agents.
|
|
38
|
+
- Added `outputSchema` metadata for `remnote_create_note`, `remnote_update_note`, `remnote_append_journal`,
|
|
39
|
+
`remnote_status`, and `remnote_get_playbook`.
|
|
40
|
+
|
|
41
|
+
### Changed
|
|
42
|
+
|
|
43
|
+
- Updated tool reference docs for `remnote_update_note` to document direct-child replace semantics, empty-string clear
|
|
44
|
+
behavior, and bridge write/replace policy gates.
|
|
45
|
+
- Updated `remnote_search`/`remnote_read_note`/`remnote_status` tool descriptions to make status-first preflight and
|
|
46
|
+
ID-first traversal recommendations explicit for non-skill MCP clients.
|
|
47
|
+
- Refreshed ChatGPT docs screenshots and flow in `docs/demo.md` and
|
|
48
|
+
`docs/guides/configuration-chatgpt.md` with a status-check + synthesis + diff sequence.
|
|
9
49
|
|
|
10
50
|
## [0.7.0] - 2026-03-01
|
|
11
51
|
|
package/README.md
CHANGED
|
@@ -58,8 +58,9 @@ connection always stays local for security. See [Remote Access Guide](docs/guide
|
|
|
58
58
|
- **Create Notes** - Create new notes with optional parent hierarchy and tags
|
|
59
59
|
- **Search Knowledge Base** - Full-text search with configurable result limits
|
|
60
60
|
- **Read Notes** - Retrieve note content with configurable child depth
|
|
61
|
-
- **Update Notes** - Modify titles, append content, add/remove tags
|
|
61
|
+
- **Update Notes** - Modify titles, append/replace content, add/remove tags
|
|
62
62
|
- **Journal Entries** - Append timestamped entries to daily documents
|
|
63
|
+
- **Agent Playbook** - Return built-in navigation and safety guidance for MCP clients
|
|
63
64
|
- **Connection Status** - Check server and plugin connection health
|
|
64
65
|
|
|
65
66
|
## Quick Start
|
|
@@ -115,7 +116,7 @@ Keep this terminal running.
|
|
|
115
116
|
### Usage
|
|
116
117
|
|
|
117
118
|
- **[CLI Options Reference](docs/guides/cli-options.md)** - Command-line options and environment variables
|
|
118
|
-
- **[MCP Tools Reference](docs/guides/tools-reference.md)** - Detailed reference for all
|
|
119
|
+
- **[MCP Tools Reference](docs/guides/tools-reference.md)** - Detailed reference for all 8 RemNote tools
|
|
119
120
|
- **[Remote Access Setup](docs/guides/remote-access.md)** - Expose server for Claude Cowork (ngrok, etc.)
|
|
120
121
|
|
|
121
122
|
### Help & Advanced
|
|
@@ -137,8 +138,9 @@ Keep this terminal running.
|
|
|
137
138
|
| `remnote_search` | Search knowledge base with full-text search |
|
|
138
139
|
| `remnote_search_by_tag` | Search by tag with ancestor-context resolution |
|
|
139
140
|
| `remnote_read_note` | Read note by ID with configurable depth |
|
|
140
|
-
| `remnote_update_note` | Update title, append content, or modify tags
|
|
141
|
+
| `remnote_update_note` | Update title, append/replace content, or modify tags |
|
|
141
142
|
| `remnote_append_journal` | Append to today's daily document |
|
|
143
|
+
| `remnote_get_playbook` | Get recommended MCP usage/navigation playbook |
|
|
142
144
|
| `remnote_status` | Check connection status and statistics |
|
|
143
145
|
|
|
144
146
|
See the [Tools Reference](docs/guides/tools-reference.md) for detailed usage and examples.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
export declare const CreateNoteSchema: z.ZodObject<{
|
|
3
|
-
title: z.ZodString
|
|
3
|
+
title: z.ZodOptional<z.ZodString>;
|
|
4
4
|
content: z.ZodOptional<z.ZodString>;
|
|
5
5
|
parentId: z.ZodOptional<z.ZodString>;
|
|
6
6
|
tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
@@ -44,6 +44,7 @@ export declare const UpdateNoteSchema: z.ZodObject<{
|
|
|
44
44
|
remId: z.ZodString;
|
|
45
45
|
title: z.ZodOptional<z.ZodString>;
|
|
46
46
|
appendContent: z.ZodOptional<z.ZodString>;
|
|
47
|
+
replaceContent: z.ZodOptional<z.ZodString>;
|
|
47
48
|
addTags: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
48
49
|
removeTags: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
49
50
|
}, z.core.$strip>;
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
export const CreateNoteSchema = z
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
export const CreateNoteSchema = z
|
|
3
|
+
.object({
|
|
4
|
+
title: z.string().optional().describe('The title of the note'),
|
|
5
|
+
content: z.string().optional().describe('Content as child bullets (markdown supported)'),
|
|
5
6
|
parentId: z.string().optional().describe('Parent Rem ID'),
|
|
6
7
|
tags: z.array(z.string()).optional().describe('Tags to apply'),
|
|
8
|
+
})
|
|
9
|
+
.refine((value) => value.title !== undefined || value.content !== undefined, {
|
|
10
|
+
message: 'create_note requires either title or content',
|
|
7
11
|
});
|
|
8
12
|
export const SearchSchema = z.object({
|
|
9
13
|
query: z.string().describe('Search query text'),
|
|
@@ -85,12 +89,21 @@ export const ReadNoteSchema = z.object({
|
|
|
85
89
|
.default(100000)
|
|
86
90
|
.describe('Maximum character length for rendered content'),
|
|
87
91
|
});
|
|
88
|
-
export const UpdateNoteSchema = z
|
|
92
|
+
export const UpdateNoteSchema = z
|
|
93
|
+
.object({
|
|
89
94
|
remId: z.string().describe('The Rem ID to update'),
|
|
90
95
|
title: z.string().optional().describe('New title'),
|
|
91
96
|
appendContent: z.string().optional().describe('Content to append as children'),
|
|
97
|
+
replaceContent: z
|
|
98
|
+
.string()
|
|
99
|
+
.optional()
|
|
100
|
+
.describe('Content to replace direct children (empty string clears children)'),
|
|
92
101
|
addTags: z.array(z.string()).optional().describe('Tags to add'),
|
|
93
102
|
removeTags: z.array(z.string()).optional().describe('Tags to remove'),
|
|
103
|
+
})
|
|
104
|
+
.refine((value) => !(value.appendContent !== undefined && value.replaceContent !== undefined), {
|
|
105
|
+
message: 'appendContent and replaceContent cannot be used together',
|
|
106
|
+
path: ['replaceContent'],
|
|
94
107
|
});
|
|
95
108
|
export const AppendJournalSchema = z.object({
|
|
96
109
|
content: z.string().describe("Content to append to today's daily document"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remnote-schemas.js","sourceRoot":"","sources":["../../src/schemas/remnote-schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"remnote-schemas.js","sourceRoot":"","sources":["../../src/schemas/remnote-schemas.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/index.d.ts
CHANGED
|
@@ -27,6 +27,26 @@ export declare const CREATE_NOTE_TOOL: {
|
|
|
27
27
|
description: string;
|
|
28
28
|
};
|
|
29
29
|
};
|
|
30
|
+
required: never[];
|
|
31
|
+
};
|
|
32
|
+
outputSchema: {
|
|
33
|
+
type: "object";
|
|
34
|
+
properties: {
|
|
35
|
+
remIds: {
|
|
36
|
+
type: string;
|
|
37
|
+
items: {
|
|
38
|
+
type: string;
|
|
39
|
+
};
|
|
40
|
+
description: string;
|
|
41
|
+
};
|
|
42
|
+
titles: {
|
|
43
|
+
type: string;
|
|
44
|
+
items: {
|
|
45
|
+
type: string;
|
|
46
|
+
};
|
|
47
|
+
description: string;
|
|
48
|
+
};
|
|
49
|
+
};
|
|
30
50
|
required: string[];
|
|
31
51
|
};
|
|
32
52
|
};
|
|
@@ -485,6 +505,10 @@ export declare const UPDATE_NOTE_TOOL: {
|
|
|
485
505
|
type: string;
|
|
486
506
|
description: string;
|
|
487
507
|
};
|
|
508
|
+
replaceContent: {
|
|
509
|
+
type: string;
|
|
510
|
+
description: string;
|
|
511
|
+
};
|
|
488
512
|
addTags: {
|
|
489
513
|
type: string;
|
|
490
514
|
items: {
|
|
@@ -502,6 +526,26 @@ export declare const UPDATE_NOTE_TOOL: {
|
|
|
502
526
|
};
|
|
503
527
|
required: string[];
|
|
504
528
|
};
|
|
529
|
+
outputSchema: {
|
|
530
|
+
type: "object";
|
|
531
|
+
properties: {
|
|
532
|
+
remIds: {
|
|
533
|
+
type: string;
|
|
534
|
+
items: {
|
|
535
|
+
type: string;
|
|
536
|
+
};
|
|
537
|
+
description: string;
|
|
538
|
+
};
|
|
539
|
+
titles: {
|
|
540
|
+
type: string;
|
|
541
|
+
items: {
|
|
542
|
+
type: string;
|
|
543
|
+
};
|
|
544
|
+
description: string;
|
|
545
|
+
};
|
|
546
|
+
};
|
|
547
|
+
required: string[];
|
|
548
|
+
};
|
|
505
549
|
};
|
|
506
550
|
export declare const APPEND_JOURNAL_TOOL: {
|
|
507
551
|
name: string;
|
|
@@ -520,6 +564,26 @@ export declare const APPEND_JOURNAL_TOOL: {
|
|
|
520
564
|
};
|
|
521
565
|
required: string[];
|
|
522
566
|
};
|
|
567
|
+
outputSchema: {
|
|
568
|
+
type: "object";
|
|
569
|
+
properties: {
|
|
570
|
+
remIds: {
|
|
571
|
+
type: string;
|
|
572
|
+
items: {
|
|
573
|
+
type: string;
|
|
574
|
+
};
|
|
575
|
+
description: string;
|
|
576
|
+
};
|
|
577
|
+
titles: {
|
|
578
|
+
type: string;
|
|
579
|
+
items: {
|
|
580
|
+
type: string;
|
|
581
|
+
};
|
|
582
|
+
description: string;
|
|
583
|
+
};
|
|
584
|
+
};
|
|
585
|
+
required: string[];
|
|
586
|
+
};
|
|
523
587
|
};
|
|
524
588
|
export declare const STATUS_TOOL: {
|
|
525
589
|
name: string;
|
|
@@ -528,5 +592,136 @@ export declare const STATUS_TOOL: {
|
|
|
528
592
|
type: "object";
|
|
529
593
|
properties: {};
|
|
530
594
|
};
|
|
595
|
+
outputSchema: {
|
|
596
|
+
type: "object";
|
|
597
|
+
properties: {
|
|
598
|
+
connected: {
|
|
599
|
+
type: string;
|
|
600
|
+
description: string;
|
|
601
|
+
};
|
|
602
|
+
serverVersion: {
|
|
603
|
+
type: string;
|
|
604
|
+
description: string;
|
|
605
|
+
};
|
|
606
|
+
pluginVersion: {
|
|
607
|
+
type: string;
|
|
608
|
+
description: string;
|
|
609
|
+
};
|
|
610
|
+
version_warning: {
|
|
611
|
+
type: string;
|
|
612
|
+
description: string;
|
|
613
|
+
};
|
|
614
|
+
acceptWriteOperations: {
|
|
615
|
+
type: string;
|
|
616
|
+
description: string;
|
|
617
|
+
};
|
|
618
|
+
acceptReplaceOperation: {
|
|
619
|
+
type: string;
|
|
620
|
+
description: string;
|
|
621
|
+
};
|
|
622
|
+
message: {
|
|
623
|
+
type: string;
|
|
624
|
+
description: string;
|
|
625
|
+
};
|
|
626
|
+
};
|
|
627
|
+
required: string[];
|
|
628
|
+
};
|
|
629
|
+
};
|
|
630
|
+
export declare const PLAYBOOK_TOOL: {
|
|
631
|
+
name: string;
|
|
632
|
+
description: string;
|
|
633
|
+
inputSchema: {
|
|
634
|
+
type: "object";
|
|
635
|
+
properties: {};
|
|
636
|
+
};
|
|
637
|
+
outputSchema: {
|
|
638
|
+
type: "object";
|
|
639
|
+
properties: {
|
|
640
|
+
playbookVersion: {
|
|
641
|
+
type: string;
|
|
642
|
+
};
|
|
643
|
+
summary: {
|
|
644
|
+
type: string;
|
|
645
|
+
};
|
|
646
|
+
recommendedStatusCheck: {
|
|
647
|
+
type: string;
|
|
648
|
+
properties: {
|
|
649
|
+
tool: {
|
|
650
|
+
type: string;
|
|
651
|
+
};
|
|
652
|
+
cadence: {
|
|
653
|
+
type: string;
|
|
654
|
+
};
|
|
655
|
+
rationale: {
|
|
656
|
+
type: string;
|
|
657
|
+
};
|
|
658
|
+
};
|
|
659
|
+
};
|
|
660
|
+
decisionTree: {
|
|
661
|
+
type: string;
|
|
662
|
+
items: {
|
|
663
|
+
type: string;
|
|
664
|
+
};
|
|
665
|
+
};
|
|
666
|
+
navigationPresets: {
|
|
667
|
+
type: string;
|
|
668
|
+
properties: {
|
|
669
|
+
orientation: {
|
|
670
|
+
type: string;
|
|
671
|
+
properties: {
|
|
672
|
+
includeContent: {
|
|
673
|
+
type: string;
|
|
674
|
+
};
|
|
675
|
+
depth: {
|
|
676
|
+
type: string;
|
|
677
|
+
};
|
|
678
|
+
childLimit: {
|
|
679
|
+
type: string;
|
|
680
|
+
};
|
|
681
|
+
};
|
|
682
|
+
};
|
|
683
|
+
};
|
|
684
|
+
};
|
|
685
|
+
contentModes: {
|
|
686
|
+
type: string;
|
|
687
|
+
properties: {
|
|
688
|
+
structured: {
|
|
689
|
+
type: string;
|
|
690
|
+
};
|
|
691
|
+
markdown: {
|
|
692
|
+
type: string;
|
|
693
|
+
};
|
|
694
|
+
none: {
|
|
695
|
+
type: string;
|
|
696
|
+
};
|
|
697
|
+
};
|
|
698
|
+
};
|
|
699
|
+
writePolicy: {
|
|
700
|
+
type: string;
|
|
701
|
+
properties: {
|
|
702
|
+
statusTool: {
|
|
703
|
+
type: string;
|
|
704
|
+
};
|
|
705
|
+
requiredFields: {
|
|
706
|
+
type: string;
|
|
707
|
+
items: {
|
|
708
|
+
type: string;
|
|
709
|
+
};
|
|
710
|
+
};
|
|
711
|
+
guidance: {
|
|
712
|
+
type: string;
|
|
713
|
+
items: {
|
|
714
|
+
type: string;
|
|
715
|
+
};
|
|
716
|
+
};
|
|
717
|
+
};
|
|
718
|
+
};
|
|
719
|
+
currentStatus: {
|
|
720
|
+
type: string;
|
|
721
|
+
description: string;
|
|
722
|
+
};
|
|
723
|
+
};
|
|
724
|
+
required: string[];
|
|
725
|
+
};
|
|
531
726
|
};
|
|
532
727
|
export declare function registerAllTools(server: Server, wsServer: WebSocketServer, logger: Logger): void;
|
package/dist/tools/index.js
CHANGED
|
@@ -6,23 +6,50 @@ import { ReadNoteSchema } from '../schemas/remnote-schemas.js';
|
|
|
6
6
|
import { UpdateNoteSchema } from '../schemas/remnote-schemas.js';
|
|
7
7
|
import { AppendJournalSchema } from '../schemas/remnote-schemas.js';
|
|
8
8
|
import { checkVersionCompatibility } from '../version-compat.js';
|
|
9
|
+
const NAVIGATION_PRESET = {
|
|
10
|
+
includeContent: 'structured',
|
|
11
|
+
depth: 1,
|
|
12
|
+
childLimit: 500,
|
|
13
|
+
};
|
|
9
14
|
export const CREATE_NOTE_TOOL = {
|
|
10
15
|
name: 'remnote_create_note',
|
|
11
|
-
description: 'Create a new note in RemNote with optional content, parent, and tags',
|
|
16
|
+
description: 'Create a new note in RemNote with optional content, parent, and tags. Supports hierarchical markdown in content and flashcard syntax (e.g. "- Term :: Definition"). At least one of title or content must be provided. Recommended preflight once per session: remnote_status.',
|
|
12
17
|
inputSchema: {
|
|
13
18
|
type: 'object',
|
|
14
19
|
properties: {
|
|
15
|
-
title: {
|
|
16
|
-
|
|
20
|
+
title: {
|
|
21
|
+
type: 'string',
|
|
22
|
+
description: 'The title of the note (optional if content is provided)',
|
|
23
|
+
},
|
|
24
|
+
content: {
|
|
25
|
+
type: 'string',
|
|
26
|
+
description: 'Content as plain text, child bullets or hierarchical markdown',
|
|
27
|
+
},
|
|
17
28
|
parentId: { type: 'string', description: 'Parent Rem ID' },
|
|
18
29
|
tags: { type: 'array', items: { type: 'string' }, description: 'Tags to apply' },
|
|
19
30
|
},
|
|
20
|
-
required: [
|
|
31
|
+
required: [],
|
|
32
|
+
},
|
|
33
|
+
outputSchema: {
|
|
34
|
+
type: 'object',
|
|
35
|
+
properties: {
|
|
36
|
+
remIds: {
|
|
37
|
+
type: 'array',
|
|
38
|
+
items: { type: 'string' },
|
|
39
|
+
description: 'IDs of created Rems (title at index 0, top-to-bottom)',
|
|
40
|
+
},
|
|
41
|
+
titles: {
|
|
42
|
+
type: 'array',
|
|
43
|
+
items: { type: 'string' },
|
|
44
|
+
description: 'Extracted text for each created Rem (title Rem ID at index 0, top-to-bottom)',
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
required: ['remIds', 'titles'],
|
|
21
48
|
},
|
|
22
49
|
};
|
|
23
50
|
export const SEARCH_TOOL = {
|
|
24
51
|
name: 'remnote_search',
|
|
25
|
-
description: 'Search the RemNote knowledge base.
|
|
52
|
+
description: 'Search the RemNote knowledge base. For whole-KB orientation, prefer includeContent="structured" with depth=1 and childLimit=500, then follow remIds with remnote_read_note. Use includeContent="markdown" for human-readable summaries.',
|
|
26
53
|
inputSchema: {
|
|
27
54
|
type: 'object',
|
|
28
55
|
properties: {
|
|
@@ -181,7 +208,7 @@ export const SEARCH_BY_TAG_TOOL = {
|
|
|
181
208
|
};
|
|
182
209
|
export const READ_NOTE_TOOL = {
|
|
183
210
|
name: 'remnote_read_note',
|
|
184
|
-
description: 'Read a specific note from RemNote by its Rem ID.
|
|
211
|
+
description: 'Read a specific note from RemNote by its Rem ID. For hierarchy traversal, prefer includeContent="structured" and start shallow (depth=1, childLimit=500), then deepen only selected branches. Use includeContent="markdown" for summarization.',
|
|
185
212
|
inputSchema: {
|
|
186
213
|
type: 'object',
|
|
187
214
|
properties: {
|
|
@@ -297,41 +324,192 @@ export const READ_NOTE_TOOL = {
|
|
|
297
324
|
};
|
|
298
325
|
export const UPDATE_NOTE_TOOL = {
|
|
299
326
|
name: 'remnote_update_note',
|
|
300
|
-
description: 'Update an existing note in RemNote (change title, append content, or modify tags)',
|
|
327
|
+
description: 'Update an existing note in RemNote (change title, append content, replace content, or modify tags). Recommended preflight once per session: remnote_status. appendContent and replaceContent are mutually exclusive. replaceContent may be blocked by bridge policy.',
|
|
301
328
|
inputSchema: {
|
|
302
329
|
type: 'object',
|
|
303
330
|
properties: {
|
|
304
331
|
remId: { type: 'string', description: 'The Rem ID to update' },
|
|
305
332
|
title: { type: 'string', description: 'New title' },
|
|
306
|
-
appendContent: {
|
|
333
|
+
appendContent: {
|
|
334
|
+
type: 'string',
|
|
335
|
+
description: 'Content to append as children (markdown supported)',
|
|
336
|
+
},
|
|
337
|
+
replaceContent: {
|
|
338
|
+
type: 'string',
|
|
339
|
+
description: 'Content to replace direct children (markdown supported, empty string clears children)',
|
|
340
|
+
},
|
|
307
341
|
addTags: { type: 'array', items: { type: 'string' }, description: 'Tags to add' },
|
|
308
342
|
removeTags: { type: 'array', items: { type: 'string' }, description: 'Tags to remove' },
|
|
309
343
|
},
|
|
310
344
|
required: ['remId'],
|
|
311
345
|
},
|
|
346
|
+
outputSchema: {
|
|
347
|
+
type: 'object',
|
|
348
|
+
properties: {
|
|
349
|
+
remIds: {
|
|
350
|
+
type: 'array',
|
|
351
|
+
items: { type: 'string' },
|
|
352
|
+
description: 'IDs of updated/affected Rems',
|
|
353
|
+
},
|
|
354
|
+
titles: {
|
|
355
|
+
type: 'array',
|
|
356
|
+
items: { type: 'string' },
|
|
357
|
+
description: 'Extracted text for updated Rems',
|
|
358
|
+
},
|
|
359
|
+
},
|
|
360
|
+
required: ['remIds', 'titles'],
|
|
361
|
+
},
|
|
312
362
|
};
|
|
313
363
|
export const APPEND_JOURNAL_TOOL = {
|
|
314
364
|
name: 'remnote_append_journal',
|
|
315
|
-
description: "Append content to today's daily document in RemNote",
|
|
365
|
+
description: "Append content to today's daily document in RemNote. Recommended preflight once per session: remnote_status.",
|
|
316
366
|
inputSchema: {
|
|
317
367
|
type: 'object',
|
|
318
368
|
properties: {
|
|
319
|
-
content: {
|
|
369
|
+
content: {
|
|
370
|
+
type: 'string',
|
|
371
|
+
description: "Content to append to today's daily document (markdown supported)",
|
|
372
|
+
},
|
|
320
373
|
timestamp: { type: 'boolean', description: 'Include timestamp (default: true)' },
|
|
321
374
|
},
|
|
322
375
|
required: ['content'],
|
|
323
376
|
},
|
|
377
|
+
outputSchema: {
|
|
378
|
+
type: 'object',
|
|
379
|
+
properties: {
|
|
380
|
+
remIds: {
|
|
381
|
+
type: 'array',
|
|
382
|
+
items: { type: 'string' },
|
|
383
|
+
description: 'IDs of created journal Rems',
|
|
384
|
+
},
|
|
385
|
+
titles: {
|
|
386
|
+
type: 'array',
|
|
387
|
+
items: { type: 'string' },
|
|
388
|
+
description: 'Extracted text for created Rems',
|
|
389
|
+
},
|
|
390
|
+
},
|
|
391
|
+
required: ['remIds', 'titles'],
|
|
392
|
+
},
|
|
324
393
|
};
|
|
325
394
|
export const STATUS_TOOL = {
|
|
326
395
|
name: 'remnote_status',
|
|
327
|
-
description: 'Check
|
|
396
|
+
description: 'Check bridge connection health, compatibility warnings, and write-policy capabilities. Recommended once per session before write operations.',
|
|
328
397
|
inputSchema: {
|
|
329
398
|
type: 'object',
|
|
330
399
|
properties: {},
|
|
331
400
|
},
|
|
401
|
+
outputSchema: {
|
|
402
|
+
type: 'object',
|
|
403
|
+
properties: {
|
|
404
|
+
connected: { type: 'boolean', description: 'Whether bridge plugin is currently connected' },
|
|
405
|
+
serverVersion: { type: 'string', description: 'MCP server version' },
|
|
406
|
+
pluginVersion: { type: 'string', description: 'Connected bridge plugin version' },
|
|
407
|
+
version_warning: {
|
|
408
|
+
type: 'string',
|
|
409
|
+
description: 'Compatibility warning when server/bridge versions differ',
|
|
410
|
+
},
|
|
411
|
+
acceptWriteOperations: {
|
|
412
|
+
type: 'boolean',
|
|
413
|
+
description: 'Whether bridge allows write actions (create/update/journal)',
|
|
414
|
+
},
|
|
415
|
+
acceptReplaceOperation: {
|
|
416
|
+
type: 'boolean',
|
|
417
|
+
description: 'Whether bridge allows update replaceContent operations',
|
|
418
|
+
},
|
|
419
|
+
message: {
|
|
420
|
+
type: 'string',
|
|
421
|
+
description: 'Connection status message (for disconnected states)',
|
|
422
|
+
},
|
|
423
|
+
},
|
|
424
|
+
required: ['connected', 'serverVersion'],
|
|
425
|
+
},
|
|
426
|
+
};
|
|
427
|
+
export const PLAYBOOK_TOOL = {
|
|
428
|
+
name: 'remnote_get_playbook',
|
|
429
|
+
description: 'Get an operations playbook for MCP agents: status-first recommendation, navigation presets, content-mode guidance, and write-safety decision tree.',
|
|
430
|
+
inputSchema: {
|
|
431
|
+
type: 'object',
|
|
432
|
+
properties: {},
|
|
433
|
+
},
|
|
434
|
+
outputSchema: {
|
|
435
|
+
type: 'object',
|
|
436
|
+
properties: {
|
|
437
|
+
playbookVersion: { type: 'string' },
|
|
438
|
+
summary: { type: 'string' },
|
|
439
|
+
recommendedStatusCheck: {
|
|
440
|
+
type: 'object',
|
|
441
|
+
properties: {
|
|
442
|
+
tool: { type: 'string' },
|
|
443
|
+
cadence: { type: 'string' },
|
|
444
|
+
rationale: { type: 'string' },
|
|
445
|
+
},
|
|
446
|
+
},
|
|
447
|
+
decisionTree: {
|
|
448
|
+
type: 'array',
|
|
449
|
+
items: { type: 'string' },
|
|
450
|
+
},
|
|
451
|
+
navigationPresets: {
|
|
452
|
+
type: 'object',
|
|
453
|
+
properties: {
|
|
454
|
+
orientation: {
|
|
455
|
+
type: 'object',
|
|
456
|
+
properties: {
|
|
457
|
+
includeContent: { type: 'string' },
|
|
458
|
+
depth: { type: 'number' },
|
|
459
|
+
childLimit: { type: 'number' },
|
|
460
|
+
},
|
|
461
|
+
},
|
|
462
|
+
},
|
|
463
|
+
},
|
|
464
|
+
contentModes: {
|
|
465
|
+
type: 'object',
|
|
466
|
+
properties: {
|
|
467
|
+
structured: { type: 'string' },
|
|
468
|
+
markdown: { type: 'string' },
|
|
469
|
+
none: { type: 'string' },
|
|
470
|
+
},
|
|
471
|
+
},
|
|
472
|
+
writePolicy: {
|
|
473
|
+
type: 'object',
|
|
474
|
+
properties: {
|
|
475
|
+
statusTool: { type: 'string' },
|
|
476
|
+
requiredFields: { type: 'array', items: { type: 'string' } },
|
|
477
|
+
guidance: { type: 'array', items: { type: 'string' } },
|
|
478
|
+
},
|
|
479
|
+
},
|
|
480
|
+
currentStatus: {
|
|
481
|
+
type: 'object',
|
|
482
|
+
description: 'Current remnote_status snapshot when available',
|
|
483
|
+
},
|
|
484
|
+
},
|
|
485
|
+
required: ['playbookVersion', 'summary', 'decisionTree', 'navigationPresets', 'contentModes'],
|
|
486
|
+
},
|
|
332
487
|
};
|
|
333
488
|
export function registerAllTools(server, wsServer, logger) {
|
|
334
489
|
const toolLogger = logger.child({ context: 'tools' });
|
|
490
|
+
async function buildStatusResult() {
|
|
491
|
+
const connected = wsServer.isConnected();
|
|
492
|
+
const serverVersion = wsServer.getServerVersion();
|
|
493
|
+
const bridgeVersion = wsServer.getBridgeVersion();
|
|
494
|
+
if (!connected) {
|
|
495
|
+
return { connected: false, serverVersion, message: 'RemNote plugin not connected' };
|
|
496
|
+
}
|
|
497
|
+
const statusResult = await wsServer.sendRequest('get_status', {});
|
|
498
|
+
const statusObj = typeof statusResult === 'object' && statusResult !== null
|
|
499
|
+
? statusResult
|
|
500
|
+
: {};
|
|
501
|
+
const fallbackBridgeVersion = typeof statusObj.pluginVersion === 'string' ? statusObj.pluginVersion : null;
|
|
502
|
+
const effectiveBridgeVersion = bridgeVersion ?? fallbackBridgeVersion;
|
|
503
|
+
const versionWarning = effectiveBridgeVersion
|
|
504
|
+
? checkVersionCompatibility(serverVersion, effectiveBridgeVersion)
|
|
505
|
+
: null;
|
|
506
|
+
return {
|
|
507
|
+
connected: true,
|
|
508
|
+
serverVersion,
|
|
509
|
+
...statusObj,
|
|
510
|
+
...(versionWarning ? { version_warning: versionWarning } : {}),
|
|
511
|
+
};
|
|
512
|
+
}
|
|
335
513
|
// Single CallTool handler for all tools
|
|
336
514
|
server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
337
515
|
const toolName = request.params.name;
|
|
@@ -370,30 +548,56 @@ export function registerAllTools(server, wsServer, logger) {
|
|
|
370
548
|
result = await wsServer.sendRequest('append_journal', args);
|
|
371
549
|
break;
|
|
372
550
|
}
|
|
373
|
-
case '
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
if (!connected) {
|
|
378
|
-
result = { connected: false, serverVersion, message: 'RemNote plugin not connected' };
|
|
551
|
+
case 'remnote_get_playbook': {
|
|
552
|
+
let currentStatus;
|
|
553
|
+
try {
|
|
554
|
+
currentStatus = await buildStatusResult();
|
|
379
555
|
}
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
?
|
|
384
|
-
: {};
|
|
385
|
-
const fallbackBridgeVersion = typeof statusObj.pluginVersion === 'string' ? statusObj.pluginVersion : null;
|
|
386
|
-
const effectiveBridgeVersion = bridgeVersion ?? fallbackBridgeVersion;
|
|
387
|
-
const versionWarning = effectiveBridgeVersion
|
|
388
|
-
? checkVersionCompatibility(serverVersion, effectiveBridgeVersion)
|
|
389
|
-
: null;
|
|
390
|
-
result = {
|
|
391
|
-
connected: true,
|
|
392
|
-
serverVersion,
|
|
393
|
-
...statusObj,
|
|
394
|
-
...(versionWarning ? { version_warning: versionWarning } : {}),
|
|
556
|
+
catch (statusError) {
|
|
557
|
+
currentStatus = {
|
|
558
|
+
connected: false,
|
|
559
|
+
statusProbeError: statusError instanceof Error ? statusError.message : String(statusError),
|
|
395
560
|
};
|
|
396
561
|
}
|
|
562
|
+
result = {
|
|
563
|
+
playbookVersion: '1.0.0',
|
|
564
|
+
summary: 'Use this playbook to navigate RemNote efficiently via remIds, and to apply write-safety checks before mutations.',
|
|
565
|
+
recommendedStatusCheck: {
|
|
566
|
+
tool: 'remnote_status',
|
|
567
|
+
cadence: 'recommended once per session and before risky writes',
|
|
568
|
+
rationale: 'status exposes connection health, version compatibility warnings, and write-policy gates',
|
|
569
|
+
},
|
|
570
|
+
decisionTree: [
|
|
571
|
+
'Need connection/capability context? Call remnote_status first.',
|
|
572
|
+
'Need to orient across the KB? Use remnote_search with includeContent="structured", depth=1, childLimit=500.',
|
|
573
|
+
'Need to traverse a specific branch? Use remnote_read_note on a chosen remId with includeContent="structured", depth=1, childLimit=500, then recurse by child remIds.',
|
|
574
|
+
'Need a human-readable summary? Switch to includeContent="markdown" on search/read results.',
|
|
575
|
+
'Need to modify content? Check remnote_status: if acceptWriteOperations is false, stop; if using replaceContent, ensure acceptReplaceOperation is true.',
|
|
576
|
+
],
|
|
577
|
+
navigationPresets: {
|
|
578
|
+
orientation: NAVIGATION_PRESET,
|
|
579
|
+
branchTraversal: NAVIGATION_PRESET,
|
|
580
|
+
},
|
|
581
|
+
contentModes: {
|
|
582
|
+
structured: 'ID-first traversal mode. Returns contentStructured with child remIds for deterministic follow-up reads.',
|
|
583
|
+
markdown: 'Summary mode. Returns rendered markdown content for human-facing synthesis, not deterministic child ID traversal.',
|
|
584
|
+
none: 'Metadata-only mode when content is not needed.',
|
|
585
|
+
},
|
|
586
|
+
writePolicy: {
|
|
587
|
+
statusTool: 'remnote_status',
|
|
588
|
+
requiredFields: ['acceptWriteOperations', 'acceptReplaceOperation'],
|
|
589
|
+
guidance: [
|
|
590
|
+
'Create/update/journal require acceptWriteOperations=true.',
|
|
591
|
+
'replaceContent updates require acceptReplaceOperation=true.',
|
|
592
|
+
'appendContent and replaceContent cannot be used in the same remnote_update_note call.',
|
|
593
|
+
],
|
|
594
|
+
},
|
|
595
|
+
currentStatus,
|
|
596
|
+
};
|
|
597
|
+
break;
|
|
598
|
+
}
|
|
599
|
+
case 'remnote_status': {
|
|
600
|
+
result = await buildStatusResult();
|
|
397
601
|
break;
|
|
398
602
|
}
|
|
399
603
|
default:
|
|
@@ -434,6 +638,7 @@ export function registerAllTools(server, wsServer, logger) {
|
|
|
434
638
|
READ_NOTE_TOOL,
|
|
435
639
|
UPDATE_NOTE_TOOL,
|
|
436
640
|
APPEND_JOURNAL_TOOL,
|
|
641
|
+
PLAYBOOK_TOOL,
|
|
437
642
|
STATUS_TOOL,
|
|
438
643
|
],
|
|
439
644
|
};
|
package/dist/tools/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
|