@powerhousedao/reactor-mcp 4.1.0-dev.2
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/LICENSE +661 -0
- package/dist/src/cli.d.ts +2 -0
- package/dist/src/cli.d.ts.map +1 -0
- package/dist/src/cli.js +6 -0
- package/dist/src/cli.js.map +1 -0
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +11 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/reactor.d.ts +43 -0
- package/dist/src/reactor.d.ts.map +1 -0
- package/dist/src/reactor.js +142 -0
- package/dist/src/reactor.js.map +1 -0
- package/dist/src/server.d.ts +4 -0
- package/dist/src/server.d.ts.map +1 -0
- package/dist/src/server.js +781 -0
- package/dist/src/server.js.map +1 -0
- package/dist/src/utils.d.ts +10 -0
- package/dist/src/utils.d.ts.map +1 -0
- package/dist/src/utils.js +57 -0
- package/dist/src/utils.js.map +1 -0
- package/dist/tsconfig.lib.tsbuildinfo +1 -0
- package/package.json +51 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAIA,wBAAsB,IAAI,kBAOzB"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
2
|
+
import { initDocumentModelMcp } from "./reactor.js";
|
|
3
|
+
import { createServer } from "./server.js";
|
|
4
|
+
export async function init() {
|
|
5
|
+
const documentModelMcp = await initDocumentModelMcp();
|
|
6
|
+
const server = createServer(documentModelMcp);
|
|
7
|
+
// Start receiving messages on stdin and sending messages on stdout
|
|
8
|
+
const transport = new StdioServerTransport();
|
|
9
|
+
await server.connect(transport);
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,CAAC,KAAK,UAAU,IAAI;IACxB,MAAM,gBAAgB,GAAG,MAAM,oBAAoB,EAAE,CAAC;IACtD,MAAM,MAAM,GAAG,YAAY,CAAC,gBAAgB,CAAC,CAAC;IAE9C,mEAAmE;IACnE,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { type IDocumentDriveServer } from "document-drive";
|
|
2
|
+
import { type IOperationResult } from "document-drive/server/types";
|
|
3
|
+
import { type Action, type DocumentModelAction, type DocumentModelDocument, type DocumentModelModule, type DocumentModelState, type PHDocument } from "document-model";
|
|
4
|
+
export interface IReactorMcp {
|
|
5
|
+
getDocument(id: string): Promise<PHDocument>;
|
|
6
|
+
getDocuments(): Promise<string[]>;
|
|
7
|
+
createDocument(documentType: string, name: string): Promise<{
|
|
8
|
+
id: string;
|
|
9
|
+
document: PHDocument;
|
|
10
|
+
}>;
|
|
11
|
+
addAction(documentId: string, action: Action): Promise<IOperationResult>;
|
|
12
|
+
}
|
|
13
|
+
export interface IDocumentModelMcp {
|
|
14
|
+
getDocumentModel(name: string): Promise<DocumentModelState>;
|
|
15
|
+
getDocumentModels(): Promise<Record<string, DocumentModelState>>;
|
|
16
|
+
createDocumentModel(name: string): Promise<DocumentModelDocument>;
|
|
17
|
+
addDocumentModelAction(name: string, action: DocumentModelAction): Promise<IOperationResult<DocumentModelDocument>>;
|
|
18
|
+
}
|
|
19
|
+
declare class ReactorMcp implements IReactorMcp {
|
|
20
|
+
protected reactor: IDocumentDriveServer;
|
|
21
|
+
protected driveSlug: string;
|
|
22
|
+
constructor(reactor: IDocumentDriveServer, driveSlug?: string);
|
|
23
|
+
init(): Promise<void>;
|
|
24
|
+
protected getDocumentModelModule(documentType: string): DocumentModelModule;
|
|
25
|
+
createDocument(documentType: string, name: string): Promise<{
|
|
26
|
+
id: string;
|
|
27
|
+
document: PHDocument;
|
|
28
|
+
}>;
|
|
29
|
+
getDocument(id: string): Promise<PHDocument>;
|
|
30
|
+
getDocuments(): Promise<string[]>;
|
|
31
|
+
addAction(documentId: string, action: Action): Promise<IOperationResult>;
|
|
32
|
+
protected getDocumentModelByName(name: string): Promise<DocumentModelDocument>;
|
|
33
|
+
}
|
|
34
|
+
export declare class DocumentModelMcp extends ReactorMcp implements IDocumentModelMcp {
|
|
35
|
+
getDocumentModel(name: string): Promise<DocumentModelState>;
|
|
36
|
+
getDocumentModels(): Promise<Record<string, DocumentModelState>>;
|
|
37
|
+
createDocumentModel(name: string): Promise<DocumentModelDocument>;
|
|
38
|
+
addDocumentModelAction(name: string, action: DocumentModelAction): Promise<IOperationResult<DocumentModelDocument>>;
|
|
39
|
+
}
|
|
40
|
+
export declare function initReactorMcp(): Promise<ReactorMcp>;
|
|
41
|
+
export declare function initDocumentModelMcp(): Promise<DocumentModelMcp>;
|
|
42
|
+
export {};
|
|
43
|
+
//# sourceMappingURL=reactor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reactor.d.ts","sourceRoot":"","sources":["../../src/reactor.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,oBAAoB,EAC1B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,OAAO,EAEL,KAAK,MAAM,EACX,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,UAAU,EAChB,MAAM,gBAAgB,CAAC;AAMxB,MAAM,WAAW,WAAW;IAC1B,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC7C,YAAY,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAClC,cAAc,CACZ,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,UAAU,CAAA;KAAE,CAAC,CAAC;IACjD,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC1E;AAED,MAAM,WAAW,iBAAiB;IAChC,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC5D,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC;IACjE,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAClE,sBAAsB,CACpB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,mBAAmB,GAC1B,OAAO,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,CAAC,CAAC;CACrD;AAED,cAAM,UAAW,YAAW,WAAW;IAEnC,SAAS,CAAC,OAAO,EAAE,oBAAoB;IAEvC,SAAS,CAAC,SAAS,EAAE,MAAM;gBAFjB,OAAO,EAAE,oBAAoB,EAE7B,SAAS,GAAE,MAAuB;IAGxC,IAAI;IAkBV,SAAS,CAAC,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,mBAAmB;IAWrE,cAAc,CAClB,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,UAAU,CAAA;KAAE,CAAC;IA6BhD,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAItC,YAAY,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAKjC,SAAS,CACb,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,gBAAgB,CAAC;cAYZ,sBAAsB,CACpC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,qBAAqB,CAAC;CAgBlC;AAED,qBAAa,gBAAiB,SAAQ,UAAW,YAAW,iBAAiB;IACrE,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAK3D,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAsBhE,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAQjE,sBAAsB,CAC1B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,mBAAmB,GAC1B,OAAO,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;CAOpD;AAeD,wBAAsB,cAAc,wBAKnC;AAED,wBAAsB,oBAAoB,8BAKzC"}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import { addFile, driveDocumentModelModule, isFileNode, ReactorBuilder, } from "document-drive";
|
|
2
|
+
import { FilesystemStorage } from "document-drive/storage/filesystem";
|
|
3
|
+
import { documentModelDocumentModelModule, } from "document-model";
|
|
4
|
+
import * as z from "document-model/document-model/gen/schema/zod";
|
|
5
|
+
import { validateDocumentModelAction } from "./utils.js";
|
|
6
|
+
const MCP_DRIVE_SLUG = "mcp";
|
|
7
|
+
class ReactorMcp {
|
|
8
|
+
reactor;
|
|
9
|
+
driveSlug;
|
|
10
|
+
constructor(reactor,
|
|
11
|
+
// slug of the drive to store document models
|
|
12
|
+
driveSlug = MCP_DRIVE_SLUG) {
|
|
13
|
+
this.reactor = reactor;
|
|
14
|
+
this.driveSlug = driveSlug;
|
|
15
|
+
}
|
|
16
|
+
async init() {
|
|
17
|
+
try {
|
|
18
|
+
const driveId = await this.reactor.getDriveIdBySlug(this.driveSlug);
|
|
19
|
+
if (driveId) {
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
catch {
|
|
24
|
+
/* create drive */
|
|
25
|
+
}
|
|
26
|
+
await this.reactor.addDrive({
|
|
27
|
+
slug: this.driveSlug,
|
|
28
|
+
global: {
|
|
29
|
+
name: "MCP",
|
|
30
|
+
},
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
getDocumentModelModule(documentType) {
|
|
34
|
+
const documentModels = this.reactor.getDocumentModelModules();
|
|
35
|
+
const documentModelModule = documentModels.find((m) => m.documentModel.id === documentType);
|
|
36
|
+
if (!documentModelModule) {
|
|
37
|
+
throw new Error(`Document model '${documentType}' not found`);
|
|
38
|
+
}
|
|
39
|
+
return documentModelModule;
|
|
40
|
+
}
|
|
41
|
+
async createDocument(documentType, name) {
|
|
42
|
+
const documentModelModule = this.getDocumentModelModule(documentType);
|
|
43
|
+
const document = documentModelModule.utils.createDocument();
|
|
44
|
+
document.header.name = name;
|
|
45
|
+
const result = await this.reactor.addDocument(document);
|
|
46
|
+
const driveId = await this.reactor.getDriveIdBySlug(this.driveSlug);
|
|
47
|
+
const addResult = await this.reactor.addAction(driveId, addFile({
|
|
48
|
+
id: result.header.id,
|
|
49
|
+
documentType: document.header.documentType,
|
|
50
|
+
name,
|
|
51
|
+
}));
|
|
52
|
+
const opError = addResult.operations.at(-1)?.error;
|
|
53
|
+
if (addResult.status !== "SUCCESS") {
|
|
54
|
+
throw new Error(addResult.error?.message);
|
|
55
|
+
}
|
|
56
|
+
else if (opError) {
|
|
57
|
+
throw new Error(opError);
|
|
58
|
+
}
|
|
59
|
+
return {
|
|
60
|
+
id: result.header.id,
|
|
61
|
+
document,
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
getDocument(id) {
|
|
65
|
+
return this.reactor.getDocument(id);
|
|
66
|
+
}
|
|
67
|
+
async getDocuments() {
|
|
68
|
+
const driveId = await this.reactor.getDriveIdBySlug(this.driveSlug);
|
|
69
|
+
return this.reactor.getDocuments(driveId);
|
|
70
|
+
}
|
|
71
|
+
async addAction(documentId, action) {
|
|
72
|
+
const document = await this.getDocument(documentId);
|
|
73
|
+
const documentModelModule = this.getDocumentModelModule(document.header.documentType);
|
|
74
|
+
const result = validateDocumentModelAction(documentModelModule, action);
|
|
75
|
+
if (!result.isValid) {
|
|
76
|
+
throw new Error(result.errors.join(", "));
|
|
77
|
+
}
|
|
78
|
+
return this.reactor.addAction(documentId, action);
|
|
79
|
+
}
|
|
80
|
+
async getDocumentModelByName(name) {
|
|
81
|
+
const drive = await this.reactor.getDriveBySlug(this.driveSlug);
|
|
82
|
+
const id = drive.state.global.nodes.find((n) => n.name === name &&
|
|
83
|
+
isFileNode(n) &&
|
|
84
|
+
n.documentType === documentModelDocumentModelModule.documentModel.id)?.id;
|
|
85
|
+
if (!id) {
|
|
86
|
+
throw new Error(`Document model ${name} not found`);
|
|
87
|
+
}
|
|
88
|
+
const document = await this.reactor.getDocument(id);
|
|
89
|
+
z.DocumentModelStateSchema().parse(document.state.global);
|
|
90
|
+
return document;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
export class DocumentModelMcp extends ReactorMcp {
|
|
94
|
+
async getDocumentModel(name) {
|
|
95
|
+
const document = await this.getDocumentModelByName(name);
|
|
96
|
+
return document.state.global;
|
|
97
|
+
}
|
|
98
|
+
async getDocumentModels() {
|
|
99
|
+
const drive = await this.reactor.getDriveBySlug(this.driveSlug);
|
|
100
|
+
const documents = drive.state.global.nodes.filter((n) => isFileNode(n) &&
|
|
101
|
+
n.documentType === documentModelDocumentModelModule.documentModel.id);
|
|
102
|
+
const documentModels = await Promise.allSettled(documents.map((d) => this.getDocumentModelByName(d.name)));
|
|
103
|
+
return documentModels
|
|
104
|
+
.filter((d) => d.status === "fulfilled")
|
|
105
|
+
.map((d) => d.value)
|
|
106
|
+
.reduce((acc, documentModel) => {
|
|
107
|
+
acc[documentModel.header.name] = documentModel.state.global;
|
|
108
|
+
return acc;
|
|
109
|
+
}, {});
|
|
110
|
+
}
|
|
111
|
+
async createDocumentModel(name) {
|
|
112
|
+
const result = await this.createDocument(documentModelDocumentModelModule.documentModel.id, name);
|
|
113
|
+
return result.document;
|
|
114
|
+
}
|
|
115
|
+
async addDocumentModelAction(name, action) {
|
|
116
|
+
const document = await this.getDocumentModelByName(name);
|
|
117
|
+
return (await this.addAction(document.header.id, action));
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
async function createReactor() {
|
|
121
|
+
const storage = new FilesystemStorage("./.ph/mcp/storage");
|
|
122
|
+
const builder = new ReactorBuilder([
|
|
123
|
+
documentModelDocumentModelModule,
|
|
124
|
+
driveDocumentModelModule,
|
|
125
|
+
]).withStorage(storage);
|
|
126
|
+
const reactor = builder.build();
|
|
127
|
+
await reactor.initialize();
|
|
128
|
+
return reactor;
|
|
129
|
+
}
|
|
130
|
+
export async function initReactorMcp() {
|
|
131
|
+
const reactor = await createReactor();
|
|
132
|
+
const reactorMcp = new ReactorMcp(reactor);
|
|
133
|
+
await reactorMcp.init();
|
|
134
|
+
return reactorMcp;
|
|
135
|
+
}
|
|
136
|
+
export async function initDocumentModelMcp() {
|
|
137
|
+
const reactor = await createReactor();
|
|
138
|
+
const documentModelMcp = new DocumentModelMcp(reactor);
|
|
139
|
+
await documentModelMcp.init();
|
|
140
|
+
return documentModelMcp;
|
|
141
|
+
}
|
|
142
|
+
//# sourceMappingURL=reactor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reactor.js","sourceRoot":"","sources":["../../src/reactor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
2
|
+
import { type IReactorMcp, type IDocumentModelMcp } from "./reactor.js";
|
|
3
|
+
export declare function createServer(reactor: IReactorMcp & IDocumentModelMcp): McpServer;
|
|
4
|
+
//# sourceMappingURL=server.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAEV,MAAM,yCAAyC,CAAC;AAQjD,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAyQxE,wBAAgB,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,iBAAiB,aAylBpE"}
|