@mcp-z/mcp-drive 1.0.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/LICENSE +21 -0
- package/README.md +163 -0
- package/bin/server.js +5 -0
- package/dist/cjs/constants.d.cts +7 -0
- package/dist/cjs/constants.d.ts +7 -0
- package/dist/cjs/constants.js +18 -0
- package/dist/cjs/constants.js.map +1 -0
- package/dist/cjs/index.d.cts +8 -0
- package/dist/cjs/index.d.ts +8 -0
- package/dist/cjs/index.js +314 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/lib/create-store.d.cts +2 -0
- package/dist/cjs/lib/create-store.d.ts +2 -0
- package/dist/cjs/lib/create-store.js +166 -0
- package/dist/cjs/lib/create-store.js.map +1 -0
- package/dist/cjs/lib/query-builder.d.cts +45 -0
- package/dist/cjs/lib/query-builder.d.ts +45 -0
- package/dist/cjs/lib/query-builder.js +219 -0
- package/dist/cjs/lib/query-builder.js.map +1 -0
- package/dist/cjs/mcp/index.d.cts +3 -0
- package/dist/cjs/mcp/index.d.ts +3 -0
- package/dist/cjs/mcp/index.js +66 -0
- package/dist/cjs/mcp/index.js.map +1 -0
- package/dist/cjs/mcp/prompts/index.d.cts +2 -0
- package/dist/cjs/mcp/prompts/index.d.ts +2 -0
- package/dist/cjs/mcp/prompts/index.js +26 -0
- package/dist/cjs/mcp/prompts/index.js.map +1 -0
- package/dist/cjs/mcp/prompts/organize-files.d.cts +16 -0
- package/dist/cjs/mcp/prompts/organize-files.d.ts +16 -0
- package/dist/cjs/mcp/prompts/organize-files.js +169 -0
- package/dist/cjs/mcp/prompts/organize-files.js.map +1 -0
- package/dist/cjs/mcp/prompts/query-syntax.d.cts +19 -0
- package/dist/cjs/mcp/prompts/query-syntax.d.ts +19 -0
- package/dist/cjs/mcp/prompts/query-syntax.js +169 -0
- package/dist/cjs/mcp/prompts/query-syntax.js.map +1 -0
- package/dist/cjs/mcp/resources/file.d.cts +9 -0
- package/dist/cjs/mcp/resources/file.d.ts +9 -0
- package/dist/cjs/mcp/resources/file.js +247 -0
- package/dist/cjs/mcp/resources/file.js.map +1 -0
- package/dist/cjs/mcp/resources/index.d.cts +1 -0
- package/dist/cjs/mcp/resources/index.d.ts +1 -0
- package/dist/cjs/mcp/resources/index.js +17 -0
- package/dist/cjs/mcp/resources/index.js.map +1 -0
- package/dist/cjs/mcp/tools/file-move-to-trash.d.cts +59 -0
- package/dist/cjs/mcp/tools/file-move-to-trash.d.ts +59 -0
- package/dist/cjs/mcp/tools/file-move-to-trash.js +334 -0
- package/dist/cjs/mcp/tools/file-move-to-trash.js.map +1 -0
- package/dist/cjs/mcp/tools/file-move.d.cts +73 -0
- package/dist/cjs/mcp/tools/file-move.d.ts +73 -0
- package/dist/cjs/mcp/tools/file-move.js +613 -0
- package/dist/cjs/mcp/tools/file-move.js.map +1 -0
- package/dist/cjs/mcp/tools/files-search.d.cts +135 -0
- package/dist/cjs/mcp/tools/files-search.d.ts +135 -0
- package/dist/cjs/mcp/tools/files-search.js +558 -0
- package/dist/cjs/mcp/tools/files-search.js.map +1 -0
- package/dist/cjs/mcp/tools/folder-contents.d.cts +139 -0
- package/dist/cjs/mcp/tools/folder-contents.d.ts +139 -0
- package/dist/cjs/mcp/tools/folder-contents.js +513 -0
- package/dist/cjs/mcp/tools/folder-contents.js.map +1 -0
- package/dist/cjs/mcp/tools/folder-create.d.cts +59 -0
- package/dist/cjs/mcp/tools/folder-create.d.ts +59 -0
- package/dist/cjs/mcp/tools/folder-create.js +368 -0
- package/dist/cjs/mcp/tools/folder-create.js.map +1 -0
- package/dist/cjs/mcp/tools/folder-path.d.cts +49 -0
- package/dist/cjs/mcp/tools/folder-path.d.ts +49 -0
- package/dist/cjs/mcp/tools/folder-path.js +367 -0
- package/dist/cjs/mcp/tools/folder-path.js.map +1 -0
- package/dist/cjs/mcp/tools/folder-search.d.cts +139 -0
- package/dist/cjs/mcp/tools/folder-search.d.ts +139 -0
- package/dist/cjs/mcp/tools/folder-search.js +760 -0
- package/dist/cjs/mcp/tools/folder-search.js.map +1 -0
- package/dist/cjs/mcp/tools/index.d.cts +7 -0
- package/dist/cjs/mcp/tools/index.d.ts +7 -0
- package/dist/cjs/mcp/tools/index.js +46 -0
- package/dist/cjs/mcp/tools/index.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/schemas/drive-query-schema.d.cts +40 -0
- package/dist/cjs/schemas/drive-query-schema.d.ts +40 -0
- package/dist/cjs/schemas/drive-query-schema.js +90 -0
- package/dist/cjs/schemas/drive-query-schema.js.map +1 -0
- package/dist/cjs/schemas/drive-validation.d.cts +48 -0
- package/dist/cjs/schemas/drive-validation.d.ts +48 -0
- package/dist/cjs/schemas/drive-validation.js +96 -0
- package/dist/cjs/schemas/drive-validation.js.map +1 -0
- package/dist/cjs/schemas/index.d.cts +2 -0
- package/dist/cjs/schemas/index.d.ts +2 -0
- package/dist/cjs/schemas/index.js +20 -0
- package/dist/cjs/schemas/index.js.map +1 -0
- package/dist/cjs/setup/config.d.cts +44 -0
- package/dist/cjs/setup/config.d.ts +44 -0
- package/dist/cjs/setup/config.js +201 -0
- package/dist/cjs/setup/config.js.map +1 -0
- package/dist/cjs/setup/http.d.cts +8 -0
- package/dist/cjs/setup/http.d.ts +8 -0
- package/dist/cjs/setup/http.js +260 -0
- package/dist/cjs/setup/http.js.map +1 -0
- package/dist/cjs/setup/index.d.cts +5 -0
- package/dist/cjs/setup/index.d.ts +5 -0
- package/dist/cjs/setup/index.js +46 -0
- package/dist/cjs/setup/index.js.map +1 -0
- package/dist/cjs/setup/oauth-google.d.cts +64 -0
- package/dist/cjs/setup/oauth-google.d.ts +64 -0
- package/dist/cjs/setup/oauth-google.js +347 -0
- package/dist/cjs/setup/oauth-google.js.map +1 -0
- package/dist/cjs/setup/runtime.d.cts +10 -0
- package/dist/cjs/setup/runtime.d.ts +10 -0
- package/dist/cjs/setup/runtime.js +353 -0
- package/dist/cjs/setup/runtime.js.map +1 -0
- package/dist/cjs/setup/stdio.d.cts +7 -0
- package/dist/cjs/setup/stdio.d.ts +7 -0
- package/dist/cjs/setup/stdio.js +239 -0
- package/dist/cjs/setup/stdio.js.map +1 -0
- package/dist/cjs/types.d.cts +45 -0
- package/dist/cjs/types.d.ts +45 -0
- package/dist/cjs/types.js +5 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/esm/constants.d.ts +7 -0
- package/dist/esm/constants.js +7 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/index.d.ts +8 -0
- package/dist/esm/index.js +34 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/lib/create-store.d.ts +2 -0
- package/dist/esm/lib/create-store.js +6 -0
- package/dist/esm/lib/create-store.js.map +1 -0
- package/dist/esm/lib/query-builder.d.ts +45 -0
- package/dist/esm/lib/query-builder.js +184 -0
- package/dist/esm/lib/query-builder.js.map +1 -0
- package/dist/esm/mcp/index.d.ts +3 -0
- package/dist/esm/mcp/index.js +6 -0
- package/dist/esm/mcp/index.js.map +1 -0
- package/dist/esm/mcp/prompts/index.d.ts +2 -0
- package/dist/esm/mcp/prompts/index.js +2 -0
- package/dist/esm/mcp/prompts/index.js.map +1 -0
- package/dist/esm/mcp/prompts/organize-files.d.ts +16 -0
- package/dist/esm/mcp/prompts/organize-files.js +21 -0
- package/dist/esm/mcp/prompts/organize-files.js.map +1 -0
- package/dist/esm/mcp/prompts/query-syntax.d.ts +19 -0
- package/dist/esm/mcp/prompts/query-syntax.js +82 -0
- package/dist/esm/mcp/prompts/query-syntax.js.map +1 -0
- package/dist/esm/mcp/resources/file.d.ts +9 -0
- package/dist/esm/mcp/resources/file.js +77 -0
- package/dist/esm/mcp/resources/file.js.map +1 -0
- package/dist/esm/mcp/resources/index.d.ts +1 -0
- package/dist/esm/mcp/resources/index.js +1 -0
- package/dist/esm/mcp/resources/index.js.map +1 -0
- package/dist/esm/mcp/tools/file-move-to-trash.d.ts +59 -0
- package/dist/esm/mcp/tools/file-move-to-trash.js +118 -0
- package/dist/esm/mcp/tools/file-move-to-trash.js.map +1 -0
- package/dist/esm/mcp/tools/file-move.d.ts +73 -0
- package/dist/esm/mcp/tools/file-move.js +274 -0
- package/dist/esm/mcp/tools/file-move.js.map +1 -0
- package/dist/esm/mcp/tools/files-search.d.ts +135 -0
- package/dist/esm/mcp/tools/files-search.js +254 -0
- package/dist/esm/mcp/tools/files-search.js.map +1 -0
- package/dist/esm/mcp/tools/folder-contents.d.ts +139 -0
- package/dist/esm/mcp/tools/folder-contents.js +214 -0
- package/dist/esm/mcp/tools/folder-contents.js.map +1 -0
- package/dist/esm/mcp/tools/folder-create.d.ts +59 -0
- package/dist/esm/mcp/tools/folder-create.js +140 -0
- package/dist/esm/mcp/tools/folder-create.js.map +1 -0
- package/dist/esm/mcp/tools/folder-path.d.ts +49 -0
- package/dist/esm/mcp/tools/folder-path.js +147 -0
- package/dist/esm/mcp/tools/folder-path.js.map +1 -0
- package/dist/esm/mcp/tools/folder-search.d.ts +139 -0
- package/dist/esm/mcp/tools/folder-search.js +343 -0
- package/dist/esm/mcp/tools/folder-search.js.map +1 -0
- package/dist/esm/mcp/tools/index.d.ts +7 -0
- package/dist/esm/mcp/tools/index.js +7 -0
- package/dist/esm/mcp/tools/index.js.map +1 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/schemas/drive-query-schema.d.ts +40 -0
- package/dist/esm/schemas/drive-query-schema.js +84 -0
- package/dist/esm/schemas/drive-query-schema.js.map +1 -0
- package/dist/esm/schemas/drive-validation.d.ts +48 -0
- package/dist/esm/schemas/drive-validation.js +73 -0
- package/dist/esm/schemas/drive-validation.js.map +1 -0
- package/dist/esm/schemas/index.d.ts +2 -0
- package/dist/esm/schemas/index.js +2 -0
- package/dist/esm/schemas/index.js.map +1 -0
- package/dist/esm/setup/config.d.ts +44 -0
- package/dist/esm/setup/config.js +151 -0
- package/dist/esm/setup/config.js.map +1 -0
- package/dist/esm/setup/http.d.ts +8 -0
- package/dist/esm/setup/http.js +54 -0
- package/dist/esm/setup/http.js.map +1 -0
- package/dist/esm/setup/index.d.ts +5 -0
- package/dist/esm/setup/index.js +5 -0
- package/dist/esm/setup/index.js.map +1 -0
- package/dist/esm/setup/oauth-google.d.ts +64 -0
- package/dist/esm/setup/oauth-google.js +168 -0
- package/dist/esm/setup/oauth-google.js.map +1 -0
- package/dist/esm/setup/runtime.d.ts +10 -0
- package/dist/esm/setup/runtime.js +84 -0
- package/dist/esm/setup/runtime.js.map +1 -0
- package/dist/esm/setup/stdio.d.ts +7 -0
- package/dist/esm/setup/stdio.js +38 -0
- package/dist/esm/setup/stdio.js.map +1 -0
- package/dist/esm/types.d.ts +45 -0
- package/dist/esm/types.js +1 -0
- package/dist/esm/types.js.map +1 -0
- package/package.json +108 -0
|
@@ -0,0 +1,353 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: Object.getOwnPropertyDescriptor(all, name).get
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
get createAuthLayer () {
|
|
13
|
+
return createAuthLayer;
|
|
14
|
+
},
|
|
15
|
+
get createDcrStore () {
|
|
16
|
+
return createDcrStore;
|
|
17
|
+
},
|
|
18
|
+
get createDefaultRuntime () {
|
|
19
|
+
return createDefaultRuntime;
|
|
20
|
+
},
|
|
21
|
+
get createLogger () {
|
|
22
|
+
return createLogger;
|
|
23
|
+
},
|
|
24
|
+
get createLoggingLayer () {
|
|
25
|
+
return createLoggingLayer;
|
|
26
|
+
},
|
|
27
|
+
get createTokenStore () {
|
|
28
|
+
return createTokenStore;
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
var _oauth = require("@mcp-z/oauth");
|
|
32
|
+
var _server = require("@mcp-z/server");
|
|
33
|
+
var _fs = /*#__PURE__*/ _interop_require_wildcard(require("fs"));
|
|
34
|
+
var _path = /*#__PURE__*/ _interop_require_wildcard(require("path"));
|
|
35
|
+
var _pino = /*#__PURE__*/ _interop_require_default(require("pino"));
|
|
36
|
+
var _createstore = /*#__PURE__*/ _interop_require_default(require("../lib/create-store.js"));
|
|
37
|
+
var _index = /*#__PURE__*/ _interop_require_wildcard(require("../mcp/index.js"));
|
|
38
|
+
var _oauthgoogle = require("./oauth-google.js");
|
|
39
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
|
|
40
|
+
try {
|
|
41
|
+
var info = gen[key](arg);
|
|
42
|
+
var value = info.value;
|
|
43
|
+
} catch (error) {
|
|
44
|
+
reject(error);
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
if (info.done) {
|
|
48
|
+
resolve(value);
|
|
49
|
+
} else {
|
|
50
|
+
Promise.resolve(value).then(_next, _throw);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
function _async_to_generator(fn) {
|
|
54
|
+
return function() {
|
|
55
|
+
var self = this, args = arguments;
|
|
56
|
+
return new Promise(function(resolve, reject) {
|
|
57
|
+
var gen = fn.apply(self, args);
|
|
58
|
+
function _next(value) {
|
|
59
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
|
|
60
|
+
}
|
|
61
|
+
function _throw(err) {
|
|
62
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
|
|
63
|
+
}
|
|
64
|
+
_next(undefined);
|
|
65
|
+
});
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
function _interop_require_default(obj) {
|
|
69
|
+
return obj && obj.__esModule ? obj : {
|
|
70
|
+
default: obj
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
function _getRequireWildcardCache(nodeInterop) {
|
|
74
|
+
if (typeof WeakMap !== "function") return null;
|
|
75
|
+
var cacheBabelInterop = new WeakMap();
|
|
76
|
+
var cacheNodeInterop = new WeakMap();
|
|
77
|
+
return (_getRequireWildcardCache = function(nodeInterop) {
|
|
78
|
+
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
|
|
79
|
+
})(nodeInterop);
|
|
80
|
+
}
|
|
81
|
+
function _interop_require_wildcard(obj, nodeInterop) {
|
|
82
|
+
if (!nodeInterop && obj && obj.__esModule) {
|
|
83
|
+
return obj;
|
|
84
|
+
}
|
|
85
|
+
if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
|
|
86
|
+
return {
|
|
87
|
+
default: obj
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
var cache = _getRequireWildcardCache(nodeInterop);
|
|
91
|
+
if (cache && cache.has(obj)) {
|
|
92
|
+
return cache.get(obj);
|
|
93
|
+
}
|
|
94
|
+
var newObj = {
|
|
95
|
+
__proto__: null
|
|
96
|
+
};
|
|
97
|
+
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
98
|
+
for(var key in obj){
|
|
99
|
+
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
100
|
+
var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
|
|
101
|
+
if (desc && (desc.get || desc.set)) {
|
|
102
|
+
Object.defineProperty(newObj, key, desc);
|
|
103
|
+
} else {
|
|
104
|
+
newObj[key] = obj[key];
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
newObj.default = obj;
|
|
109
|
+
if (cache) {
|
|
110
|
+
cache.set(obj, newObj);
|
|
111
|
+
}
|
|
112
|
+
return newObj;
|
|
113
|
+
}
|
|
114
|
+
function _ts_generator(thisArg, body) {
|
|
115
|
+
var f, y, t, _ = {
|
|
116
|
+
label: 0,
|
|
117
|
+
sent: function() {
|
|
118
|
+
if (t[0] & 1) throw t[1];
|
|
119
|
+
return t[1];
|
|
120
|
+
},
|
|
121
|
+
trys: [],
|
|
122
|
+
ops: []
|
|
123
|
+
}, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype), d = Object.defineProperty;
|
|
124
|
+
return d(g, "next", {
|
|
125
|
+
value: verb(0)
|
|
126
|
+
}), d(g, "throw", {
|
|
127
|
+
value: verb(1)
|
|
128
|
+
}), d(g, "return", {
|
|
129
|
+
value: verb(2)
|
|
130
|
+
}), typeof Symbol === "function" && d(g, Symbol.iterator, {
|
|
131
|
+
value: function() {
|
|
132
|
+
return this;
|
|
133
|
+
}
|
|
134
|
+
}), g;
|
|
135
|
+
function verb(n) {
|
|
136
|
+
return function(v) {
|
|
137
|
+
return step([
|
|
138
|
+
n,
|
|
139
|
+
v
|
|
140
|
+
]);
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
function step(op) {
|
|
144
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
145
|
+
while(g && (g = 0, op[0] && (_ = 0)), _)try {
|
|
146
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
147
|
+
if (y = 0, t) op = [
|
|
148
|
+
op[0] & 2,
|
|
149
|
+
t.value
|
|
150
|
+
];
|
|
151
|
+
switch(op[0]){
|
|
152
|
+
case 0:
|
|
153
|
+
case 1:
|
|
154
|
+
t = op;
|
|
155
|
+
break;
|
|
156
|
+
case 4:
|
|
157
|
+
_.label++;
|
|
158
|
+
return {
|
|
159
|
+
value: op[1],
|
|
160
|
+
done: false
|
|
161
|
+
};
|
|
162
|
+
case 5:
|
|
163
|
+
_.label++;
|
|
164
|
+
y = op[1];
|
|
165
|
+
op = [
|
|
166
|
+
0
|
|
167
|
+
];
|
|
168
|
+
continue;
|
|
169
|
+
case 7:
|
|
170
|
+
op = _.ops.pop();
|
|
171
|
+
_.trys.pop();
|
|
172
|
+
continue;
|
|
173
|
+
default:
|
|
174
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
175
|
+
_ = 0;
|
|
176
|
+
continue;
|
|
177
|
+
}
|
|
178
|
+
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
179
|
+
_.label = op[1];
|
|
180
|
+
break;
|
|
181
|
+
}
|
|
182
|
+
if (op[0] === 6 && _.label < t[1]) {
|
|
183
|
+
_.label = t[1];
|
|
184
|
+
t = op;
|
|
185
|
+
break;
|
|
186
|
+
}
|
|
187
|
+
if (t && _.label < t[2]) {
|
|
188
|
+
_.label = t[2];
|
|
189
|
+
_.ops.push(op);
|
|
190
|
+
break;
|
|
191
|
+
}
|
|
192
|
+
if (t[2]) _.ops.pop();
|
|
193
|
+
_.trys.pop();
|
|
194
|
+
continue;
|
|
195
|
+
}
|
|
196
|
+
op = body.call(thisArg, _);
|
|
197
|
+
} catch (e) {
|
|
198
|
+
op = [
|
|
199
|
+
6,
|
|
200
|
+
e
|
|
201
|
+
];
|
|
202
|
+
y = 0;
|
|
203
|
+
} finally{
|
|
204
|
+
f = t = 0;
|
|
205
|
+
}
|
|
206
|
+
if (op[0] & 5) throw op[1];
|
|
207
|
+
return {
|
|
208
|
+
value: op[0] ? op[1] : void 0,
|
|
209
|
+
done: true
|
|
210
|
+
};
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
function createLogger(config) {
|
|
214
|
+
var _config_logLevel;
|
|
215
|
+
var hasStdio = config.transport.type === 'stdio';
|
|
216
|
+
var logsPath = _path.join(config.baseDir, 'logs', "".concat(config.name, ".log"));
|
|
217
|
+
if (hasStdio) _fs.mkdirSync(_path.dirname(logsPath), {
|
|
218
|
+
recursive: true
|
|
219
|
+
});
|
|
220
|
+
return (0, _pino.default)({
|
|
221
|
+
level: (_config_logLevel = config.logLevel) !== null && _config_logLevel !== void 0 ? _config_logLevel : 'info',
|
|
222
|
+
formatters: (0, _oauth.sanitizeForLoggingFormatter)()
|
|
223
|
+
}, hasStdio ? _pino.default.destination({
|
|
224
|
+
dest: logsPath,
|
|
225
|
+
sync: false
|
|
226
|
+
}) : _pino.default.destination(1));
|
|
227
|
+
}
|
|
228
|
+
function createTokenStore(baseDir) {
|
|
229
|
+
return _async_to_generator(function() {
|
|
230
|
+
var storeUri;
|
|
231
|
+
return _ts_generator(this, function(_state) {
|
|
232
|
+
storeUri = process.env.STORE_URI || "file://".concat(_path.join(baseDir, 'tokens.json'));
|
|
233
|
+
return [
|
|
234
|
+
2,
|
|
235
|
+
(0, _createstore.default)(storeUri)
|
|
236
|
+
];
|
|
237
|
+
});
|
|
238
|
+
})();
|
|
239
|
+
}
|
|
240
|
+
function createDcrStore(baseDir, required) {
|
|
241
|
+
return _async_to_generator(function() {
|
|
242
|
+
var dcrStoreUri;
|
|
243
|
+
return _ts_generator(this, function(_state) {
|
|
244
|
+
if (!required) return [
|
|
245
|
+
2,
|
|
246
|
+
undefined
|
|
247
|
+
];
|
|
248
|
+
dcrStoreUri = process.env.DCR_STORE_URI || "file://".concat(_path.join(baseDir, 'dcr.json'));
|
|
249
|
+
return [
|
|
250
|
+
2,
|
|
251
|
+
(0, _createstore.default)(dcrStoreUri)
|
|
252
|
+
];
|
|
253
|
+
});
|
|
254
|
+
})();
|
|
255
|
+
}
|
|
256
|
+
function createAuthLayer(authMiddleware) {
|
|
257
|
+
return {
|
|
258
|
+
withTool: authMiddleware.withToolAuth,
|
|
259
|
+
withResource: authMiddleware.withResourceAuth,
|
|
260
|
+
withPrompt: authMiddleware.withPromptAuth
|
|
261
|
+
};
|
|
262
|
+
}
|
|
263
|
+
function createLoggingLayer(logger) {
|
|
264
|
+
var logging = (0, _server.createLoggingMiddleware)({
|
|
265
|
+
logger: logger
|
|
266
|
+
});
|
|
267
|
+
return {
|
|
268
|
+
withTool: logging.withToolLogging,
|
|
269
|
+
withResource: logging.withResourceLogging,
|
|
270
|
+
withPrompt: logging.withPromptLogging
|
|
271
|
+
};
|
|
272
|
+
}
|
|
273
|
+
function createDefaultRuntime(config, overrides) {
|
|
274
|
+
return _async_to_generator(function() {
|
|
275
|
+
var _config_baseUrl, _ref, _ref1, logger, tokenStore, baseUrl, dcrStore, oauthAdapters, deps, createDomainModules, middlewareFactories;
|
|
276
|
+
return _ts_generator(this, function(_state) {
|
|
277
|
+
switch(_state.label){
|
|
278
|
+
case 0:
|
|
279
|
+
if (config.auth === 'dcr' && config.transport.type !== 'http') throw new Error('DCR mode requires an HTTP transport');
|
|
280
|
+
logger = createLogger(config);
|
|
281
|
+
return [
|
|
282
|
+
4,
|
|
283
|
+
createTokenStore(config.baseDir)
|
|
284
|
+
];
|
|
285
|
+
case 1:
|
|
286
|
+
tokenStore = _state.sent();
|
|
287
|
+
baseUrl = (_config_baseUrl = config.baseUrl) !== null && _config_baseUrl !== void 0 ? _config_baseUrl : config.transport.type === 'http' && config.transport.port ? "http://localhost:".concat(config.transport.port) : undefined;
|
|
288
|
+
return [
|
|
289
|
+
4,
|
|
290
|
+
createDcrStore(config.baseDir, config.auth === 'dcr')
|
|
291
|
+
];
|
|
292
|
+
case 2:
|
|
293
|
+
dcrStore = _state.sent();
|
|
294
|
+
return [
|
|
295
|
+
4,
|
|
296
|
+
(0, _oauthgoogle.createOAuthAdapters)(config, {
|
|
297
|
+
logger: logger,
|
|
298
|
+
tokenStore: tokenStore,
|
|
299
|
+
dcrStore: dcrStore
|
|
300
|
+
}, baseUrl)
|
|
301
|
+
];
|
|
302
|
+
case 3:
|
|
303
|
+
oauthAdapters = _state.sent();
|
|
304
|
+
deps = {
|
|
305
|
+
config: config,
|
|
306
|
+
logger: logger,
|
|
307
|
+
tokenStore: tokenStore,
|
|
308
|
+
oauthAdapters: oauthAdapters,
|
|
309
|
+
baseUrl: baseUrl
|
|
310
|
+
};
|
|
311
|
+
createDomainModules = (_ref = overrides === null || overrides === void 0 ? void 0 : overrides.createDomainModules) !== null && _ref !== void 0 ? _ref : function() {
|
|
312
|
+
return {
|
|
313
|
+
tools: Object.values(_index.toolFactories).map(function(factory) {
|
|
314
|
+
return factory();
|
|
315
|
+
}),
|
|
316
|
+
resources: Object.values(_index.resourceFactories).map(function(factory) {
|
|
317
|
+
return factory();
|
|
318
|
+
}),
|
|
319
|
+
prompts: Object.values(_index.promptFactories).map(function(factory) {
|
|
320
|
+
return factory();
|
|
321
|
+
})
|
|
322
|
+
};
|
|
323
|
+
};
|
|
324
|
+
middlewareFactories = (_ref1 = overrides === null || overrides === void 0 ? void 0 : overrides.middlewareFactories) !== null && _ref1 !== void 0 ? _ref1 : [
|
|
325
|
+
function() {
|
|
326
|
+
return createAuthLayer(oauthAdapters.middleware);
|
|
327
|
+
},
|
|
328
|
+
function() {
|
|
329
|
+
return createLoggingLayer(logger);
|
|
330
|
+
}
|
|
331
|
+
];
|
|
332
|
+
return [
|
|
333
|
+
2,
|
|
334
|
+
{
|
|
335
|
+
deps: deps,
|
|
336
|
+
middlewareFactories: middlewareFactories,
|
|
337
|
+
createDomainModules: createDomainModules,
|
|
338
|
+
close: function() {
|
|
339
|
+
return _async_to_generator(function() {
|
|
340
|
+
return _ts_generator(this, function(_state) {
|
|
341
|
+
return [
|
|
342
|
+
2
|
|
343
|
+
];
|
|
344
|
+
});
|
|
345
|
+
})();
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
];
|
|
349
|
+
}
|
|
350
|
+
});
|
|
351
|
+
})();
|
|
352
|
+
}
|
|
353
|
+
/* CJS INTEROP */ if (exports.__esModule && exports.default) { try { Object.defineProperty(exports.default, '__esModule', { value: true }); for (var key in exports) { exports.default[key] = exports[key]; } } catch (_) {}; module.exports = exports.default; }
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/Projects/ai/mcp-z/servers/mcp-drive/src/setup/runtime.ts"],"sourcesContent":["import { sanitizeForLoggingFormatter } from '@mcp-z/oauth';\nimport type { CachedToken } from '@mcp-z/oauth-google';\nimport type { Logger, MiddlewareLayer } from '@mcp-z/server';\nimport { createLoggingMiddleware } from '@mcp-z/server';\nimport * as fs from 'fs';\nimport * as path from 'path';\nimport pino from 'pino';\nimport createStore from '../lib/create-store.js';\nimport * as mcp from '../mcp/index.js';\nimport type { CommonRuntime, RuntimeDeps, RuntimeOverrides, ServerConfig } from '../types.js';\nimport { type AuthMiddleware, createOAuthAdapters } from './oauth-google.js';\n\nexport function createLogger(config: ServerConfig): Logger {\n const hasStdio = config.transport.type === 'stdio';\n const logsPath = path.join(config.baseDir, 'logs', `${config.name}.log`);\n if (hasStdio) fs.mkdirSync(path.dirname(logsPath), { recursive: true });\n return pino({ level: config.logLevel ?? 'info', formatters: sanitizeForLoggingFormatter() }, hasStdio ? pino.destination({ dest: logsPath, sync: false }) : pino.destination(1));\n}\n\nexport async function createTokenStore(baseDir: string) {\n const storeUri = process.env.STORE_URI || `file://${path.join(baseDir, 'tokens.json')}`;\n return createStore<CachedToken>(storeUri);\n}\n\nexport async function createDcrStore(baseDir: string, required: boolean) {\n if (!required) return undefined;\n const dcrStoreUri = process.env.DCR_STORE_URI || `file://${path.join(baseDir, 'dcr.json')}`;\n return createStore<unknown>(dcrStoreUri);\n}\n\nexport function createAuthLayer(authMiddleware: AuthMiddleware): MiddlewareLayer {\n return {\n withTool: authMiddleware.withToolAuth,\n withResource: authMiddleware.withResourceAuth,\n withPrompt: authMiddleware.withPromptAuth,\n };\n}\n\nexport function createLoggingLayer(logger: Logger): MiddlewareLayer {\n const logging = createLoggingMiddleware({ logger });\n return {\n withTool: logging.withToolLogging,\n withResource: logging.withResourceLogging,\n withPrompt: logging.withPromptLogging,\n };\n}\n\nexport async function createDefaultRuntime(config: ServerConfig, overrides?: RuntimeOverrides): Promise<CommonRuntime> {\n if (config.auth === 'dcr' && config.transport.type !== 'http') throw new Error('DCR mode requires an HTTP transport');\n\n const logger = createLogger(config);\n const tokenStore = await createTokenStore(config.baseDir);\n const baseUrl = config.baseUrl ?? (config.transport.type === 'http' && config.transport.port ? `http://localhost:${config.transport.port}` : undefined);\n const dcrStore = await createDcrStore(config.baseDir, config.auth === 'dcr');\n const oauthAdapters = await createOAuthAdapters(config, { logger, tokenStore, dcrStore }, baseUrl);\n const deps: RuntimeDeps = { config, logger, tokenStore, oauthAdapters, baseUrl };\n const createDomainModules =\n overrides?.createDomainModules ??\n (() => ({\n tools: Object.values(mcp.toolFactories).map((factory) => factory()),\n resources: Object.values(mcp.resourceFactories).map((factory) => factory()),\n prompts: Object.values(mcp.promptFactories).map((factory) => factory()),\n }));\n const middlewareFactories = overrides?.middlewareFactories ?? [() => createAuthLayer(oauthAdapters.middleware), () => createLoggingLayer(logger)];\n\n return {\n deps,\n middlewareFactories,\n createDomainModules,\n close: async () => {},\n };\n}\n"],"names":["createAuthLayer","createDcrStore","createDefaultRuntime","createLogger","createLoggingLayer","createTokenStore","config","hasStdio","transport","type","logsPath","path","join","baseDir","name","fs","mkdirSync","dirname","recursive","pino","level","logLevel","formatters","sanitizeForLoggingFormatter","destination","dest","sync","storeUri","process","env","STORE_URI","createStore","required","dcrStoreUri","undefined","DCR_STORE_URI","authMiddleware","withTool","withToolAuth","withResource","withResourceAuth","withPrompt","withPromptAuth","logger","logging","createLoggingMiddleware","withToolLogging","withResourceLogging","withPromptLogging","overrides","tokenStore","baseUrl","dcrStore","oauthAdapters","deps","createDomainModules","middlewareFactories","auth","Error","port","createOAuthAdapters","tools","Object","values","mcp","toolFactories","map","factory","resources","resourceFactories","prompts","promptFactories","middleware","close"],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
|
+
import type { RuntimeOverrides, ServerConfig } from '../types.js';
|
|
3
|
+
export declare function createStdioServer(config: ServerConfig, overrides?: RuntimeOverrides): Promise<{
|
|
4
|
+
mcpServer: McpServer;
|
|
5
|
+
logger: import("@mcp-z/server").Logger;
|
|
6
|
+
close: () => Promise<void>;
|
|
7
|
+
}>;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
|
+
import type { RuntimeOverrides, ServerConfig } from '../types.js';
|
|
3
|
+
export declare function createStdioServer(config: ServerConfig, overrides?: RuntimeOverrides): Promise<{
|
|
4
|
+
mcpServer: McpServer;
|
|
5
|
+
logger: import("@mcp-z/server").Logger;
|
|
6
|
+
close: () => Promise<void>;
|
|
7
|
+
}>;
|
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "createStdioServer", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return createStdioServer;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _server = require("@mcp-z/server");
|
|
12
|
+
var _mcp = require("@modelcontextprotocol/sdk/server/mcp.js");
|
|
13
|
+
var _runtime = require("./runtime.js");
|
|
14
|
+
function _array_like_to_array(arr, len) {
|
|
15
|
+
if (len == null || len > arr.length) len = arr.length;
|
|
16
|
+
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
17
|
+
return arr2;
|
|
18
|
+
}
|
|
19
|
+
function _array_without_holes(arr) {
|
|
20
|
+
if (Array.isArray(arr)) return _array_like_to_array(arr);
|
|
21
|
+
}
|
|
22
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
|
|
23
|
+
try {
|
|
24
|
+
var info = gen[key](arg);
|
|
25
|
+
var value = info.value;
|
|
26
|
+
} catch (error) {
|
|
27
|
+
reject(error);
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
if (info.done) {
|
|
31
|
+
resolve(value);
|
|
32
|
+
} else {
|
|
33
|
+
Promise.resolve(value).then(_next, _throw);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
function _async_to_generator(fn) {
|
|
37
|
+
return function() {
|
|
38
|
+
var self = this, args = arguments;
|
|
39
|
+
return new Promise(function(resolve, reject) {
|
|
40
|
+
var gen = fn.apply(self, args);
|
|
41
|
+
function _next(value) {
|
|
42
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
|
|
43
|
+
}
|
|
44
|
+
function _throw(err) {
|
|
45
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
|
|
46
|
+
}
|
|
47
|
+
_next(undefined);
|
|
48
|
+
});
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
function _iterable_to_array(iter) {
|
|
52
|
+
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
53
|
+
}
|
|
54
|
+
function _non_iterable_spread() {
|
|
55
|
+
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
56
|
+
}
|
|
57
|
+
function _to_consumable_array(arr) {
|
|
58
|
+
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
|
|
59
|
+
}
|
|
60
|
+
function _unsupported_iterable_to_array(o, minLen) {
|
|
61
|
+
if (!o) return;
|
|
62
|
+
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
63
|
+
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
64
|
+
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
65
|
+
if (n === "Map" || n === "Set") return Array.from(n);
|
|
66
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
67
|
+
}
|
|
68
|
+
function _ts_generator(thisArg, body) {
|
|
69
|
+
var f, y, t, _ = {
|
|
70
|
+
label: 0,
|
|
71
|
+
sent: function() {
|
|
72
|
+
if (t[0] & 1) throw t[1];
|
|
73
|
+
return t[1];
|
|
74
|
+
},
|
|
75
|
+
trys: [],
|
|
76
|
+
ops: []
|
|
77
|
+
}, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype), d = Object.defineProperty;
|
|
78
|
+
return d(g, "next", {
|
|
79
|
+
value: verb(0)
|
|
80
|
+
}), d(g, "throw", {
|
|
81
|
+
value: verb(1)
|
|
82
|
+
}), d(g, "return", {
|
|
83
|
+
value: verb(2)
|
|
84
|
+
}), typeof Symbol === "function" && d(g, Symbol.iterator, {
|
|
85
|
+
value: function() {
|
|
86
|
+
return this;
|
|
87
|
+
}
|
|
88
|
+
}), g;
|
|
89
|
+
function verb(n) {
|
|
90
|
+
return function(v) {
|
|
91
|
+
return step([
|
|
92
|
+
n,
|
|
93
|
+
v
|
|
94
|
+
]);
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
function step(op) {
|
|
98
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
99
|
+
while(g && (g = 0, op[0] && (_ = 0)), _)try {
|
|
100
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
101
|
+
if (y = 0, t) op = [
|
|
102
|
+
op[0] & 2,
|
|
103
|
+
t.value
|
|
104
|
+
];
|
|
105
|
+
switch(op[0]){
|
|
106
|
+
case 0:
|
|
107
|
+
case 1:
|
|
108
|
+
t = op;
|
|
109
|
+
break;
|
|
110
|
+
case 4:
|
|
111
|
+
_.label++;
|
|
112
|
+
return {
|
|
113
|
+
value: op[1],
|
|
114
|
+
done: false
|
|
115
|
+
};
|
|
116
|
+
case 5:
|
|
117
|
+
_.label++;
|
|
118
|
+
y = op[1];
|
|
119
|
+
op = [
|
|
120
|
+
0
|
|
121
|
+
];
|
|
122
|
+
continue;
|
|
123
|
+
case 7:
|
|
124
|
+
op = _.ops.pop();
|
|
125
|
+
_.trys.pop();
|
|
126
|
+
continue;
|
|
127
|
+
default:
|
|
128
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
129
|
+
_ = 0;
|
|
130
|
+
continue;
|
|
131
|
+
}
|
|
132
|
+
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
133
|
+
_.label = op[1];
|
|
134
|
+
break;
|
|
135
|
+
}
|
|
136
|
+
if (op[0] === 6 && _.label < t[1]) {
|
|
137
|
+
_.label = t[1];
|
|
138
|
+
t = op;
|
|
139
|
+
break;
|
|
140
|
+
}
|
|
141
|
+
if (t && _.label < t[2]) {
|
|
142
|
+
_.label = t[2];
|
|
143
|
+
_.ops.push(op);
|
|
144
|
+
break;
|
|
145
|
+
}
|
|
146
|
+
if (t[2]) _.ops.pop();
|
|
147
|
+
_.trys.pop();
|
|
148
|
+
continue;
|
|
149
|
+
}
|
|
150
|
+
op = body.call(thisArg, _);
|
|
151
|
+
} catch (e) {
|
|
152
|
+
op = [
|
|
153
|
+
6,
|
|
154
|
+
e
|
|
155
|
+
];
|
|
156
|
+
y = 0;
|
|
157
|
+
} finally{
|
|
158
|
+
f = t = 0;
|
|
159
|
+
}
|
|
160
|
+
if (op[0] & 5) throw op[1];
|
|
161
|
+
return {
|
|
162
|
+
value: op[0] ? op[1] : void 0,
|
|
163
|
+
done: true
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
function createStdioServer(config, overrides) {
|
|
168
|
+
return _async_to_generator(function() {
|
|
169
|
+
var runtime, modules, layers, composed, logger, tools, prompts, mcpServer, close;
|
|
170
|
+
return _ts_generator(this, function(_state) {
|
|
171
|
+
switch(_state.label){
|
|
172
|
+
case 0:
|
|
173
|
+
return [
|
|
174
|
+
4,
|
|
175
|
+
(0, _runtime.createDefaultRuntime)(config, overrides)
|
|
176
|
+
];
|
|
177
|
+
case 1:
|
|
178
|
+
runtime = _state.sent();
|
|
179
|
+
modules = runtime.createDomainModules();
|
|
180
|
+
layers = runtime.middlewareFactories.map(function(factory) {
|
|
181
|
+
return factory(runtime.deps);
|
|
182
|
+
});
|
|
183
|
+
composed = (0, _server.composeMiddleware)(modules, layers);
|
|
184
|
+
logger = runtime.deps.logger;
|
|
185
|
+
tools = _to_consumable_array(composed.tools).concat(_to_consumable_array(runtime.deps.oauthAdapters.accountTools));
|
|
186
|
+
prompts = _to_consumable_array(composed.prompts).concat(_to_consumable_array(runtime.deps.oauthAdapters.accountPrompts));
|
|
187
|
+
mcpServer = new _mcp.McpServer({
|
|
188
|
+
name: config.name,
|
|
189
|
+
version: config.version
|
|
190
|
+
});
|
|
191
|
+
(0, _server.registerTools)(mcpServer, tools);
|
|
192
|
+
(0, _server.registerResources)(mcpServer, composed.resources);
|
|
193
|
+
(0, _server.registerPrompts)(mcpServer, prompts);
|
|
194
|
+
logger.info("Starting ".concat(config.name, " MCP server (stdio)"));
|
|
195
|
+
return [
|
|
196
|
+
4,
|
|
197
|
+
(0, _server.connectStdio)(mcpServer, {
|
|
198
|
+
logger: logger
|
|
199
|
+
})
|
|
200
|
+
];
|
|
201
|
+
case 2:
|
|
202
|
+
close = _state.sent().close;
|
|
203
|
+
logger.info('stdio transport ready');
|
|
204
|
+
return [
|
|
205
|
+
2,
|
|
206
|
+
{
|
|
207
|
+
mcpServer: mcpServer,
|
|
208
|
+
logger: logger,
|
|
209
|
+
close: function() {
|
|
210
|
+
return _async_to_generator(function() {
|
|
211
|
+
return _ts_generator(this, function(_state) {
|
|
212
|
+
switch(_state.label){
|
|
213
|
+
case 0:
|
|
214
|
+
return [
|
|
215
|
+
4,
|
|
216
|
+
close()
|
|
217
|
+
];
|
|
218
|
+
case 1:
|
|
219
|
+
_state.sent();
|
|
220
|
+
return [
|
|
221
|
+
4,
|
|
222
|
+
runtime.close()
|
|
223
|
+
];
|
|
224
|
+
case 2:
|
|
225
|
+
_state.sent();
|
|
226
|
+
return [
|
|
227
|
+
2
|
|
228
|
+
];
|
|
229
|
+
}
|
|
230
|
+
});
|
|
231
|
+
})();
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
];
|
|
235
|
+
}
|
|
236
|
+
});
|
|
237
|
+
})();
|
|
238
|
+
}
|
|
239
|
+
/* CJS INTEROP */ if (exports.__esModule && exports.default) { try { Object.defineProperty(exports.default, '__esModule', { value: true }); for (var key in exports) { exports.default[key] = exports[key]; } } catch (_) {}; module.exports = exports.default; }
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/Projects/ai/mcp-z/servers/mcp-drive/src/setup/stdio.ts"],"sourcesContent":["import { composeMiddleware, connectStdio, registerPrompts, registerResources, registerTools } from '@mcp-z/server';\nimport { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';\nimport type { RuntimeOverrides, ServerConfig } from '../types.js';\nimport { createDefaultRuntime } from './runtime.js';\n\nexport async function createStdioServer(config: ServerConfig, overrides?: RuntimeOverrides) {\n const runtime = await createDefaultRuntime(config, overrides);\n const modules = runtime.createDomainModules();\n const layers = runtime.middlewareFactories.map((factory) => factory(runtime.deps));\n const composed = composeMiddleware(modules, layers);\n const logger = runtime.deps.logger;\n\n const tools = [...composed.tools, ...runtime.deps.oauthAdapters.accountTools];\n const prompts = [...composed.prompts, ...runtime.deps.oauthAdapters.accountPrompts];\n\n const mcpServer = new McpServer({ name: config.name, version: config.version });\n registerTools(mcpServer, tools);\n registerResources(mcpServer, composed.resources);\n registerPrompts(mcpServer, prompts);\n\n logger.info(`Starting ${config.name} MCP server (stdio)`);\n const { close } = await connectStdio(mcpServer, { logger });\n logger.info('stdio transport ready');\n\n return {\n mcpServer,\n logger,\n close: async () => {\n await close();\n await runtime.close();\n },\n };\n}\n"],"names":["createStdioServer","config","overrides","runtime","modules","layers","composed","logger","tools","prompts","mcpServer","close","createDefaultRuntime","createDomainModules","middlewareFactories","map","factory","deps","composeMiddleware","oauthAdapters","accountTools","accountPrompts","McpServer","name","version","registerTools","registerResources","resources","registerPrompts","info","connectStdio"],"mappings":";;;;+BAKsBA;;;eAAAA;;;sBAL6E;mBACzE;uBAEW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAE9B,SAAeA,kBAAkBC,MAAoB,EAAEC,SAA4B;;YAClFC,SACAC,SACAC,QACAC,UACAC,QAEAC,OACAC,SAEAC,WAMEC;;;;oBAfQ;;wBAAMC,IAAAA,6BAAoB,EAACX,QAAQC;;;oBAA7CC,UAAU;oBACVC,UAAUD,QAAQU,mBAAmB;oBACrCR,SAASF,QAAQW,mBAAmB,CAACC,GAAG,CAAC,SAACC;+BAAYA,QAAQb,QAAQc,IAAI;;oBAC1EX,WAAWY,IAAAA,yBAAiB,EAACd,SAASC;oBACtCE,SAASJ,QAAQc,IAAI,CAACV,MAAM;oBAE5BC,QAAQ,AAAC,qBAAGF,SAASE,KAAK,SAAE,qBAAGL,QAAQc,IAAI,CAACE,aAAa,CAACC,YAAY;oBACtEX,UAAU,AAAC,qBAAGH,SAASG,OAAO,SAAE,qBAAGN,QAAQc,IAAI,CAACE,aAAa,CAACE,cAAc;oBAE5EX,YAAY,IAAIY,cAAS,CAAC;wBAAEC,MAAMtB,OAAOsB,IAAI;wBAAEC,SAASvB,OAAOuB,OAAO;oBAAC;oBAC7EC,IAAAA,qBAAa,EAACf,WAAWF;oBACzBkB,IAAAA,yBAAiB,EAAChB,WAAWJ,SAASqB,SAAS;oBAC/CC,IAAAA,uBAAe,EAAClB,WAAWD;oBAE3BF,OAAOsB,IAAI,CAAC,AAAC,YAAuB,OAAZ5B,OAAOsB,IAAI,EAAC;oBAClB;;wBAAMO,IAAAA,oBAAY,EAACpB,WAAW;4BAAEH,QAAAA;wBAAO;;;oBAAjDI,QAAU,cAAVA;oBACRJ,OAAOsB,IAAI,CAAC;oBAEZ;;wBAAO;4BACLnB,WAAAA;4BACAH,QAAAA;4BACAI,OAAO;;;;;gDACL;;oDAAMA;;;gDAAN;gDACA;;oDAAMR,QAAQQ,KAAK;;;gDAAnB;;;;;;gCACF;;wBACF;;;;IACF"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { CachedToken, DcrConfig, OAuthConfig } from '@mcp-z/oauth-google';
|
|
2
|
+
import type { BaseServerConfig, MiddlewareLayer, PromptModule, ResourceModule, Logger as ServerLogger, ToolModule } from '@mcp-z/server';
|
|
3
|
+
import type { Keyv } from 'keyv';
|
|
4
|
+
import type { OAuthAdapters } from './setup/oauth-google.js';
|
|
5
|
+
export type Logger = Pick<Console, 'info' | 'error' | 'warn' | 'debug'>;
|
|
6
|
+
/**
|
|
7
|
+
* Composes transport config, OAuth config, and application-level config
|
|
8
|
+
*/
|
|
9
|
+
export interface ServerConfig extends BaseServerConfig, OAuthConfig {
|
|
10
|
+
logLevel: string;
|
|
11
|
+
baseDir: string;
|
|
12
|
+
name: string;
|
|
13
|
+
version: string;
|
|
14
|
+
repositoryUrl: string;
|
|
15
|
+
baseUrl?: string;
|
|
16
|
+
dcrConfig?: DcrConfig;
|
|
17
|
+
}
|
|
18
|
+
/** Runtime dependencies exposed to middleware/factories. */
|
|
19
|
+
export interface RuntimeDeps {
|
|
20
|
+
config: ServerConfig;
|
|
21
|
+
logger: ServerLogger;
|
|
22
|
+
tokenStore: Keyv<CachedToken>;
|
|
23
|
+
oauthAdapters: OAuthAdapters;
|
|
24
|
+
baseUrl?: string;
|
|
25
|
+
}
|
|
26
|
+
/** Collections of MCP modules produced by domain factories. */
|
|
27
|
+
export type DomainModules = {
|
|
28
|
+
tools: ToolModule[];
|
|
29
|
+
resources: ResourceModule[];
|
|
30
|
+
prompts: PromptModule[];
|
|
31
|
+
};
|
|
32
|
+
/** Factory that produces a middleware layer given runtime dependencies. */
|
|
33
|
+
export type MiddlewareFactory = (deps: RuntimeDeps) => MiddlewareLayer;
|
|
34
|
+
/** Shared runtime configuration returned by `createDefaultRuntime`. */
|
|
35
|
+
export interface CommonRuntime {
|
|
36
|
+
deps: RuntimeDeps;
|
|
37
|
+
middlewareFactories: MiddlewareFactory[];
|
|
38
|
+
createDomainModules: () => DomainModules;
|
|
39
|
+
close: () => Promise<void>;
|
|
40
|
+
}
|
|
41
|
+
export interface RuntimeOverrides {
|
|
42
|
+
middlewareFactories?: MiddlewareFactory[];
|
|
43
|
+
createDomainModules?: () => DomainModules;
|
|
44
|
+
}
|
|
45
|
+
export type { DriveFile, DriveQuery, DriveQueryObject, FieldOperator } from './schemas/index.js';
|