wikimem 0.3.0 → 0.8.1
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 +138 -29
- package/README.md +171 -309
- package/dist/cli/commands/ask.d.ts +3 -0
- package/dist/cli/commands/ask.d.ts.map +1 -0
- package/dist/cli/commands/ask.js +63 -0
- package/dist/cli/commands/ask.js.map +1 -0
- package/dist/cli/commands/export.d.ts +3 -0
- package/dist/cli/commands/export.d.ts.map +1 -0
- package/dist/cli/commands/export.js +108 -0
- package/dist/cli/commands/export.js.map +1 -0
- package/dist/cli/commands/history.d.ts +3 -0
- package/dist/cli/commands/history.d.ts.map +1 -0
- package/dist/cli/commands/history.js +61 -0
- package/dist/cli/commands/history.js.map +1 -0
- package/dist/cli/commands/improve.d.ts.map +1 -1
- package/dist/cli/commands/improve.js +4 -3
- package/dist/cli/commands/improve.js.map +1 -1
- package/dist/cli/commands/ingest.d.ts.map +1 -1
- package/dist/cli/commands/ingest.js +5 -4
- package/dist/cli/commands/ingest.js.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +337 -81
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/lint.d.ts.map +1 -1
- package/dist/cli/commands/lint.js +4 -3
- package/dist/cli/commands/lint.js.map +1 -1
- package/dist/cli/commands/mcp.d.ts +3 -0
- package/dist/cli/commands/mcp.d.ts.map +1 -0
- package/dist/cli/commands/mcp.js +11 -0
- package/dist/cli/commands/mcp.js.map +1 -0
- package/dist/cli/commands/open.d.ts +3 -0
- package/dist/cli/commands/open.d.ts.map +1 -0
- package/dist/cli/commands/open.js +36 -0
- package/dist/cli/commands/open.js.map +1 -0
- package/dist/cli/commands/query.d.ts.map +1 -1
- package/dist/cli/commands/query.js +5 -4
- package/dist/cli/commands/query.js.map +1 -1
- package/dist/cli/commands/search.d.ts +3 -0
- package/dist/cli/commands/search.d.ts.map +1 -0
- package/dist/cli/commands/search.js +61 -0
- package/dist/cli/commands/search.js.map +1 -0
- package/dist/cli/commands/serve.d.ts.map +1 -1
- package/dist/cli/commands/serve.js +41 -2
- package/dist/cli/commands/serve.js.map +1 -1
- package/dist/cli/commands/watch.d.ts.map +1 -1
- package/dist/cli/commands/watch.js +4 -3
- package/dist/cli/commands/watch.js.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +27 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/core/audit-trail.d.ts +15 -0
- package/dist/core/audit-trail.d.ts.map +1 -0
- package/dist/core/audit-trail.js +43 -0
- package/dist/core/audit-trail.js.map +1 -0
- package/dist/core/claude-code.d.ts +10 -0
- package/dist/core/claude-code.d.ts.map +1 -0
- package/dist/core/claude-code.js +81 -0
- package/dist/core/claude-code.js.map +1 -0
- package/dist/core/config.d.ts +23 -0
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js.map +1 -1
- package/dist/core/connectors.d.ts +58 -0
- package/dist/core/connectors.d.ts.map +1 -0
- package/dist/core/connectors.js +189 -0
- package/dist/core/connectors.js.map +1 -0
- package/dist/core/folder-scanner.d.ts +10 -0
- package/dist/core/folder-scanner.d.ts.map +1 -0
- package/dist/core/folder-scanner.js +84 -0
- package/dist/core/folder-scanner.js.map +1 -0
- package/dist/core/git.d.ts +137 -0
- package/dist/core/git.d.ts.map +1 -0
- package/dist/core/git.js +520 -0
- package/dist/core/git.js.map +1 -0
- package/dist/core/history.d.ts +21 -0
- package/dist/core/history.d.ts.map +1 -0
- package/dist/core/history.js +107 -0
- package/dist/core/history.js.map +1 -0
- package/dist/core/improve.d.ts.map +1 -1
- package/dist/core/improve.js +9 -0
- package/dist/core/improve.js.map +1 -1
- package/dist/core/ingest.d.ts +1 -0
- package/dist/core/ingest.d.ts.map +1 -1
- package/dist/core/ingest.js +151 -7
- package/dist/core/ingest.js.map +1 -1
- package/dist/core/lint.d.ts.map +1 -1
- package/dist/core/lint.js +23 -4
- package/dist/core/lint.js.map +1 -1
- package/dist/core/oauth-defaults.d.ts +31 -0
- package/dist/core/oauth-defaults.d.ts.map +1 -0
- package/dist/core/oauth-defaults.js +77 -0
- package/dist/core/oauth-defaults.js.map +1 -0
- package/dist/core/observer.d.ts +94 -0
- package/dist/core/observer.d.ts.map +1 -0
- package/dist/core/observer.js +492 -0
- package/dist/core/observer.js.map +1 -0
- package/dist/core/pipeline-events.d.ts +63 -0
- package/dist/core/pipeline-events.d.ts.map +1 -0
- package/dist/core/pipeline-events.js +109 -0
- package/dist/core/pipeline-events.js.map +1 -0
- package/dist/core/query.d.ts.map +1 -1
- package/dist/core/query.js +16 -8
- package/dist/core/query.js.map +1 -1
- package/dist/core/scraper.d.ts +41 -0
- package/dist/core/scraper.d.ts.map +1 -0
- package/dist/core/scraper.js +277 -0
- package/dist/core/scraper.js.map +1 -0
- package/dist/core/sync/gdrive.d.ts +14 -0
- package/dist/core/sync/gdrive.d.ts.map +1 -0
- package/dist/core/sync/gdrive.js +205 -0
- package/dist/core/sync/gdrive.js.map +1 -0
- package/dist/core/sync/github.d.ts +20 -0
- package/dist/core/sync/github.d.ts.map +1 -0
- package/dist/core/sync/github.js +206 -0
- package/dist/core/sync/github.js.map +1 -0
- package/dist/core/sync/gmail.d.ts +15 -0
- package/dist/core/sync/gmail.d.ts.map +1 -0
- package/dist/core/sync/gmail.js +159 -0
- package/dist/core/sync/gmail.js.map +1 -0
- package/dist/core/sync/index.d.ts +47 -0
- package/dist/core/sync/index.d.ts.map +1 -0
- package/dist/core/sync/index.js +100 -0
- package/dist/core/sync/index.js.map +1 -0
- package/dist/core/sync/jira.d.ts +15 -0
- package/dist/core/sync/jira.d.ts.map +1 -0
- package/dist/core/sync/jira.js +176 -0
- package/dist/core/sync/jira.js.map +1 -0
- package/dist/core/sync/linear.d.ts +15 -0
- package/dist/core/sync/linear.d.ts.map +1 -0
- package/dist/core/sync/linear.js +111 -0
- package/dist/core/sync/linear.js.map +1 -0
- package/dist/core/sync/notion.d.ts +14 -0
- package/dist/core/sync/notion.d.ts.map +1 -0
- package/dist/core/sync/notion.js +168 -0
- package/dist/core/sync/notion.js.map +1 -0
- package/dist/core/sync/rss.d.ts +20 -0
- package/dist/core/sync/rss.d.ts.map +1 -0
- package/dist/core/sync/rss.js +165 -0
- package/dist/core/sync/rss.js.map +1 -0
- package/dist/core/sync/scheduler.d.ts +31 -0
- package/dist/core/sync/scheduler.d.ts.map +1 -0
- package/dist/core/sync/scheduler.js +129 -0
- package/dist/core/sync/scheduler.js.map +1 -0
- package/dist/core/sync/slack.d.ts +16 -0
- package/dist/core/sync/slack.d.ts.map +1 -0
- package/dist/core/sync/slack.js +173 -0
- package/dist/core/sync/slack.js.map +1 -0
- package/dist/core/vault.d.ts +22 -0
- package/dist/core/vault.d.ts.map +1 -1
- package/dist/core/vault.js +65 -0
- package/dist/core/vault.js.map +1 -1
- package/dist/core/webhooks.d.ts +13 -0
- package/dist/core/webhooks.d.ts.map +1 -0
- package/dist/core/webhooks.js +206 -0
- package/dist/core/webhooks.js.map +1 -0
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/mcp-entry.d.ts +10 -0
- package/dist/mcp-entry.d.ts.map +1 -0
- package/dist/mcp-entry.js +21 -0
- package/dist/mcp-entry.js.map +1 -0
- package/dist/mcp-server.d.ts +20 -0
- package/dist/mcp-server.d.ts.map +1 -0
- package/dist/mcp-server.js +483 -0
- package/dist/mcp-server.js.map +1 -0
- package/dist/mcp-tools-extended.d.ts +15 -0
- package/dist/mcp-tools-extended.d.ts.map +1 -0
- package/dist/mcp-tools-extended.js +277 -0
- package/dist/mcp-tools-extended.js.map +1 -0
- package/dist/processors/audio.d.ts.map +1 -1
- package/dist/processors/audio.js +42 -4
- package/dist/processors/audio.js.map +1 -1
- package/dist/processors/csv.d.ts +18 -0
- package/dist/processors/csv.d.ts.map +1 -0
- package/dist/processors/csv.js +230 -0
- package/dist/processors/csv.js.map +1 -0
- package/dist/processors/image.d.ts.map +1 -1
- package/dist/processors/image.js +55 -27
- package/dist/processors/image.js.map +1 -1
- package/dist/processors/pdf.d.ts.map +1 -1
- package/dist/processors/pdf.js +6 -3
- package/dist/processors/pdf.js.map +1 -1
- package/dist/processors/pptx.d.ts +3 -1
- package/dist/processors/pptx.d.ts.map +1 -1
- package/dist/processors/pptx.js +236 -95
- package/dist/processors/pptx.js.map +1 -1
- package/dist/processors/url.js +4 -1
- package/dist/processors/url.js.map +1 -1
- package/dist/processors/xlsx.d.ts +2 -0
- package/dist/processors/xlsx.d.ts.map +1 -1
- package/dist/processors/xlsx.js +182 -46
- package/dist/processors/xlsx.js.map +1 -1
- package/dist/providers/claude.d.ts +1 -0
- package/dist/providers/claude.d.ts.map +1 -1
- package/dist/providers/claude.js +5 -3
- package/dist/providers/claude.js.map +1 -1
- package/dist/providers/index.d.ts +17 -1
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +144 -0
- package/dist/providers/index.js.map +1 -1
- package/dist/providers/openai.d.ts +1 -0
- package/dist/providers/openai.d.ts.map +1 -1
- package/dist/providers/openai.js +5 -3
- package/dist/providers/openai.js.map +1 -1
- package/dist/providers/types.d.ts +18 -0
- package/dist/providers/types.d.ts.map +1 -1
- package/dist/templates/config-yaml.d.ts.map +1 -1
- package/dist/templates/config-yaml.js +12 -1
- package/dist/templates/config-yaml.js.map +1 -1
- package/dist/templates/source-types.d.ts +33 -0
- package/dist/templates/source-types.d.ts.map +1 -0
- package/dist/templates/source-types.js +178 -0
- package/dist/templates/source-types.js.map +1 -0
- package/dist/web/public/index.html +9836 -742
- package/dist/web/server.d.ts.map +1 -1
- package/dist/web/server.js +2823 -43
- package/dist/web/server.js.map +1 -1
- package/package.json +10 -4
- package/scripts/install.sh +54 -0
- package/src/web/public/index.html +9836 -742
- package/templates/mcp-config.json +9 -0
- package/templates/source-types/article.md +21 -0
- package/templates/source-types/book.md +21 -0
- package/templates/source-types/paper.md +23 -0
- package/templates/source-types/podcast.md +21 -0
- package/templates/source-types/raw-notes.md +17 -0
- package/templates/source-types/tweet-thread.md +19 -0
- package/templates/source-types/video.md +21 -0
- package/dist/web/public/public/index.html +0 -946
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WikiMem MCP Server — JSON-RPC 2.0 over stdin/stdout.
|
|
3
|
+
*
|
|
4
|
+
* Implements the Model Context Protocol without the SDK dependency.
|
|
5
|
+
* Reads newline-delimited JSON from stdin, writes responses to stdout.
|
|
6
|
+
*
|
|
7
|
+
* Tools exposed (10):
|
|
8
|
+
* wikimem_search — BM25 keyword search over wiki pages
|
|
9
|
+
* wikimem_read — Read a specific wiki page by title or filename
|
|
10
|
+
* wikimem_list — List all wiki pages with metadata
|
|
11
|
+
* wikimem_status — Vault statistics (page count, words, orphans, …)
|
|
12
|
+
* wikimem_ingest — Ingest a file or URL into the vault (async)
|
|
13
|
+
* wikimem_observe — Quality observer: scores, orphans, contradictions, gaps
|
|
14
|
+
* wikimem_improve — LLM-powered improvement suggestions for weak pages
|
|
15
|
+
* wikimem_pipeline — Pipeline status: recent runs, connector health
|
|
16
|
+
* wikimem_scrape — Scrape a URL and ingest into the vault
|
|
17
|
+
* wikimem_connectors — Manage data source connectors (list/add/remove/sync)
|
|
18
|
+
*/
|
|
19
|
+
export declare function startMcpServer(vault: string): Promise<void>;
|
|
20
|
+
//# sourceMappingURL=mcp-server.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAyeH,wBAAsB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA0CjE"}
|
|
@@ -0,0 +1,483 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WikiMem MCP Server — JSON-RPC 2.0 over stdin/stdout.
|
|
3
|
+
*
|
|
4
|
+
* Implements the Model Context Protocol without the SDK dependency.
|
|
5
|
+
* Reads newline-delimited JSON from stdin, writes responses to stdout.
|
|
6
|
+
*
|
|
7
|
+
* Tools exposed (10):
|
|
8
|
+
* wikimem_search — BM25 keyword search over wiki pages
|
|
9
|
+
* wikimem_read — Read a specific wiki page by title or filename
|
|
10
|
+
* wikimem_list — List all wiki pages with metadata
|
|
11
|
+
* wikimem_status — Vault statistics (page count, words, orphans, …)
|
|
12
|
+
* wikimem_ingest — Ingest a file or URL into the vault (async)
|
|
13
|
+
* wikimem_observe — Quality observer: scores, orphans, contradictions, gaps
|
|
14
|
+
* wikimem_improve — LLM-powered improvement suggestions for weak pages
|
|
15
|
+
* wikimem_pipeline — Pipeline status: recent runs, connector health
|
|
16
|
+
* wikimem_scrape — Scrape a URL and ingest into the vault
|
|
17
|
+
* wikimem_connectors — Manage data source connectors (list/add/remove/sync)
|
|
18
|
+
*/
|
|
19
|
+
import { createInterface } from 'node:readline';
|
|
20
|
+
import { existsSync, readFileSync } from 'node:fs';
|
|
21
|
+
import { basename, dirname, join, resolve } from 'node:path';
|
|
22
|
+
import { fileURLToPath } from 'node:url';
|
|
23
|
+
import { getVaultConfig, getVaultStats, listWikiPages, readWikiPage } from './core/vault.js';
|
|
24
|
+
import { searchPages } from './search/index.js';
|
|
25
|
+
import { handleObserve, handleImprove, handlePipeline, handleScrape, handleConnectors } from './mcp-tools-extended.js';
|
|
26
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
27
|
+
const __dirname = dirname(__filename);
|
|
28
|
+
// ─── MCP Tool definitions ──────────────────────────────────────────────────
|
|
29
|
+
const TOOLS = [
|
|
30
|
+
{
|
|
31
|
+
name: 'wikimem_search',
|
|
32
|
+
description: 'Search wiki pages using BM25 keyword ranking. Returns ranked results with title, path, and a content snippet.',
|
|
33
|
+
inputSchema: {
|
|
34
|
+
type: 'object',
|
|
35
|
+
properties: {
|
|
36
|
+
query: { type: 'string', description: 'Search query' },
|
|
37
|
+
limit: { type: 'number', description: 'Maximum results to return (default 10)' },
|
|
38
|
+
},
|
|
39
|
+
required: ['query'],
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: 'wikimem_read',
|
|
44
|
+
description: 'Read a specific wiki page by title or filename. Returns frontmatter, full content, wikilinks, and word count.',
|
|
45
|
+
inputSchema: {
|
|
46
|
+
type: 'object',
|
|
47
|
+
properties: {
|
|
48
|
+
title: { type: 'string', description: 'Page title or filename (without .md extension)' },
|
|
49
|
+
},
|
|
50
|
+
required: ['title'],
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
name: 'wikimem_list',
|
|
55
|
+
description: 'List all wiki pages in the vault with their title, type, tags, and summary from frontmatter.',
|
|
56
|
+
inputSchema: {
|
|
57
|
+
type: 'object',
|
|
58
|
+
properties: {
|
|
59
|
+
type: {
|
|
60
|
+
type: 'string',
|
|
61
|
+
description: 'Filter by page type (sources | entities | concepts | syntheses). Omit for all pages.',
|
|
62
|
+
},
|
|
63
|
+
},
|
|
64
|
+
},
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
name: 'wikimem_status',
|
|
68
|
+
description: 'Get vault statistics: page count, word count, source count, wikilink count, orphan pages, last updated.',
|
|
69
|
+
inputSchema: {
|
|
70
|
+
type: 'object',
|
|
71
|
+
properties: {},
|
|
72
|
+
},
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
name: 'wikimem_ingest',
|
|
76
|
+
description: 'Ingest a file, folder, or URL into the vault. Spawns the wikimem ingest CLI process.',
|
|
77
|
+
inputSchema: {
|
|
78
|
+
type: 'object',
|
|
79
|
+
properties: {
|
|
80
|
+
source: { type: 'string', description: 'File path, directory path, or URL to ingest' },
|
|
81
|
+
},
|
|
82
|
+
required: ['source'],
|
|
83
|
+
},
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
name: 'wikimem_observe',
|
|
87
|
+
description: 'Run the quality observer on the vault. Scores every page for freshness, readability, cross-linking, and tags. Returns weak pages, orphans, contradictions, and knowledge gaps.',
|
|
88
|
+
inputSchema: {
|
|
89
|
+
type: 'object',
|
|
90
|
+
properties: {
|
|
91
|
+
page: { type: 'string', description: 'Score a single page by title (omit for vault-wide report)' },
|
|
92
|
+
},
|
|
93
|
+
},
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
name: 'wikimem_improve',
|
|
97
|
+
description: 'Trigger improvement suggestions for weak wiki pages. Returns proposed actions (reorganize, cross-link, add summaries) and optionally applies them.',
|
|
98
|
+
inputSchema: {
|
|
99
|
+
type: 'object',
|
|
100
|
+
properties: {
|
|
101
|
+
page: { type: 'string', description: 'Improve a specific page by title (omit for vault-wide improvement)' },
|
|
102
|
+
autoApply: { type: 'boolean', description: 'When true, automatically apply improvements instead of dry-run (default false)' },
|
|
103
|
+
},
|
|
104
|
+
},
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
name: 'wikimem_pipeline',
|
|
108
|
+
description: 'Get pipeline status: recent ingest runs, current run state, and connector sync health.',
|
|
109
|
+
inputSchema: {
|
|
110
|
+
type: 'object',
|
|
111
|
+
properties: {
|
|
112
|
+
limit: { type: 'number', description: 'Maximum number of recent runs to return (default 10)' },
|
|
113
|
+
},
|
|
114
|
+
},
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
name: 'wikimem_scrape',
|
|
118
|
+
description: 'Scrape a URL and ingest its content into the wiki vault. Fetches the page, extracts text, and runs it through the ingest pipeline.',
|
|
119
|
+
inputSchema: {
|
|
120
|
+
type: 'object',
|
|
121
|
+
properties: {
|
|
122
|
+
url: { type: 'string', description: 'URL to scrape and ingest' },
|
|
123
|
+
tags: {
|
|
124
|
+
type: 'array',
|
|
125
|
+
items: { type: 'string' },
|
|
126
|
+
description: 'Optional tags to associate with the ingested content',
|
|
127
|
+
},
|
|
128
|
+
},
|
|
129
|
+
required: ['url'],
|
|
130
|
+
},
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
name: 'wikimem_connectors',
|
|
134
|
+
description: 'Manage data source connectors: list, add, remove, or sync folder/repo connectors that auto-ingest content into the wiki.',
|
|
135
|
+
inputSchema: {
|
|
136
|
+
type: 'object',
|
|
137
|
+
properties: {
|
|
138
|
+
action: {
|
|
139
|
+
type: 'string',
|
|
140
|
+
enum: ['list', 'add', 'remove', 'sync'],
|
|
141
|
+
description: 'Action to perform on connectors',
|
|
142
|
+
},
|
|
143
|
+
id: { type: 'string', description: 'Connector ID (required for remove and sync)' },
|
|
144
|
+
name: { type: 'string', description: 'Connector display name (required for add)' },
|
|
145
|
+
type: {
|
|
146
|
+
type: 'string',
|
|
147
|
+
enum: ['folder', 'git-repo'],
|
|
148
|
+
description: 'Connector type (required for add)',
|
|
149
|
+
},
|
|
150
|
+
path: { type: 'string', description: 'Local path to folder or repo (required for add)' },
|
|
151
|
+
url: { type: 'string', description: 'Remote URL for git-repo connectors (optional for add)' },
|
|
152
|
+
autoSync: { type: 'boolean', description: 'Enable auto-sync file watching (optional for add, default false)' },
|
|
153
|
+
includeGlobs: {
|
|
154
|
+
type: 'array',
|
|
155
|
+
items: { type: 'string' },
|
|
156
|
+
description: 'File patterns to include, e.g. ["*.md", "*.txt"] (optional for add)',
|
|
157
|
+
},
|
|
158
|
+
},
|
|
159
|
+
required: ['action'],
|
|
160
|
+
},
|
|
161
|
+
},
|
|
162
|
+
];
|
|
163
|
+
// ─── Server state ──────────────────────────────────────────────────────────
|
|
164
|
+
let vaultRoot = process.cwd();
|
|
165
|
+
let initialized = false;
|
|
166
|
+
// ─── Tool handlers ─────────────────────────────────────────────────────────
|
|
167
|
+
async function handleToolCall(name, args) {
|
|
168
|
+
const config = getVaultConfig(vaultRoot);
|
|
169
|
+
switch (name) {
|
|
170
|
+
case 'wikimem_search': {
|
|
171
|
+
const query = args['query'];
|
|
172
|
+
const limit = typeof args['limit'] === 'number' ? args['limit'] : 10;
|
|
173
|
+
if (typeof query !== 'string' || !query.trim()) {
|
|
174
|
+
throw { code: -32602, message: 'query must be a non-empty string' };
|
|
175
|
+
}
|
|
176
|
+
const allPages = listWikiPages(config.wikiDir);
|
|
177
|
+
const ranked = await searchPages(query, allPages, { mode: 'bm25', limit });
|
|
178
|
+
const results = ranked.map((path) => {
|
|
179
|
+
try {
|
|
180
|
+
const page = readWikiPage(path);
|
|
181
|
+
const snippet = page.content.slice(0, 300).replace(/\n+/g, ' ').trim();
|
|
182
|
+
return {
|
|
183
|
+
title: page.title,
|
|
184
|
+
path,
|
|
185
|
+
snippet: snippet + (page.content.length > 300 ? '…' : ''),
|
|
186
|
+
type: page.frontmatter['type'] ?? 'unknown',
|
|
187
|
+
tags: page.frontmatter['tags'] ?? [],
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
catch {
|
|
191
|
+
return { title: basename(path, '.md'), path, snippet: '', type: 'unknown', tags: [] };
|
|
192
|
+
}
|
|
193
|
+
});
|
|
194
|
+
return {
|
|
195
|
+
query,
|
|
196
|
+
count: results.length,
|
|
197
|
+
results,
|
|
198
|
+
};
|
|
199
|
+
}
|
|
200
|
+
case 'wikimem_read': {
|
|
201
|
+
const titleArg = args['title'];
|
|
202
|
+
if (typeof titleArg !== 'string' || !titleArg.trim()) {
|
|
203
|
+
throw { code: -32602, message: 'title must be a non-empty string' };
|
|
204
|
+
}
|
|
205
|
+
const allPages = listWikiPages(config.wikiDir);
|
|
206
|
+
const target = titleArg.toLowerCase();
|
|
207
|
+
// Match by frontmatter title, then by filename stem
|
|
208
|
+
const match = allPages.find((p) => {
|
|
209
|
+
const stem = basename(p, '.md').toLowerCase();
|
|
210
|
+
if (stem === target)
|
|
211
|
+
return true;
|
|
212
|
+
try {
|
|
213
|
+
const page = readWikiPage(p);
|
|
214
|
+
return page.title.toLowerCase() === target;
|
|
215
|
+
}
|
|
216
|
+
catch {
|
|
217
|
+
return false;
|
|
218
|
+
}
|
|
219
|
+
});
|
|
220
|
+
if (!match) {
|
|
221
|
+
// Try fuzzy: find page whose title/stem includes the query
|
|
222
|
+
const fuzzy = allPages.find((p) => {
|
|
223
|
+
const stem = basename(p, '.md').toLowerCase();
|
|
224
|
+
if (stem.includes(target))
|
|
225
|
+
return true;
|
|
226
|
+
try {
|
|
227
|
+
const page = readWikiPage(p);
|
|
228
|
+
return page.title.toLowerCase().includes(target);
|
|
229
|
+
}
|
|
230
|
+
catch {
|
|
231
|
+
return false;
|
|
232
|
+
}
|
|
233
|
+
});
|
|
234
|
+
if (!fuzzy) {
|
|
235
|
+
return {
|
|
236
|
+
found: false,
|
|
237
|
+
message: `No wiki page found matching "${titleArg}"`,
|
|
238
|
+
hint: 'Use wikimem_list to see all available pages or wikimem_search for fuzzy matching',
|
|
239
|
+
};
|
|
240
|
+
}
|
|
241
|
+
const page = readWikiPage(fuzzy);
|
|
242
|
+
return {
|
|
243
|
+
found: true,
|
|
244
|
+
title: page.title,
|
|
245
|
+
path: fuzzy,
|
|
246
|
+
frontmatter: page.frontmatter,
|
|
247
|
+
content: page.content,
|
|
248
|
+
wikilinks: page.wikilinks,
|
|
249
|
+
wordCount: page.wordCount,
|
|
250
|
+
};
|
|
251
|
+
}
|
|
252
|
+
const page = readWikiPage(match);
|
|
253
|
+
return {
|
|
254
|
+
found: true,
|
|
255
|
+
title: page.title,
|
|
256
|
+
path: match,
|
|
257
|
+
frontmatter: page.frontmatter,
|
|
258
|
+
content: page.content,
|
|
259
|
+
wikilinks: page.wikilinks,
|
|
260
|
+
wordCount: page.wordCount,
|
|
261
|
+
};
|
|
262
|
+
}
|
|
263
|
+
case 'wikimem_list': {
|
|
264
|
+
const typeFilter = typeof args['type'] === 'string' ? args['type'].toLowerCase() : null;
|
|
265
|
+
const allPages = listWikiPages(config.wikiDir);
|
|
266
|
+
const pages = allPages.flatMap((p) => {
|
|
267
|
+
try {
|
|
268
|
+
const page = readWikiPage(p);
|
|
269
|
+
const pageType = typeof page.frontmatter['type'] === 'string'
|
|
270
|
+
? page.frontmatter['type'].toLowerCase()
|
|
271
|
+
: 'unknown';
|
|
272
|
+
if (typeFilter && pageType !== typeFilter)
|
|
273
|
+
return [];
|
|
274
|
+
return [{
|
|
275
|
+
title: page.title,
|
|
276
|
+
path: p,
|
|
277
|
+
type: pageType,
|
|
278
|
+
tags: page.frontmatter['tags'] ?? [],
|
|
279
|
+
summary: page.frontmatter['summary'] ?? '',
|
|
280
|
+
wordCount: page.wordCount,
|
|
281
|
+
updated: page.frontmatter['updated'] ?? '',
|
|
282
|
+
}];
|
|
283
|
+
}
|
|
284
|
+
catch {
|
|
285
|
+
return [];
|
|
286
|
+
}
|
|
287
|
+
});
|
|
288
|
+
return {
|
|
289
|
+
vault: vaultRoot,
|
|
290
|
+
count: pages.length,
|
|
291
|
+
filter: typeFilter ?? 'all',
|
|
292
|
+
pages,
|
|
293
|
+
};
|
|
294
|
+
}
|
|
295
|
+
case 'wikimem_status': {
|
|
296
|
+
if (!existsSync(config.schemaPath)) {
|
|
297
|
+
return {
|
|
298
|
+
initialized: false,
|
|
299
|
+
message: 'Not a wikimem vault. Run `wikimem init` first.',
|
|
300
|
+
};
|
|
301
|
+
}
|
|
302
|
+
const stats = getVaultStats(config);
|
|
303
|
+
return {
|
|
304
|
+
initialized: true,
|
|
305
|
+
vault: vaultRoot,
|
|
306
|
+
pages: stats.pageCount,
|
|
307
|
+
words: stats.wordCount,
|
|
308
|
+
sources: stats.sourceCount,
|
|
309
|
+
wikilinks: stats.wikilinks,
|
|
310
|
+
orphanPages: stats.orphanPages,
|
|
311
|
+
lastUpdated: stats.lastUpdated,
|
|
312
|
+
};
|
|
313
|
+
}
|
|
314
|
+
case 'wikimem_ingest': {
|
|
315
|
+
const source = args['source'];
|
|
316
|
+
if (typeof source !== 'string' || !source.trim()) {
|
|
317
|
+
throw { code: -32602, message: 'source must be a non-empty string' };
|
|
318
|
+
}
|
|
319
|
+
// Spawn the CLI ingest command in a child process
|
|
320
|
+
const { spawn } = await import('node:child_process');
|
|
321
|
+
const wikimemBin = join(__dirname, 'index.js');
|
|
322
|
+
const result = await new Promise((res) => {
|
|
323
|
+
const proc = spawn(process.execPath, [wikimemBin, 'ingest', source, '--vault', vaultRoot], { stdio: ['ignore', 'pipe', 'pipe'] });
|
|
324
|
+
let output = '';
|
|
325
|
+
proc.stdout?.on('data', (d) => { output += d.toString(); });
|
|
326
|
+
proc.stderr?.on('data', (d) => { output += d.toString(); });
|
|
327
|
+
proc.on('close', (code) => res({ success: code === 0, output }));
|
|
328
|
+
proc.on('error', (err) => res({ success: false, output: err.message }));
|
|
329
|
+
});
|
|
330
|
+
return {
|
|
331
|
+
source,
|
|
332
|
+
success: result.success,
|
|
333
|
+
output: result.output.trim(),
|
|
334
|
+
message: result.success
|
|
335
|
+
? `Successfully ingested: ${source}`
|
|
336
|
+
: `Ingest failed. See output for details.`,
|
|
337
|
+
};
|
|
338
|
+
}
|
|
339
|
+
case 'wikimem_observe':
|
|
340
|
+
return handleObserve(config, args);
|
|
341
|
+
case 'wikimem_improve':
|
|
342
|
+
return handleImprove(config, args);
|
|
343
|
+
case 'wikimem_pipeline':
|
|
344
|
+
return handlePipeline(vaultRoot, args);
|
|
345
|
+
case 'wikimem_scrape':
|
|
346
|
+
return handleScrape(vaultRoot, args);
|
|
347
|
+
case 'wikimem_connectors':
|
|
348
|
+
return handleConnectors(vaultRoot, args);
|
|
349
|
+
default:
|
|
350
|
+
throw { code: -32601, message: `Unknown tool: ${name}` };
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
// ─── JSON-RPC request dispatcher ───────────────────────────────────────────
|
|
354
|
+
async function handleRequest(req) {
|
|
355
|
+
const { id, method, params } = req;
|
|
356
|
+
// Notifications (no id) don't require a response
|
|
357
|
+
if (id === undefined || id === null) {
|
|
358
|
+
if (method === 'notifications/initialized') {
|
|
359
|
+
initialized = true;
|
|
360
|
+
}
|
|
361
|
+
return null;
|
|
362
|
+
}
|
|
363
|
+
try {
|
|
364
|
+
switch (method) {
|
|
365
|
+
case 'initialize': {
|
|
366
|
+
const p = params;
|
|
367
|
+
const clientProtocol = p?.['protocolVersion'] ?? '2024-11-05';
|
|
368
|
+
void clientProtocol; // we accept any version
|
|
369
|
+
return {
|
|
370
|
+
jsonrpc: '2.0',
|
|
371
|
+
id,
|
|
372
|
+
result: {
|
|
373
|
+
protocolVersion: '2024-11-05',
|
|
374
|
+
capabilities: { tools: {} },
|
|
375
|
+
serverInfo: { name: 'wikimem', version: getVersion() },
|
|
376
|
+
},
|
|
377
|
+
};
|
|
378
|
+
}
|
|
379
|
+
case 'tools/list':
|
|
380
|
+
return {
|
|
381
|
+
jsonrpc: '2.0',
|
|
382
|
+
id,
|
|
383
|
+
result: { tools: TOOLS },
|
|
384
|
+
};
|
|
385
|
+
case 'tools/call': {
|
|
386
|
+
const p = params;
|
|
387
|
+
if (!p?.name) {
|
|
388
|
+
return {
|
|
389
|
+
jsonrpc: '2.0',
|
|
390
|
+
id,
|
|
391
|
+
error: { code: -32602, message: 'Missing tool name in params' },
|
|
392
|
+
};
|
|
393
|
+
}
|
|
394
|
+
const toolResult = await handleToolCall(p.name, p.arguments ?? {});
|
|
395
|
+
return {
|
|
396
|
+
jsonrpc: '2.0',
|
|
397
|
+
id,
|
|
398
|
+
result: {
|
|
399
|
+
content: [
|
|
400
|
+
{ type: 'text', text: JSON.stringify(toolResult, null, 2) },
|
|
401
|
+
],
|
|
402
|
+
},
|
|
403
|
+
};
|
|
404
|
+
}
|
|
405
|
+
// Gracefully handle ping and other optional lifecycle methods
|
|
406
|
+
case 'ping':
|
|
407
|
+
return { jsonrpc: '2.0', id, result: {} };
|
|
408
|
+
default:
|
|
409
|
+
return {
|
|
410
|
+
jsonrpc: '2.0',
|
|
411
|
+
id,
|
|
412
|
+
error: { code: -32601, message: `Method not found: ${method}` },
|
|
413
|
+
};
|
|
414
|
+
}
|
|
415
|
+
}
|
|
416
|
+
catch (err) {
|
|
417
|
+
const rpcErr = err;
|
|
418
|
+
if (typeof rpcErr.code === 'number') {
|
|
419
|
+
return { jsonrpc: '2.0', id, error: { code: rpcErr.code, message: rpcErr.message ?? 'Unknown error' } };
|
|
420
|
+
}
|
|
421
|
+
return {
|
|
422
|
+
jsonrpc: '2.0',
|
|
423
|
+
id,
|
|
424
|
+
error: { code: -32603, message: err instanceof Error ? err.message : String(err) },
|
|
425
|
+
};
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
// ─── Helpers ───────────────────────────────────────────────────────────────
|
|
429
|
+
function getVersion() {
|
|
430
|
+
try {
|
|
431
|
+
const pkgPath = join(__dirname, '..', 'package.json');
|
|
432
|
+
const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
|
|
433
|
+
return pkg.version;
|
|
434
|
+
}
|
|
435
|
+
catch {
|
|
436
|
+
return '0.0.0';
|
|
437
|
+
}
|
|
438
|
+
}
|
|
439
|
+
function send(response) {
|
|
440
|
+
process.stdout.write(JSON.stringify(response) + '\n');
|
|
441
|
+
}
|
|
442
|
+
// ─── Main entrypoint ───────────────────────────────────────────────────────
|
|
443
|
+
export async function startMcpServer(vault) {
|
|
444
|
+
vaultRoot = resolve(vault);
|
|
445
|
+
// MCP servers must NOT write anything to stdout before receiving initialize.
|
|
446
|
+
// All startup noise goes to stderr.
|
|
447
|
+
process.stderr.write(`[wikimem-mcp] Starting. Vault: ${vaultRoot}\n`);
|
|
448
|
+
const rl = createInterface({ input: process.stdin, terminal: false });
|
|
449
|
+
rl.on('line', (line) => {
|
|
450
|
+
const trimmed = line.trim();
|
|
451
|
+
if (!trimmed)
|
|
452
|
+
return;
|
|
453
|
+
let req;
|
|
454
|
+
try {
|
|
455
|
+
req = JSON.parse(trimmed);
|
|
456
|
+
}
|
|
457
|
+
catch {
|
|
458
|
+
send({
|
|
459
|
+
jsonrpc: '2.0',
|
|
460
|
+
id: null,
|
|
461
|
+
error: { code: -32700, message: 'Parse error: invalid JSON' },
|
|
462
|
+
});
|
|
463
|
+
return;
|
|
464
|
+
}
|
|
465
|
+
handleRequest(req)
|
|
466
|
+
.then((response) => {
|
|
467
|
+
if (response)
|
|
468
|
+
send(response);
|
|
469
|
+
})
|
|
470
|
+
.catch((err) => {
|
|
471
|
+
send({
|
|
472
|
+
jsonrpc: '2.0',
|
|
473
|
+
id: req.id ?? null,
|
|
474
|
+
error: { code: -32603, message: err instanceof Error ? err.message : String(err) },
|
|
475
|
+
});
|
|
476
|
+
});
|
|
477
|
+
});
|
|
478
|
+
rl.on('close', () => {
|
|
479
|
+
process.stderr.write('[wikimem-mcp] stdin closed, shutting down.\n');
|
|
480
|
+
process.exit(0);
|
|
481
|
+
});
|
|
482
|
+
}
|
|
483
|
+
//# sourceMappingURL=mcp-server.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Extended MCP tool handlers for WikiMem.
|
|
3
|
+
*
|
|
4
|
+
* Handles: wikimem_observe, wikimem_improve, wikimem_pipeline,
|
|
5
|
+
* wikimem_scrape, wikimem_connectors
|
|
6
|
+
*
|
|
7
|
+
* All imports are dynamic to keep MCP server startup fast.
|
|
8
|
+
*/
|
|
9
|
+
import type { VaultConfig } from './core/vault.js';
|
|
10
|
+
export declare function handleObserve(config: VaultConfig, args: Record<string, unknown>): Promise<unknown>;
|
|
11
|
+
export declare function handleImprove(config: VaultConfig, args: Record<string, unknown>): Promise<unknown>;
|
|
12
|
+
export declare function handlePipeline(vaultRoot: string, args: Record<string, unknown>): Promise<unknown>;
|
|
13
|
+
export declare function handleScrape(vaultRoot: string, args: Record<string, unknown>): Promise<unknown>;
|
|
14
|
+
export declare function handleConnectors(vaultRoot: string, args: Record<string, unknown>): Promise<unknown>;
|
|
15
|
+
//# sourceMappingURL=mcp-tools-extended.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-tools-extended.d.ts","sourceRoot":"","sources":["../src/mcp-tools-extended.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAOnD,wBAAsB,aAAa,CACjC,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,OAAO,CAAC,CA+ClB;AAID,wBAAsB,aAAa,CACjC,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,OAAO,CAAC,CAsClB;AAID,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,OAAO,CAAC,CA2ClB;AAID,wBAAsB,YAAY,CAChC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,OAAO,CAAC,CAuClB;AAID,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,OAAO,CAAC,CA4HlB"}
|