@epiccontext/mcp 0.1.55 → 0.1.57
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/dist/api/client.d.ts +27 -1
- package/dist/api/client.d.ts.map +1 -1
- package/dist/api/client.js +102 -0
- package/dist/api/client.js.map +1 -1
- package/dist/cli/commands/add-app.d.ts +9 -0
- package/dist/cli/commands/add-app.d.ts.map +1 -0
- package/dist/cli/commands/add-app.js +111 -0
- package/dist/cli/commands/add-app.js.map +1 -0
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +37 -16
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/pull.d.ts +2 -0
- package/dist/cli/commands/pull.d.ts.map +1 -1
- package/dist/cli/commands/pull.js +122 -67
- package/dist/cli/commands/pull.js.map +1 -1
- package/dist/cli/commands/push.d.ts +2 -0
- package/dist/cli/commands/push.d.ts.map +1 -1
- package/dist/cli/commands/push.js +130 -75
- package/dist/cli/commands/push.js.map +1 -1
- package/dist/cli/commands/serve.d.ts.map +1 -1
- package/dist/cli/commands/serve.js +2 -1
- package/dist/cli/commands/serve.js.map +1 -1
- package/dist/cli/commands/status.d.ts.map +1 -1
- package/dist/cli/commands/status.js +21 -3
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/cli/commands/validate.d.ts.map +1 -1
- package/dist/cli/commands/validate.js +6 -5
- package/dist/cli/commands/validate.js.map +1 -1
- package/dist/cli/config.d.ts +4 -0
- package/dist/cli/config.d.ts.map +1 -1
- package/dist/cli/config.js +20 -0
- package/dist/cli/config.js.map +1 -1
- package/dist/cli/files.d.ts +9 -1
- package/dist/cli/files.d.ts.map +1 -1
- package/dist/cli/files.js +147 -31
- package/dist/cli/files.js.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +12 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/mcp/server.d.ts +1 -0
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +12 -0
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tools/list-documents.d.ts +10 -0
- package/dist/mcp/tools/list-documents.d.ts.map +1 -0
- package/dist/mcp/tools/list-documents.js +86 -0
- package/dist/mcp/tools/list-documents.js.map +1 -0
- package/dist/mcp/tools/read-document.d.ts +10 -0
- package/dist/mcp/tools/read-document.d.ts.map +1 -0
- package/dist/mcp/tools/read-document.js +119 -0
- package/dist/mcp/tools/read-document.js.map +1 -0
- package/dist/mcp/tools/sync-all.d.ts.map +1 -1
- package/dist/mcp/tools/sync-all.js +9 -0
- package/dist/mcp/tools/sync-all.js.map +1 -1
- package/dist/mcp/tools/sync-documents.d.ts +10 -0
- package/dist/mcp/tools/sync-documents.d.ts.map +1 -0
- package/dist/mcp/tools/sync-documents.js +89 -0
- package/dist/mcp/tools/sync-documents.js.map +1 -0
- package/dist/mcp/tools/sync-from-app.d.ts.map +1 -1
- package/dist/mcp/tools/sync-from-app.js +6 -0
- package/dist/mcp/tools/sync-from-app.js.map +1 -1
- package/dist/mcp/tools/sync-to-app.d.ts.map +1 -1
- package/dist/mcp/tools/sync-to-app.js +6 -0
- package/dist/mcp/tools/sync-to-app.js.map +1 -1
- package/dist/skills/generator.d.ts.map +1 -1
- package/dist/skills/generator.js +98 -5
- package/dist/skills/generator.js.map +1 -1
- package/dist/sync/deletions.d.ts +31 -0
- package/dist/sync/deletions.d.ts.map +1 -0
- package/dist/sync/deletions.js +110 -0
- package/dist/sync/deletions.js.map +1 -0
- package/dist/sync/document-files.d.ts +31 -0
- package/dist/sync/document-files.d.ts.map +1 -0
- package/dist/sync/document-files.js +98 -0
- package/dist/sync/document-files.js.map +1 -0
- package/dist/sync/document-manifest.d.ts +22 -0
- package/dist/sync/document-manifest.d.ts.map +1 -0
- package/dist/sync/document-manifest.js +55 -0
- package/dist/sync/document-manifest.js.map +1 -0
- package/dist/sync/document-pull.d.ts +16 -0
- package/dist/sync/document-pull.d.ts.map +1 -0
- package/dist/sync/document-pull.js +149 -0
- package/dist/sync/document-pull.js.map +1 -0
- package/dist/sync/document-push.d.ts +14 -0
- package/dist/sync/document-push.d.ts.map +1 -0
- package/dist/sync/document-push.js +107 -0
- package/dist/sync/document-push.js.map +1 -0
- package/dist/sync/pull.d.ts +4 -0
- package/dist/sync/pull.d.ts.map +1 -1
- package/dist/sync/pull.js +91 -0
- package/dist/sync/pull.js.map +1 -1
- package/dist/sync/push.d.ts +4 -0
- package/dist/sync/push.d.ts.map +1 -1
- package/dist/sync/push.js +44 -1
- package/dist/sync/push.js.map +1 -1
- package/dist/sync/watcher.d.ts.map +1 -1
- package/dist/sync/watcher.js +25 -5
- package/dist/sync/watcher.js.map +1 -1
- package/dist/types/index.d.ts +127 -0
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/cli/index.js
CHANGED
|
@@ -11,6 +11,7 @@ import { serveCommand } from "./commands/serve.js";
|
|
|
11
11
|
import { validateCommand } from "./commands/validate.js";
|
|
12
12
|
import { generateSkillsCommand } from "./commands/generate-skills.js";
|
|
13
13
|
import { addStorybookCommand } from "./commands/add-storybook.js";
|
|
14
|
+
import { addAppCommand } from "./commands/add-app.js";
|
|
14
15
|
const program = new Command();
|
|
15
16
|
program
|
|
16
17
|
.name("epiccontext")
|
|
@@ -50,6 +51,8 @@ program
|
|
|
50
51
|
.option("-f, --force", "Overwrite local changes without confirmation")
|
|
51
52
|
.option("--delete-orphans", "Delete local files that don't exist in cloud (use with caution)")
|
|
52
53
|
.option("--with-skills", "Generate .claude/skills/ for AI coding agents (Claude Code)")
|
|
54
|
+
.option("--with-documents", "Also pull documents from cloud")
|
|
55
|
+
.option("--documents-only", "Only pull documents (skip CONTEXT)")
|
|
53
56
|
.action(pullCommand);
|
|
54
57
|
// Push command - push to cloud (always overwrites cloud with local)
|
|
55
58
|
program
|
|
@@ -57,6 +60,8 @@ program
|
|
|
57
60
|
.description("Push local changes to cloud (overwrites cloud version)")
|
|
58
61
|
.option("-s, --section <type>", "Only push specific section")
|
|
59
62
|
.option("-d, --dry-run", "Preview changes without applying them")
|
|
63
|
+
.option("--with-documents", "Also push documents to cloud")
|
|
64
|
+
.option("--documents-only", "Only push documents (skip CONTEXT)")
|
|
60
65
|
.action(pushCommand);
|
|
61
66
|
// Watch command - auto-push on file changes (local → cloud only)
|
|
62
67
|
program
|
|
@@ -86,6 +91,13 @@ program
|
|
|
86
91
|
.description("Add pre-configured Storybook template with JWT authentication")
|
|
87
92
|
.option("-f, --force", "Overwrite existing files")
|
|
88
93
|
.action(addStorybookCommand);
|
|
94
|
+
// Add app command - register a code repository
|
|
95
|
+
program
|
|
96
|
+
.command("add-app")
|
|
97
|
+
.argument("<path>", "Path to the app/code repository")
|
|
98
|
+
.description("Register a code repository as an app within the project")
|
|
99
|
+
.option("-n, --name <name>", "App name (defaults to folder name)")
|
|
100
|
+
.action(addAppCommand);
|
|
89
101
|
// Error handling
|
|
90
102
|
program.exitOverride();
|
|
91
103
|
export async function run() {
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/server.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import type { EpicContextConfig, PartialEpicContextConfig } from "../types/index
|
|
|
3
3
|
export interface McpServerConfig {
|
|
4
4
|
client: EpicContextClient | null;
|
|
5
5
|
contextPath: string;
|
|
6
|
+
documentsPath?: string;
|
|
6
7
|
config: EpicContextConfig | PartialEpicContextConfig;
|
|
7
8
|
isConfigured?: boolean;
|
|
8
9
|
}
|
package/dist/mcp/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAgBrF,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,iBAAiB,GAAG,wBAAwB,CAAC;IACrD,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,YAAY,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAiIjF"}
|
package/dist/mcp/server.js
CHANGED
|
@@ -11,6 +11,9 @@ import { listBlocksTool, handleListBlocks } from "./tools/list-blocks.js";
|
|
|
11
11
|
import { updateBlockTool, handleUpdateBlock } from "./tools/update-block.js";
|
|
12
12
|
import { createBlockTool, handleCreateBlock } from "./tools/create-block.js";
|
|
13
13
|
import { readContextTool, handleReadContext } from "./tools/read-context.js";
|
|
14
|
+
import { listDocumentsTool, handleListDocuments } from "./tools/list-documents.js";
|
|
15
|
+
import { readDocumentTool, handleReadDocument } from "./tools/read-document.js";
|
|
16
|
+
import { syncDocumentsTool, handleSyncDocuments } from "./tools/sync-documents.js";
|
|
14
17
|
/**
|
|
15
18
|
* Start the MCP server
|
|
16
19
|
*/
|
|
@@ -36,6 +39,9 @@ export async function startMcpServer(serverConfig) {
|
|
|
36
39
|
updateBlockTool,
|
|
37
40
|
createBlockTool,
|
|
38
41
|
readContextTool,
|
|
42
|
+
listDocumentsTool,
|
|
43
|
+
readDocumentTool,
|
|
44
|
+
syncDocumentsTool,
|
|
39
45
|
],
|
|
40
46
|
};
|
|
41
47
|
});
|
|
@@ -88,6 +94,12 @@ export async function startMcpServer(serverConfig) {
|
|
|
88
94
|
return await handleCreateBlock(serverConfig, args);
|
|
89
95
|
case "read_context":
|
|
90
96
|
return await handleReadContext(serverConfig, args);
|
|
97
|
+
case "list_documents":
|
|
98
|
+
return await handleListDocuments(serverConfig, args);
|
|
99
|
+
case "read_document":
|
|
100
|
+
return await handleReadDocument(serverConfig, args);
|
|
101
|
+
case "sync_documents":
|
|
102
|
+
return await handleSyncDocuments(serverConfig, args);
|
|
91
103
|
default:
|
|
92
104
|
return {
|
|
93
105
|
content: [
|
package/dist/mcp/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,oCAAoC,CAAC;AAI5C,eAAe;AACf,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Tool } from "@modelcontextprotocol/sdk/types.js";
|
|
2
|
+
import type { McpServerConfig } from "../server.js";
|
|
3
|
+
export declare const listDocumentsTool: Tool;
|
|
4
|
+
export declare function handleListDocuments(config: McpServerConfig, args: Record<string, unknown>): Promise<{
|
|
5
|
+
content: Array<{
|
|
6
|
+
type: string;
|
|
7
|
+
text: string;
|
|
8
|
+
}>;
|
|
9
|
+
}>;
|
|
10
|
+
//# sourceMappingURL=list-documents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-documents.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/list-documents.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAGpD,eAAO,MAAM,iBAAiB,EAAE,IAmB/B,CAAC;AAEF,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CA8E7D"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { readDocumentManifest } from "../../sync/document-manifest.js";
|
|
2
|
+
export const listDocumentsTool = {
|
|
3
|
+
name: "list_documents",
|
|
4
|
+
description: "List project documents from the local DOCUMENTS folder. Returns file names, types, sizes, and paths. Reads from the local manifest (works offline).",
|
|
5
|
+
inputSchema: {
|
|
6
|
+
type: "object",
|
|
7
|
+
properties: {
|
|
8
|
+
folder: {
|
|
9
|
+
type: "string",
|
|
10
|
+
description: "Filter by folder path (e.g., 'research'). Leave empty for all documents.",
|
|
11
|
+
},
|
|
12
|
+
mimeType: {
|
|
13
|
+
type: "string",
|
|
14
|
+
description: "Filter by MIME type prefix (e.g., 'image/', 'application/pdf').",
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
};
|
|
19
|
+
export async function handleListDocuments(config, args) {
|
|
20
|
+
const folder = args.folder;
|
|
21
|
+
const mimeType = args.mimeType;
|
|
22
|
+
try {
|
|
23
|
+
const documentsPath = config.documentsPath;
|
|
24
|
+
if (!documentsPath) {
|
|
25
|
+
return {
|
|
26
|
+
content: [
|
|
27
|
+
{
|
|
28
|
+
type: "text",
|
|
29
|
+
text: "DOCUMENTS folder not configured. Run 'npx @epiccontext/mcp init' to set up the project structure.",
|
|
30
|
+
},
|
|
31
|
+
],
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
const manifest = readDocumentManifest(documentsPath);
|
|
35
|
+
let entries = manifest.entries;
|
|
36
|
+
// Filter by folder
|
|
37
|
+
if (folder) {
|
|
38
|
+
entries = entries.filter((e) => e.folderPath === folder ||
|
|
39
|
+
e.folderPath?.startsWith(folder + "/") ||
|
|
40
|
+
e.localPath.startsWith(folder + "/"));
|
|
41
|
+
}
|
|
42
|
+
// Filter by MIME type
|
|
43
|
+
if (mimeType) {
|
|
44
|
+
entries = entries.filter((e) => e.mimeType.startsWith(mimeType));
|
|
45
|
+
}
|
|
46
|
+
if (entries.length === 0) {
|
|
47
|
+
return {
|
|
48
|
+
content: [
|
|
49
|
+
{
|
|
50
|
+
type: "text",
|
|
51
|
+
text: manifest.entries.length === 0
|
|
52
|
+
? "No documents synced yet. Run 'npx @epiccontext/mcp pull --with-documents' to download documents."
|
|
53
|
+
: `No documents found matching the filter (${manifest.entries.length} total documents).`,
|
|
54
|
+
},
|
|
55
|
+
],
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
// Format output
|
|
59
|
+
const lines = entries.map((e) => {
|
|
60
|
+
const size = e.fileSize > 1024 * 1024
|
|
61
|
+
? `${(e.fileSize / 1024 / 1024).toFixed(1)}MB`
|
|
62
|
+
: `${(e.fileSize / 1024).toFixed(0)}KB`;
|
|
63
|
+
return `- ${e.localPath} (${e.mimeType}, ${size}) [${e.syncStatus}]`;
|
|
64
|
+
});
|
|
65
|
+
const output = [
|
|
66
|
+
`# Documents (${entries.length} files)`,
|
|
67
|
+
`Last synced: ${manifest.lastSyncAt || "never"}`,
|
|
68
|
+
"",
|
|
69
|
+
...lines,
|
|
70
|
+
].join("\n");
|
|
71
|
+
return {
|
|
72
|
+
content: [{ type: "text", text: output }],
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
catch (error) {
|
|
76
|
+
return {
|
|
77
|
+
content: [
|
|
78
|
+
{
|
|
79
|
+
type: "text",
|
|
80
|
+
text: `Error listing documents: ${error.message}`,
|
|
81
|
+
},
|
|
82
|
+
],
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=list-documents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-documents.js","sourceRoot":"","sources":["../../../src/mcp/tools/list-documents.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Tool } from "@modelcontextprotocol/sdk/types.js";
|
|
2
|
+
import type { McpServerConfig } from "../server.js";
|
|
3
|
+
export declare const readDocumentTool: Tool;
|
|
4
|
+
export declare function handleReadDocument(config: McpServerConfig, args: Record<string, unknown>): Promise<{
|
|
5
|
+
content: Array<{
|
|
6
|
+
type: string;
|
|
7
|
+
text: string;
|
|
8
|
+
}>;
|
|
9
|
+
}>;
|
|
10
|
+
//# sourceMappingURL=read-document.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read-document.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/read-document.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAapD,eAAO,MAAM,gBAAgB,EAAE,IAe9B,CAAC;AAEF,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CA6F7D"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { readDocumentManifest } from "../../sync/document-manifest.js";
|
|
2
|
+
import { resolve, relative } from "path";
|
|
3
|
+
import { readFile } from "fs/promises";
|
|
4
|
+
import { existsSync } from "fs";
|
|
5
|
+
/** MIME types that can be read as text */
|
|
6
|
+
const TEXT_MIME_TYPES = new Set([
|
|
7
|
+
"text/plain",
|
|
8
|
+
"text/csv",
|
|
9
|
+
"text/markdown",
|
|
10
|
+
]);
|
|
11
|
+
export const readDocumentTool = {
|
|
12
|
+
name: "read_document",
|
|
13
|
+
description: "Read a document from the local DOCUMENTS folder. For text/markdown/csv files, returns content. For binary files (PDF, images, Office docs), returns metadata and analysis results if available.",
|
|
14
|
+
inputSchema: {
|
|
15
|
+
type: "object",
|
|
16
|
+
properties: {
|
|
17
|
+
path: {
|
|
18
|
+
type: "string",
|
|
19
|
+
description: "Relative path within DOCUMENTS/ (e.g., 'research/user-interviews.pdf').",
|
|
20
|
+
},
|
|
21
|
+
},
|
|
22
|
+
required: ["path"],
|
|
23
|
+
},
|
|
24
|
+
};
|
|
25
|
+
export async function handleReadDocument(config, args) {
|
|
26
|
+
const requestedPath = args.path;
|
|
27
|
+
try {
|
|
28
|
+
const documentsPath = config.documentsPath;
|
|
29
|
+
if (!documentsPath) {
|
|
30
|
+
return {
|
|
31
|
+
content: [
|
|
32
|
+
{
|
|
33
|
+
type: "text",
|
|
34
|
+
text: "DOCUMENTS folder not configured.",
|
|
35
|
+
},
|
|
36
|
+
],
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
const fullPath = resolve(documentsPath, requestedPath);
|
|
40
|
+
// Security check
|
|
41
|
+
const relativePath = relative(documentsPath, fullPath);
|
|
42
|
+
if (relativePath.startsWith("..")) {
|
|
43
|
+
return {
|
|
44
|
+
content: [
|
|
45
|
+
{
|
|
46
|
+
type: "text",
|
|
47
|
+
text: "Error: Path must be within DOCUMENTS folder.",
|
|
48
|
+
},
|
|
49
|
+
],
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
if (!existsSync(fullPath)) {
|
|
53
|
+
return {
|
|
54
|
+
content: [
|
|
55
|
+
{
|
|
56
|
+
type: "text",
|
|
57
|
+
text: `File not found: ${requestedPath}. Run 'npx @epiccontext/mcp pull --with-documents' to download documents.`,
|
|
58
|
+
},
|
|
59
|
+
],
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
// Find manifest entry for metadata
|
|
63
|
+
const manifest = readDocumentManifest(documentsPath);
|
|
64
|
+
const entry = manifest.entries.find((e) => e.localPath === requestedPath);
|
|
65
|
+
// Check if it's a text file we can read
|
|
66
|
+
const mimeType = entry?.mimeType || "";
|
|
67
|
+
if (TEXT_MIME_TYPES.has(mimeType)) {
|
|
68
|
+
const content = await readFile(fullPath, "utf-8");
|
|
69
|
+
const header = entry
|
|
70
|
+
? `# ${entry.name}\nType: ${entry.mimeType} | Size: ${formatSize(entry.fileSize)} | Synced: ${entry.syncStatus}\n\n---\n\n`
|
|
71
|
+
: "";
|
|
72
|
+
return {
|
|
73
|
+
content: [{ type: "text", text: header + content }],
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
// Binary file — return metadata only
|
|
77
|
+
const metadata = entry
|
|
78
|
+
? {
|
|
79
|
+
name: entry.name,
|
|
80
|
+
fileName: entry.fileName,
|
|
81
|
+
mimeType: entry.mimeType,
|
|
82
|
+
fileSize: formatSize(entry.fileSize),
|
|
83
|
+
localPath: entry.localPath,
|
|
84
|
+
syncStatus: entry.syncStatus,
|
|
85
|
+
cloudUpdatedAt: entry.cloudUpdatedAt,
|
|
86
|
+
folderPath: entry.folderPath,
|
|
87
|
+
}
|
|
88
|
+
: {
|
|
89
|
+
path: requestedPath,
|
|
90
|
+
note: "No manifest entry found. File may have been added locally but not synced.",
|
|
91
|
+
};
|
|
92
|
+
return {
|
|
93
|
+
content: [
|
|
94
|
+
{
|
|
95
|
+
type: "text",
|
|
96
|
+
text: `# Document: ${requestedPath}\n\nThis is a binary file and cannot be displayed as text.\n\n## Metadata\n\n\`\`\`json\n${JSON.stringify(metadata, null, 2)}\n\`\`\`\n\nTo view this file, open it with an appropriate application.`,
|
|
97
|
+
},
|
|
98
|
+
],
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
catch (error) {
|
|
102
|
+
return {
|
|
103
|
+
content: [
|
|
104
|
+
{
|
|
105
|
+
type: "text",
|
|
106
|
+
text: `Error reading document: ${error.message}`,
|
|
107
|
+
},
|
|
108
|
+
],
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
function formatSize(bytes) {
|
|
113
|
+
if (bytes > 1024 * 1024)
|
|
114
|
+
return `${(bytes / 1024 / 1024).toFixed(1)}MB`;
|
|
115
|
+
if (bytes > 1024)
|
|
116
|
+
return `${(bytes / 1024).toFixed(0)}KB`;
|
|
117
|
+
return `${bytes}B`;
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=read-document.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read-document.js","sourceRoot":"","sources":["../../../src/mcp/tools/read-document.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-all.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/sync-all.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAIpD,eAAO,MAAM,WAAW,EAAE,IAoBzB,CAAC;AAEF,wBAAsB,aAAa,CACjC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"sync-all.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/sync-all.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAIpD,eAAO,MAAM,WAAW,EAAE,IAoBzB,CAAC;AAEF,wBAAsB,aAAa,CACjC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CA8D7D"}
|
|
@@ -52,6 +52,15 @@ export async function handleSyncAll(config, args) {
|
|
|
52
52
|
let summary = `Sync ${dryRun ? "(dry run) " : ""}complete:\n`;
|
|
53
53
|
summary += `- Pulled: ${pullResult.filesWritten} files written\n`;
|
|
54
54
|
summary += `- Pushed: ${pushResult.result.created} created, ${pushResult.result.updated} updated`;
|
|
55
|
+
if (pullResult.filesDeletedByManifest && pullResult.filesDeletedByManifest > 0) {
|
|
56
|
+
summary += `\n- Deleted locally (via manifest): ${pullResult.filesDeletedByManifest} files`;
|
|
57
|
+
}
|
|
58
|
+
if (pushResult.archivedByManifest && pushResult.archivedByManifest > 0) {
|
|
59
|
+
summary += `\n- Archived in cloud (via manifest): ${pushResult.archivedByManifest} blocks`;
|
|
60
|
+
}
|
|
61
|
+
if (pushResult.autoDetectedDeletions && pushResult.autoDetectedDeletions > 0) {
|
|
62
|
+
summary += `\n- Auto-detected local deletions: ${pushResult.autoDetectedDeletions}`;
|
|
63
|
+
}
|
|
55
64
|
if (pushResult.result.conflicts.length > 0) {
|
|
56
65
|
summary += `\n- Conflicts: ${pushResult.result.conflicts.length}`;
|
|
57
66
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-all.js","sourceRoot":"","sources":["../../../src/mcp/tools/sync-all.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,MAAM,WAAW,GAAS;IAC/B,IAAI,EAAE,UAAU;IAChB,WAAW,EACT,6FAA6F;IAC/F,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,kBAAkB,EAAE;gBAClB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,aAAa,CAAC;gBAChD,OAAO,EAAE,WAAW;gBACpB,WAAW,EAAE,mDAAmD;aACjE;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,uCAAuC;aACrD;SACF;KACF;CACF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAAuB,EACvB,IAA6B;IAE7B,MAAM,MAAM,GAAI,IAAI,CAAC,MAAkB,IAAI,KAAK,CAAC;IACjD,MAAM,kBAAkB,GAAI,IAAI,CAAC,kBAA6B,IAAI,WAAW,CAAC;IAE9E,gFAAgF;IAChF,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,MAAO,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IAE3E,0BAA0B;IAC1B,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,MAAO,EAAE,MAAM,CAAC,WAAW,EAAE;QACvE,MAAM;QACN,kBAAkB,EAChB,kBAAkB,KAAK,YAAY;YACjC,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,kBAAkB,KAAK,aAAa;gBACtC,CAAC,CAAC,WAAW;gBACb,CAAC,CAAC,WAAW;KAClB,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG;QACb,MAAM;QACN,IAAI,EAAE;YACJ,YAAY,EAAE,UAAU,CAAC,YAAY;YACrC,YAAY,EAAE,UAAU,CAAC,YAAY;SACtC;QACD,IAAI,EAAE;YACJ,cAAc,EAAE,UAAU,CAAC,cAAc;YACzC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,OAAO;YAClC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,OAAO;YAClC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,OAAO;YAClC,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM;YAC7C,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM;SACxC;KACF,CAAC;IAEF,IAAI,OAAO,GAAG,QAAQ,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC;IAC9D,OAAO,IAAI,aAAa,UAAU,CAAC,YAAY,kBAAkB,CAAC;IAClE,OAAO,IAAI,aAAa,UAAU,CAAC,MAAM,CAAC,OAAO,aAAa,UAAU,CAAC,MAAM,CAAC,OAAO,UAAU,CAAC;IAElG,IAAI,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3C,OAAO,IAAI,kBAAkB,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;IACpE,CAAC;IAED,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;aACzD;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"sync-all.js","sourceRoot":"","sources":["../../../src/mcp/tools/sync-all.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Tool } from "@modelcontextprotocol/sdk/types.js";
|
|
2
|
+
import type { McpServerConfig } from "../server.js";
|
|
3
|
+
export declare const syncDocumentsTool: Tool;
|
|
4
|
+
export declare function handleSyncDocuments(config: McpServerConfig, args: Record<string, unknown>): Promise<{
|
|
5
|
+
content: Array<{
|
|
6
|
+
type: string;
|
|
7
|
+
text: string;
|
|
8
|
+
}>;
|
|
9
|
+
}>;
|
|
10
|
+
//# sourceMappingURL=sync-documents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-documents.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/sync-documents.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAIpD,eAAO,MAAM,iBAAiB,EAAE,IAwB/B,CAAC;AAEF,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CA+E7D"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { pullDocuments } from "../../sync/document-pull.js";
|
|
2
|
+
import { pushDocuments } from "../../sync/document-push.js";
|
|
3
|
+
export const syncDocumentsTool = {
|
|
4
|
+
name: "sync_documents",
|
|
5
|
+
description: "Synchronize documents between local DOCUMENTS folder and EpicContext cloud. Supports pull (download from cloud), push (upload to cloud), or both.",
|
|
6
|
+
inputSchema: {
|
|
7
|
+
type: "object",
|
|
8
|
+
properties: {
|
|
9
|
+
direction: {
|
|
10
|
+
type: "string",
|
|
11
|
+
enum: ["pull", "push", "both"],
|
|
12
|
+
description: "Sync direction: 'pull' downloads from cloud, 'push' uploads to cloud, 'both' does pull then push. Default: 'both'.",
|
|
13
|
+
},
|
|
14
|
+
dryRun: {
|
|
15
|
+
type: "boolean",
|
|
16
|
+
description: "Preview changes without applying them. Default: false.",
|
|
17
|
+
},
|
|
18
|
+
force: {
|
|
19
|
+
type: "boolean",
|
|
20
|
+
description: "For pull: overwrite local files even if newer. Default: false.",
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
};
|
|
25
|
+
export async function handleSyncDocuments(config, args) {
|
|
26
|
+
const direction = args.direction || "both";
|
|
27
|
+
const dryRun = args.dryRun || false;
|
|
28
|
+
const force = args.force || false;
|
|
29
|
+
try {
|
|
30
|
+
if (!config.client) {
|
|
31
|
+
return {
|
|
32
|
+
content: [
|
|
33
|
+
{
|
|
34
|
+
type: "text",
|
|
35
|
+
text: "Not connected to EpicContext. Run 'npx @epiccontext/mcp link' first.",
|
|
36
|
+
},
|
|
37
|
+
],
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
const documentsPath = config.documentsPath;
|
|
41
|
+
if (!documentsPath) {
|
|
42
|
+
return {
|
|
43
|
+
content: [
|
|
44
|
+
{
|
|
45
|
+
type: "text",
|
|
46
|
+
text: "DOCUMENTS folder not configured. Run 'npx @epiccontext/mcp init' to set up.",
|
|
47
|
+
},
|
|
48
|
+
],
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
const results = [];
|
|
52
|
+
if (direction === "pull" || direction === "both") {
|
|
53
|
+
const pullResult = await pullDocuments(config.client, documentsPath, {
|
|
54
|
+
dryRun,
|
|
55
|
+
force,
|
|
56
|
+
});
|
|
57
|
+
results.push(`## Pull Results${dryRun ? " (dry run)" : ""}`, `- Downloaded: ${pullResult.downloaded}`, `- Skipped: ${pullResult.skipped}`, `- Deleted: ${pullResult.deleted}`, pullResult.errors.length > 0
|
|
58
|
+
? `- Errors: ${pullResult.errors.map((e) => `${e.path}: ${e.error}`).join(", ")}`
|
|
59
|
+
: "");
|
|
60
|
+
}
|
|
61
|
+
if (direction === "push" || direction === "both") {
|
|
62
|
+
const pushResult = await pushDocuments(config.client, documentsPath, {
|
|
63
|
+
dryRun,
|
|
64
|
+
});
|
|
65
|
+
results.push(`## Push Results${dryRun ? " (dry run)" : ""}`, `- Uploaded: ${pushResult.uploaded}`, `- Skipped: ${pushResult.skipped}`, pushResult.errors.length > 0
|
|
66
|
+
? `- Errors: ${pushResult.errors.map((e) => `${e.path}: ${e.error}`).join(", ")}`
|
|
67
|
+
: "");
|
|
68
|
+
}
|
|
69
|
+
return {
|
|
70
|
+
content: [
|
|
71
|
+
{
|
|
72
|
+
type: "text",
|
|
73
|
+
text: results.filter(Boolean).join("\n"),
|
|
74
|
+
},
|
|
75
|
+
],
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
catch (error) {
|
|
79
|
+
return {
|
|
80
|
+
content: [
|
|
81
|
+
{
|
|
82
|
+
type: "text",
|
|
83
|
+
text: `Error syncing documents: ${error.message}`,
|
|
84
|
+
},
|
|
85
|
+
],
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=sync-documents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-documents.js","sourceRoot":"","sources":["../../../src/mcp/tools/sync-documents.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-from-app.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/sync-from-app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAGpD,eAAO,MAAM,eAAe,EAAE,IAkB7B,CAAC;AAEF,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"sync-from-app.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/sync-from-app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAGpD,eAAO,MAAM,eAAe,EAAE,IAkB7B,CAAC;AAEF,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CA6B7D"}
|
|
@@ -28,6 +28,12 @@ export async function handleSyncFromApp(config, args) {
|
|
|
28
28
|
summary += `- Total files: ${result.totalFiles}\n`;
|
|
29
29
|
summary += `- Written: ${result.filesWritten}\n`;
|
|
30
30
|
summary += `- Skipped: ${result.filesSkipped}`;
|
|
31
|
+
if (result.filesDeletedByManifest && result.filesDeletedByManifest > 0) {
|
|
32
|
+
summary += `\n- Deleted via deletion manifest: ${result.filesDeletedByManifest}`;
|
|
33
|
+
for (const deletedPath of result.deletedByManifestPaths || []) {
|
|
34
|
+
summary += `\n - ${deletedPath}`;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
31
37
|
return {
|
|
32
38
|
content: [
|
|
33
39
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-from-app.js","sourceRoot":"","sources":["../../../src/mcp/tools/sync-from-app.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,MAAM,CAAC,MAAM,eAAe,GAAS;IACnC,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,8DAA8D;IAC3E,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,6CAA6C;aAChD;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,gDAAgD;aAC9D;SACF;KACF;CACF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAuB,EACvB,IAA6B;IAE7B,MAAM,OAAO,GAAG,IAAI,CAAC,OAA6B,CAAC;IACnD,MAAM,KAAK,GAAI,IAAI,CAAC,KAAiB,IAAI,KAAK,CAAC;IAE/C,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,MAAO,EAAE,MAAM,CAAC,WAAW,EAAE;QACrE,OAAO;QACP,KAAK;KACN,CAAC,CAAC;IAEH,IAAI,OAAO,GAAG,kBAAkB,CAAC;IACjC,OAAO,IAAI,kBAAkB,MAAM,CAAC,UAAU,IAAI,CAAC;IACnD,OAAO,IAAI,cAAc,MAAM,CAAC,YAAY,IAAI,CAAC;IACjD,OAAO,IAAI,cAAc,MAAM,CAAC,YAAY,EAAE,CAAC;IAE/C,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,OAAO;aACd;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"sync-from-app.js","sourceRoot":"","sources":["../../../src/mcp/tools/sync-from-app.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,MAAM,CAAC,MAAM,eAAe,GAAS;IACnC,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,8DAA8D;IAC3E,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,6CAA6C;aAChD;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,gDAAgD;aAC9D;SACF;KACF;CACF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAuB,EACvB,IAA6B;IAE7B,MAAM,OAAO,GAAG,IAAI,CAAC,OAA6B,CAAC;IACnD,MAAM,KAAK,GAAI,IAAI,CAAC,KAAiB,IAAI,KAAK,CAAC;IAE/C,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,MAAO,EAAE,MAAM,CAAC,WAAW,EAAE;QACrE,OAAO;QACP,KAAK;KACN,CAAC,CAAC;IAEH,IAAI,OAAO,GAAG,kBAAkB,CAAC;IACjC,OAAO,IAAI,kBAAkB,MAAM,CAAC,UAAU,IAAI,CAAC;IACnD,OAAO,IAAI,cAAc,MAAM,CAAC,YAAY,IAAI,CAAC;IACjD,OAAO,IAAI,cAAc,MAAM,CAAC,YAAY,EAAE,CAAC;IAE/C,IAAI,MAAM,CAAC,sBAAsB,IAAI,MAAM,CAAC,sBAAsB,GAAG,CAAC,EAAE,CAAC;QACvE,OAAO,IAAI,sCAAsC,MAAM,CAAC,sBAAsB,EAAE,CAAC;QACjF,KAAK,MAAM,WAAW,IAAI,MAAM,CAAC,sBAAsB,IAAI,EAAE,EAAE,CAAC;YAC9D,OAAO,IAAI,SAAS,WAAW,EAAE,CAAC;QACpC,CAAC;IACH,CAAC;IAED,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,OAAO;aACd;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-to-app.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/sync-to-app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAGpD,eAAO,MAAM,aAAa,EAAE,IAkB3B,CAAC;AAEF,wBAAsB,eAAe,CACnC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"sync-to-app.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/sync-to-app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAGpD,eAAO,MAAM,aAAa,EAAE,IAkB3B,CAAC;AAEF,wBAAsB,eAAe,CACnC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CA6C7D"}
|
|
@@ -29,6 +29,12 @@ export async function handleSyncToApp(config, args) {
|
|
|
29
29
|
summary += `- Created: ${result.result.created}\n`;
|
|
30
30
|
summary += `- Updated: ${result.result.updated}\n`;
|
|
31
31
|
summary += `- Skipped: ${result.result.skipped}`;
|
|
32
|
+
if (result.archivedByManifest && result.archivedByManifest > 0) {
|
|
33
|
+
summary += `\n- Archived via deletion manifest: ${result.archivedByManifest}`;
|
|
34
|
+
}
|
|
35
|
+
if (result.autoDetectedDeletions && result.autoDetectedDeletions > 0) {
|
|
36
|
+
summary += `\n- Auto-detected local deletions: ${result.autoDetectedDeletions}`;
|
|
37
|
+
}
|
|
32
38
|
if (result.result.conflicts.length > 0) {
|
|
33
39
|
summary += `\n- Conflicts: ${result.result.conflicts.length}`;
|
|
34
40
|
for (const conflict of result.result.conflicts) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-to-app.js","sourceRoot":"","sources":["../../../src/mcp/tools/sync-to-app.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,MAAM,aAAa,GAAS;IACjC,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,yDAAyD;IACtE,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,qEAAqE;aACxE;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,iDAAiD;aAC/D;SACF;KACF;CACF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAuB,EACvB,IAA6B;IAE7B,MAAM,IAAI,GAAG,IAAI,CAAC,IAA0B,CAAC;IAC7C,MAAM,KAAK,GAAI,IAAI,CAAC,KAAiB,IAAI,KAAK,CAAC;IAE/C,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,MAAO,EAAE,MAAM,CAAC,WAAW,EAAE;QACnE,IAAI;QACJ,kBAAkB,EAAE,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW;KACxD,CAAC,CAAC;IAEH,IAAI,OAAO,GAAG,kBAAkB,CAAC;IACjC,OAAO,IAAI,sBAAsB,MAAM,CAAC,cAAc,IAAI,CAAC;IAC3D,OAAO,IAAI,cAAc,MAAM,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC;IACnD,OAAO,IAAI,cAAc,MAAM,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC;IACnD,OAAO,IAAI,cAAc,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;IAEjD,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvC,OAAO,IAAI,kBAAkB,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QAC9D,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC/C,OAAO,IAAI,SAAS,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtC,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpC,OAAO,IAAI,eAAe,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACxD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACzC,OAAO,IAAI,SAAS,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK,EAAE,CAAC;QACnD,CAAC;IACH,CAAC;IAED,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,OAAO;aACd;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"sync-to-app.js","sourceRoot":"","sources":["../../../src/mcp/tools/sync-to-app.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,MAAM,aAAa,GAAS;IACjC,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,yDAAyD;IACtE,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,qEAAqE;aACxE;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,iDAAiD;aAC/D;SACF;KACF;CACF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAuB,EACvB,IAA6B;IAE7B,MAAM,IAAI,GAAG,IAAI,CAAC,IAA0B,CAAC;IAC7C,MAAM,KAAK,GAAI,IAAI,CAAC,KAAiB,IAAI,KAAK,CAAC;IAE/C,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,MAAO,EAAE,MAAM,CAAC,WAAW,EAAE;QACnE,IAAI;QACJ,kBAAkB,EAAE,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW;KACxD,CAAC,CAAC;IAEH,IAAI,OAAO,GAAG,kBAAkB,CAAC;IACjC,OAAO,IAAI,sBAAsB,MAAM,CAAC,cAAc,IAAI,CAAC;IAC3D,OAAO,IAAI,cAAc,MAAM,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC;IACnD,OAAO,IAAI,cAAc,MAAM,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC;IACnD,OAAO,IAAI,cAAc,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;IAEjD,IAAI,MAAM,CAAC,kBAAkB,IAAI,MAAM,CAAC,kBAAkB,GAAG,CAAC,EAAE,CAAC;QAC/D,OAAO,IAAI,uCAAuC,MAAM,CAAC,kBAAkB,EAAE,CAAC;IAChF,CAAC;IAED,IAAI,MAAM,CAAC,qBAAqB,IAAI,MAAM,CAAC,qBAAqB,GAAG,CAAC,EAAE,CAAC;QACrE,OAAO,IAAI,sCAAsC,MAAM,CAAC,qBAAqB,EAAE,CAAC;IAClF,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvC,OAAO,IAAI,kBAAkB,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QAC9D,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC/C,OAAO,IAAI,SAAS,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtC,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpC,OAAO,IAAI,eAAe,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACxD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACzC,OAAO,IAAI,SAAS,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK,EAAE,CAAC;QACnD,CAAC;IACH,CAAC;IAED,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,OAAO;aACd;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../src/skills/generator.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAkCH,UAAU,aAAa;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,qBAAqB;IAC7B,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;
|
|
1
|
+
{"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../src/skills/generator.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAkCH,UAAU,aAAa;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,qBAAqB;IAC7B,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAkhBD;;GAEG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,qBAAqB,CAsOzE;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,qBAAqB,GAC5B;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAyBvC;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG;IAC3D,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CAGA"}
|