@mcpc-tech/core 0.3.32 → 0.3.34
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/index.cjs +62 -25
- package/index.mjs +62 -23
- package/package.json +1 -1
- package/types/mod.d.ts +1 -1
- package/types/mod.d.ts.map +1 -1
- package/types/src/compose.d.ts +31 -1
- package/types/src/compose.d.ts.map +1 -1
- package/types/src/set-up-mcp-compose.d.ts +3 -9
- package/types/src/set-up-mcp-compose.d.ts.map +1 -1
package/index.cjs
CHANGED
|
@@ -534,7 +534,6 @@ __export(mod_exports, {
|
|
|
534
534
|
composeMcpDepTools: () => composeMcpDepTools,
|
|
535
535
|
convertToAISDKTools: () => convertToAISDKTools,
|
|
536
536
|
extractJsonSchema: () => extractJsonSchema,
|
|
537
|
-
isMarkdownFile: () => isMarkdownFile,
|
|
538
537
|
isProdEnv: () => isProdEnv,
|
|
539
538
|
isSCF: () => isSCF,
|
|
540
539
|
isWrappedSchema: () => isWrappedSchema,
|
|
@@ -543,7 +542,6 @@ __export(mod_exports, {
|
|
|
543
542
|
optionalObject: () => optionalObject,
|
|
544
543
|
parseJSON: () => parseJSON,
|
|
545
544
|
parseMcpcConfigs: () => parseMcpcConfigs,
|
|
546
|
-
setMarkdownAgentLoader: () => setMarkdownAgentLoader,
|
|
547
545
|
truncateJSON: () => truncateJSON
|
|
548
546
|
});
|
|
549
547
|
module.exports = __toCommonJS(mod_exports);
|
|
@@ -18035,7 +18033,8 @@ var ajv = new import_ajv2.Ajv({
|
|
|
18035
18033
|
import_ajv_formats2.default.default(ajv);
|
|
18036
18034
|
import_ajv_errors.default.default(ajv);
|
|
18037
18035
|
function validateSchema(data, schema) {
|
|
18038
|
-
const
|
|
18036
|
+
const cleanedSchema = cleanToolSchema(schema);
|
|
18037
|
+
const validate = ajv.compile(cleanedSchema);
|
|
18039
18038
|
if (!validate(data)) {
|
|
18040
18039
|
const errors = validate.errors;
|
|
18041
18040
|
const customErrors = errors.filter((err) => err.keyword === "errorMessage");
|
|
@@ -20190,6 +20189,7 @@ var ComposableMCPServer = class extends Server {
|
|
|
20190
20189
|
pluginManager;
|
|
20191
20190
|
toolManager;
|
|
20192
20191
|
logger = createLogger("mcpc.compose");
|
|
20192
|
+
fileLoaders = /* @__PURE__ */ new Map();
|
|
20193
20193
|
// Legacy property for backward compatibility
|
|
20194
20194
|
get toolNameMapping() {
|
|
20195
20195
|
return this.toolManager.getToolNameMapping();
|
|
@@ -20208,6 +20208,58 @@ var ComposableMCPServer = class extends Server {
|
|
|
20208
20208
|
this.pluginManager = new PluginManager(this);
|
|
20209
20209
|
this.toolManager = new ToolManager();
|
|
20210
20210
|
}
|
|
20211
|
+
/**
|
|
20212
|
+
* Register a file loader for a specific extension.
|
|
20213
|
+
* Plugins can use this to add support for different file formats.
|
|
20214
|
+
*
|
|
20215
|
+
* @param extension - File extension including the dot (e.g., ".md", ".yaml")
|
|
20216
|
+
* @param loader - Function that loads a file and returns a ComposeDefinition
|
|
20217
|
+
*
|
|
20218
|
+
* @example
|
|
20219
|
+
* ```typescript
|
|
20220
|
+
* // In a plugin's configureServer hook:
|
|
20221
|
+
* configureServer: (server) => {
|
|
20222
|
+
* server.registerFileLoader(".md", loadMarkdownAgentFile);
|
|
20223
|
+
* server.registerFileLoader(".yaml", loadYamlAgentFile);
|
|
20224
|
+
* }
|
|
20225
|
+
* ```
|
|
20226
|
+
*/
|
|
20227
|
+
registerFileLoader(extension, loader) {
|
|
20228
|
+
this.fileLoaders.set(extension.toLowerCase(), loader);
|
|
20229
|
+
}
|
|
20230
|
+
/**
|
|
20231
|
+
* Get the file loader for a specific extension.
|
|
20232
|
+
*/
|
|
20233
|
+
getFileLoader(extension) {
|
|
20234
|
+
return this.fileLoaders.get(extension.toLowerCase());
|
|
20235
|
+
}
|
|
20236
|
+
/**
|
|
20237
|
+
* Check if a file extension has a registered loader.
|
|
20238
|
+
*/
|
|
20239
|
+
hasFileLoader(extension) {
|
|
20240
|
+
return this.fileLoaders.has(extension.toLowerCase());
|
|
20241
|
+
}
|
|
20242
|
+
/**
|
|
20243
|
+
* Get all registered file extensions.
|
|
20244
|
+
*/
|
|
20245
|
+
getRegisteredExtensions() {
|
|
20246
|
+
return Array.from(this.fileLoaders.keys());
|
|
20247
|
+
}
|
|
20248
|
+
/**
|
|
20249
|
+
* Resolve a file path to a ComposeDefinition using registered loaders.
|
|
20250
|
+
* @internal
|
|
20251
|
+
*/
|
|
20252
|
+
async resolveFilePath(filePath) {
|
|
20253
|
+
const lastDot = filePath.lastIndexOf(".");
|
|
20254
|
+
const extension = lastDot === -1 ? "" : filePath.slice(lastDot).toLowerCase();
|
|
20255
|
+
const loader = this.fileLoaders.get(extension);
|
|
20256
|
+
if (!loader) {
|
|
20257
|
+
const supportedExtensions = this.getRegisteredExtensions().join(", ");
|
|
20258
|
+
const hint = supportedExtensions ? ` Supported extensions: ${supportedExtensions}.` : ' No file loaders registered. Use a loader plugin (e.g., markdownLoaderPlugin from "@mcpc/plugin-markdown-loader").';
|
|
20259
|
+
throw new Error(`Cannot load file "${filePath}": No loader registered for "${extension}" extension.${hint}`);
|
|
20260
|
+
}
|
|
20261
|
+
return await loader(filePath);
|
|
20262
|
+
}
|
|
20211
20263
|
/**
|
|
20212
20264
|
* Initialize built-in plugins - called during setup
|
|
20213
20265
|
*/
|
|
@@ -20779,25 +20831,6 @@ function convertToAISDKTools(server, helpers) {
|
|
|
20779
20831
|
}
|
|
20780
20832
|
|
|
20781
20833
|
// __mcpc__core_latest/node_modules/@mcpc/core/src/set-up-mcp-compose.js
|
|
20782
|
-
var markdownAgentLoader = null;
|
|
20783
|
-
function setMarkdownAgentLoader(loader) {
|
|
20784
|
-
markdownAgentLoader = loader;
|
|
20785
|
-
}
|
|
20786
|
-
function isMarkdownFile(path) {
|
|
20787
|
-
return path.endsWith(".md") || path.endsWith(".markdown");
|
|
20788
|
-
}
|
|
20789
|
-
async function resolveComposeInput(input) {
|
|
20790
|
-
if (typeof input !== "string") {
|
|
20791
|
-
return input;
|
|
20792
|
-
}
|
|
20793
|
-
if (!isMarkdownFile(input)) {
|
|
20794
|
-
throw new Error(`Invalid compose input: "${input}". Expected a Markdown file path (.md) or a ComposeDefinition object.`);
|
|
20795
|
-
}
|
|
20796
|
-
if (!markdownAgentLoader) {
|
|
20797
|
-
throw new Error(`Cannot load Markdown agent file "${input}": Markdown loader not available. Use markdownLoaderPlugin() from "@mcpc/plugin-markdown-loader", or use inline ComposeDefinition objects.`);
|
|
20798
|
-
}
|
|
20799
|
-
return await markdownAgentLoader(input);
|
|
20800
|
-
}
|
|
20801
20834
|
function parseMcpcConfigs(conf) {
|
|
20802
20835
|
return conf ?? [];
|
|
20803
20836
|
}
|
|
@@ -20815,7 +20848,13 @@ async function mcpc(serverConf, composeConf, optionsOrSetup) {
|
|
|
20815
20848
|
}
|
|
20816
20849
|
}
|
|
20817
20850
|
}
|
|
20818
|
-
const
|
|
20851
|
+
const resolveInput = (input) => {
|
|
20852
|
+
if (typeof input !== "string") {
|
|
20853
|
+
return Promise.resolve(input);
|
|
20854
|
+
}
|
|
20855
|
+
return server.resolveFilePath(input);
|
|
20856
|
+
};
|
|
20857
|
+
const resolvedConfigs = composeConf ? await Promise.all(composeConf.map(resolveInput)) : [];
|
|
20819
20858
|
const parsed = parseMcpcConfigs(resolvedConfigs);
|
|
20820
20859
|
await server.initBuiltInPlugins();
|
|
20821
20860
|
for (const mcpcConfig of parsed) {
|
|
@@ -20843,7 +20882,6 @@ async function mcpc(serverConf, composeConf, optionsOrSetup) {
|
|
|
20843
20882
|
composeMcpDepTools,
|
|
20844
20883
|
convertToAISDKTools,
|
|
20845
20884
|
extractJsonSchema,
|
|
20846
|
-
isMarkdownFile,
|
|
20847
20885
|
isProdEnv,
|
|
20848
20886
|
isSCF,
|
|
20849
20887
|
isWrappedSchema,
|
|
@@ -20852,6 +20890,5 @@ async function mcpc(serverConf, composeConf, optionsOrSetup) {
|
|
|
20852
20890
|
optionalObject,
|
|
20853
20891
|
parseJSON,
|
|
20854
20892
|
parseMcpcConfigs,
|
|
20855
|
-
setMarkdownAgentLoader,
|
|
20856
20893
|
truncateJSON
|
|
20857
20894
|
});
|
package/index.mjs
CHANGED
|
@@ -18021,7 +18021,8 @@ var ajv = new Ajv2({
|
|
|
18021
18021
|
addFormats.default(ajv);
|
|
18022
18022
|
ajvErrors.default(ajv);
|
|
18023
18023
|
function validateSchema(data, schema) {
|
|
18024
|
-
const
|
|
18024
|
+
const cleanedSchema = cleanToolSchema(schema);
|
|
18025
|
+
const validate = ajv.compile(cleanedSchema);
|
|
18025
18026
|
if (!validate(data)) {
|
|
18026
18027
|
const errors = validate.errors;
|
|
18027
18028
|
const customErrors = errors.filter((err) => err.keyword === "errorMessage");
|
|
@@ -20175,6 +20176,7 @@ var ComposableMCPServer = class extends Server {
|
|
|
20175
20176
|
pluginManager;
|
|
20176
20177
|
toolManager;
|
|
20177
20178
|
logger = createLogger("mcpc.compose");
|
|
20179
|
+
fileLoaders = /* @__PURE__ */ new Map();
|
|
20178
20180
|
// Legacy property for backward compatibility
|
|
20179
20181
|
get toolNameMapping() {
|
|
20180
20182
|
return this.toolManager.getToolNameMapping();
|
|
@@ -20193,6 +20195,58 @@ var ComposableMCPServer = class extends Server {
|
|
|
20193
20195
|
this.pluginManager = new PluginManager(this);
|
|
20194
20196
|
this.toolManager = new ToolManager();
|
|
20195
20197
|
}
|
|
20198
|
+
/**
|
|
20199
|
+
* Register a file loader for a specific extension.
|
|
20200
|
+
* Plugins can use this to add support for different file formats.
|
|
20201
|
+
*
|
|
20202
|
+
* @param extension - File extension including the dot (e.g., ".md", ".yaml")
|
|
20203
|
+
* @param loader - Function that loads a file and returns a ComposeDefinition
|
|
20204
|
+
*
|
|
20205
|
+
* @example
|
|
20206
|
+
* ```typescript
|
|
20207
|
+
* // In a plugin's configureServer hook:
|
|
20208
|
+
* configureServer: (server) => {
|
|
20209
|
+
* server.registerFileLoader(".md", loadMarkdownAgentFile);
|
|
20210
|
+
* server.registerFileLoader(".yaml", loadYamlAgentFile);
|
|
20211
|
+
* }
|
|
20212
|
+
* ```
|
|
20213
|
+
*/
|
|
20214
|
+
registerFileLoader(extension, loader) {
|
|
20215
|
+
this.fileLoaders.set(extension.toLowerCase(), loader);
|
|
20216
|
+
}
|
|
20217
|
+
/**
|
|
20218
|
+
* Get the file loader for a specific extension.
|
|
20219
|
+
*/
|
|
20220
|
+
getFileLoader(extension) {
|
|
20221
|
+
return this.fileLoaders.get(extension.toLowerCase());
|
|
20222
|
+
}
|
|
20223
|
+
/**
|
|
20224
|
+
* Check if a file extension has a registered loader.
|
|
20225
|
+
*/
|
|
20226
|
+
hasFileLoader(extension) {
|
|
20227
|
+
return this.fileLoaders.has(extension.toLowerCase());
|
|
20228
|
+
}
|
|
20229
|
+
/**
|
|
20230
|
+
* Get all registered file extensions.
|
|
20231
|
+
*/
|
|
20232
|
+
getRegisteredExtensions() {
|
|
20233
|
+
return Array.from(this.fileLoaders.keys());
|
|
20234
|
+
}
|
|
20235
|
+
/**
|
|
20236
|
+
* Resolve a file path to a ComposeDefinition using registered loaders.
|
|
20237
|
+
* @internal
|
|
20238
|
+
*/
|
|
20239
|
+
async resolveFilePath(filePath) {
|
|
20240
|
+
const lastDot = filePath.lastIndexOf(".");
|
|
20241
|
+
const extension = lastDot === -1 ? "" : filePath.slice(lastDot).toLowerCase();
|
|
20242
|
+
const loader = this.fileLoaders.get(extension);
|
|
20243
|
+
if (!loader) {
|
|
20244
|
+
const supportedExtensions = this.getRegisteredExtensions().join(", ");
|
|
20245
|
+
const hint = supportedExtensions ? ` Supported extensions: ${supportedExtensions}.` : ' No file loaders registered. Use a loader plugin (e.g., markdownLoaderPlugin from "@mcpc/plugin-markdown-loader").';
|
|
20246
|
+
throw new Error(`Cannot load file "${filePath}": No loader registered for "${extension}" extension.${hint}`);
|
|
20247
|
+
}
|
|
20248
|
+
return await loader(filePath);
|
|
20249
|
+
}
|
|
20196
20250
|
/**
|
|
20197
20251
|
* Initialize built-in plugins - called during setup
|
|
20198
20252
|
*/
|
|
@@ -20764,25 +20818,6 @@ function convertToAISDKTools(server, helpers) {
|
|
|
20764
20818
|
}
|
|
20765
20819
|
|
|
20766
20820
|
// __mcpc__core_latest/node_modules/@mcpc/core/src/set-up-mcp-compose.js
|
|
20767
|
-
var markdownAgentLoader = null;
|
|
20768
|
-
function setMarkdownAgentLoader(loader) {
|
|
20769
|
-
markdownAgentLoader = loader;
|
|
20770
|
-
}
|
|
20771
|
-
function isMarkdownFile(path) {
|
|
20772
|
-
return path.endsWith(".md") || path.endsWith(".markdown");
|
|
20773
|
-
}
|
|
20774
|
-
async function resolveComposeInput(input) {
|
|
20775
|
-
if (typeof input !== "string") {
|
|
20776
|
-
return input;
|
|
20777
|
-
}
|
|
20778
|
-
if (!isMarkdownFile(input)) {
|
|
20779
|
-
throw new Error(`Invalid compose input: "${input}". Expected a Markdown file path (.md) or a ComposeDefinition object.`);
|
|
20780
|
-
}
|
|
20781
|
-
if (!markdownAgentLoader) {
|
|
20782
|
-
throw new Error(`Cannot load Markdown agent file "${input}": Markdown loader not available. Use markdownLoaderPlugin() from "@mcpc/plugin-markdown-loader", or use inline ComposeDefinition objects.`);
|
|
20783
|
-
}
|
|
20784
|
-
return await markdownAgentLoader(input);
|
|
20785
|
-
}
|
|
20786
20821
|
function parseMcpcConfigs(conf) {
|
|
20787
20822
|
return conf ?? [];
|
|
20788
20823
|
}
|
|
@@ -20800,7 +20835,13 @@ async function mcpc(serverConf, composeConf, optionsOrSetup) {
|
|
|
20800
20835
|
}
|
|
20801
20836
|
}
|
|
20802
20837
|
}
|
|
20803
|
-
const
|
|
20838
|
+
const resolveInput = (input) => {
|
|
20839
|
+
if (typeof input !== "string") {
|
|
20840
|
+
return Promise.resolve(input);
|
|
20841
|
+
}
|
|
20842
|
+
return server.resolveFilePath(input);
|
|
20843
|
+
};
|
|
20844
|
+
const resolvedConfigs = composeConf ? await Promise.all(composeConf.map(resolveInput)) : [];
|
|
20804
20845
|
const parsed = parseMcpcConfigs(resolvedConfigs);
|
|
20805
20846
|
await server.initBuiltInPlugins();
|
|
20806
20847
|
for (const mcpcConfig of parsed) {
|
|
@@ -20827,7 +20868,6 @@ export {
|
|
|
20827
20868
|
composeMcpDepTools,
|
|
20828
20869
|
convertToAISDKTools,
|
|
20829
20870
|
extractJsonSchema,
|
|
20830
|
-
isMarkdownFile,
|
|
20831
20871
|
isProdEnv,
|
|
20832
20872
|
isSCF,
|
|
20833
20873
|
isWrappedSchema,
|
|
@@ -20836,6 +20876,5 @@ export {
|
|
|
20836
20876
|
optionalObject,
|
|
20837
20877
|
parseJSON,
|
|
20838
20878
|
parseMcpcConfigs,
|
|
20839
|
-
setMarkdownAgentLoader,
|
|
20840
20879
|
truncateJSON
|
|
20841
20880
|
};
|
package/package.json
CHANGED
package/types/mod.d.ts
CHANGED
|
@@ -53,7 +53,7 @@ export type { AfterToolExecuteContext, AfterToolExecuteResult, AgentToolRegistra
|
|
|
53
53
|
export * from "./src/utils/common/env.js";
|
|
54
54
|
export * from "./src/utils/common/json.js";
|
|
55
55
|
export * from "./src/utils/common/mcp.js";
|
|
56
|
-
export { type ComposeDefinition, type ComposeInput, type ComposibleMCPConfig,
|
|
56
|
+
export { type ComposeDefinition, type ComposeInput, type ComposibleMCPConfig, type FileLoader, mcpc, type McpcOptions, parseMcpcConfigs } from "./src/set-up-mcp-compose.js";
|
|
57
57
|
export { extractJsonSchema, isWrappedSchema, jsonSchema, type Schema } from "./src/utils/schema.js";
|
|
58
58
|
export { convertToAISDKTools, type JsonSchemaHelper, type ToolHelper } from "./src/ai-sdk-adapter.js";
|
|
59
59
|
//# sourceMappingURL=mod.d.ts.map
|
package/types/mod.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.d.ts","sources":["../mod.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgDC,GAED,iCAAiC;AAGjC,cACE,eAAe,EACf,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,0BAA0B,iCACI;AAGhC,cAAc,cAAc,EAAE,UAAU,yBAAyB;AAGjE,cACE,uBAAuB,EACvB,sBAAsB,EACtB,4BAA4B,EAC5B,wBAAwB,EACxB,uBAAuB,EACvB,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,uBAAuB,EACvB,UAAU,EACV,UAAU,EACV,gBAAgB,gCACa;AAE/B,0CAA0C;AAC1C,2CAA2C;AAC3C,0CAA0C;AAE1C,SACE,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sources":["../mod.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgDC,GAED,iCAAiC;AAGjC,cACE,eAAe,EACf,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,0BAA0B,iCACI;AAGhC,cAAc,cAAc,EAAE,UAAU,yBAAyB;AAGjE,cACE,uBAAuB,EACvB,sBAAsB,EACtB,4BAA4B,EAC5B,wBAAwB,EACxB,uBAAuB,EACvB,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,uBAAuB,EACvB,UAAU,EACV,UAAU,EACV,gBAAgB,gCACa;AAE/B,0CAA0C;AAC1C,2CAA2C;AAC3C,0CAA0C;AAE1C,SACE,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,UAAU,EACf,IAAI,EACJ,KAAK,WAAW,EAChB,gBAAgB,sCACmB;AAGrC,SACE,iBAAiB,EACjB,eAAe,EACf,UAAU,EACV,KAAK,MAAM,gCACkB;AAG/B,SACE,mBAAmB,EACnB,KAAK,gBAAgB,EACrB,KAAK,UAAU,kCACgB"}
|
package/types/src/compose.d.ts
CHANGED
|
@@ -2,15 +2,45 @@ import { type Implementation, type Tool } from "@modelcontextprotocol/sdk/types.
|
|
|
2
2
|
import { type Schema } from "./utils/schema.js";
|
|
3
3
|
import type { MCPSetting } from "./service/tools.js";
|
|
4
4
|
import { Server, type ServerOptions } from "@modelcontextprotocol/sdk/server/index.js";
|
|
5
|
-
import type { ComposeDefinition } from "./set-up-mcp-compose.js";
|
|
5
|
+
import type { ComposeDefinition, FileLoader } from "./set-up-mcp-compose.js";
|
|
6
6
|
import type { JSONSchema, ToolCallback } from "./types.js";
|
|
7
7
|
import type { ToolConfig, ToolPlugin } from "./plugin-types.js";
|
|
8
8
|
export declare class ComposableMCPServer extends Server {
|
|
9
9
|
private pluginManager: any;
|
|
10
10
|
private toolManager: any;
|
|
11
11
|
private logger: any;
|
|
12
|
+
private fileLoaders: any;
|
|
12
13
|
get toolNameMapping(): Map<string, string>;
|
|
13
14
|
constructor(_serverInfo: Implementation, options: ServerOptions);
|
|
15
|
+
/**
|
|
16
|
+
* Register a file loader for a specific extension.
|
|
17
|
+
* Plugins can use this to add support for different file formats.
|
|
18
|
+
*
|
|
19
|
+
* @param extension - File extension including the dot (e.g., ".md", ".yaml")
|
|
20
|
+
* @param loader - Function that loads a file and returns a ComposeDefinition
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```typescript
|
|
24
|
+
* // In a plugin's configureServer hook:
|
|
25
|
+
* configureServer: (server) => {
|
|
26
|
+
* server.registerFileLoader(".md", loadMarkdownAgentFile);
|
|
27
|
+
* server.registerFileLoader(".yaml", loadYamlAgentFile);
|
|
28
|
+
* }
|
|
29
|
+
* ```
|
|
30
|
+
*/ registerFileLoader(extension: string, loader: FileLoader): void;
|
|
31
|
+
/**
|
|
32
|
+
* Get the file loader for a specific extension.
|
|
33
|
+
*/ getFileLoader(extension: string): FileLoader | undefined;
|
|
34
|
+
/**
|
|
35
|
+
* Check if a file extension has a registered loader.
|
|
36
|
+
*/ hasFileLoader(extension: string): boolean;
|
|
37
|
+
/**
|
|
38
|
+
* Get all registered file extensions.
|
|
39
|
+
*/ getRegisteredExtensions(): string[];
|
|
40
|
+
/**
|
|
41
|
+
* Resolve a file path to a ComposeDefinition using registered loaders.
|
|
42
|
+
* @internal
|
|
43
|
+
*/ resolveFilePath(filePath: string): Promise<ComposeDefinition>;
|
|
14
44
|
/**
|
|
15
45
|
* Initialize built-in plugins - called during setup
|
|
16
46
|
*/ initBuiltInPlugins(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compose.d.ts","sources":["../../src/compose.ts"],"names":[],"mappings":"AAAA,SAGE,KAAK,cAAc,EAGnB,KAAK,IAAI,6CAC8C;AACzD,SAAwC,KAAK,MAAM,4BAA4B;AAC/E,cAAc,UAAU,6BAA6B;AACrD,SACE,MAAM,EACN,KAAK,aAAa,oDAC4C;AAGhE,cAAc,iBAAiB,kCAAkC;
|
|
1
|
+
{"version":3,"file":"compose.d.ts","sources":["../../src/compose.ts"],"names":[],"mappings":"AAAA,SAGE,KAAK,cAAc,EAGnB,KAAK,IAAI,6CAC8C;AACzD,SAAwC,KAAK,MAAM,4BAA4B;AAC/E,cAAc,UAAU,6BAA6B;AACrD,SACE,MAAM,EACN,KAAK,aAAa,oDAC4C;AAGhE,cAAc,iBAAiB,EAAE,UAAU,kCAAkC;AAC7E,cAAc,UAAU,EAAE,YAAY,qBAAqB;AAM3D,cAA4B,UAAU,EAAE,UAAU,4BAA4B;AAe9E,OAAO,cAAM,4BAA4B;EACvC,QAAQ,mBAA6B;EACrC,QAAQ,iBAAyB;EACjC,QAAQ,YAAsC;EAC9C,QAAQ,iBAA4C;EAGpD,IAAI,mBAAmB,IAAI,MAAM,EAAE,MAAM;EAIzC,YAAY,aAAa,cAAc,EAAE,SAAS,aAAa;EAiB/D;;;;;;;;;;;;;;;GAeC,GACD,mBAAmB,WAAW,MAAM,EAAE,QAAQ,UAAU,GAAG,IAAI;EAI/D;;GAEC,GACD,cAAc,WAAW,MAAM,GAAG,aAAa,SAAS;EAIxD;;GAEC,GACD,cAAc,WAAW,MAAM,GAAG,OAAO;EAIzC;;GAEC,GACD,2BAA2B,MAAM;EAIjC;;;GAGC,GACD,AAAM,gBAAgB,UAAU,MAAM,GAAG,QAAQ;EAqBjD;;GAEC,GACD,AAAM,sBAAsB,QAAQ,IAAI;UAqB1B;UAsDN;EAIR,KAAK,GACH,MAAM,MAAM,EACZ,aAAa,MAAM,EACnB,cAAc,OAAO,KAAK,UAAU,EACpC,KAAK,MAAM,GAAG,QAAQ,OAAO,KAAK,OAAO,EACzC;IAAW,WAAW,OAAO;IAAE,SAAS,OAAO;IAAE,UAAU;GACvD;EA+JN;;GAEC,GACD,gBAAgB,MAAM,MAAM,GAAG,eAAe,SAAS;EAIvD;;GAEC,GACD,eAAe,QAAQ,MAAM,GAAG,aAAa,SAAS;EAItD;;;GAGC,GACD,AAAM,SACJ,MAAM,MAAM,EACZ,MAAM,OAAO,EACb;IAAW,YAAY,MAAM;IAAE,iBAAiB,MAAM;GAAS,GAC9D,QAAQ,OAAO;EA4JlB;;GAEC,GACD,sBAAsB,MAAM;EAI5B;;GAEC,GACD,kBAAkB;EAIlB;;GAEC,GACD,sBAAsB,MAAM;EAI5B;;GAEC,GACD,wBAAwB,MAAM;EAM9B;;GAEC,GACD,oBACE,MAAM,MAAM;IACT,aAAa,MAAM;IAAE,QAAQ;MAAe,SAAS;EAI1D;;GAEC,GACD,aAAa,MAAM,MAAM,GAAG,OAAO;EAInC;;GAEC,GACD,WAAW,UAAU,MAAM,EAAE,QAAQ,UAAU,GAAG,IAAI;EAItD;;GAEC,GACD,cAAc,UAAU,MAAM,GAAG,aAAa,SAAS;EAIvD;;GAEC,GACD,iBAAiB,UAAU,MAAM,GAAG,OAAO;EAI3C;;GAEC,GACD,AAAM,UAAU,QAAQ,UAAU,GAAG,QAAQ,IAAI;EAIjD;;GAEC,GACD,AAAM,mBACJ,YAAY,MAAM,EAClB;IAAW,QAAQ,OAAO;GAAoB,GAC7C,QAAQ,IAAI;UAOD;EAOd;;GAEC,GACD,AAAM,kBAAkB,QAAQ,IAAI;EAIpC;;GAEC,GACD,SAAe,SAAS,QAAQ,IAAI;EAK9B,QACJ,MAAM,MAAM,GAAG,IAAI,EACnB,aAAa,MAAM,EACnB,aAAY,UAA+B,EAC3C,UAAS,kBAAkB,UAAgC,EAC3D,SAAS,MAAM;AAoRnB"}
|
|
@@ -117,15 +117,9 @@ export interface ComposibleMCPConfig {
|
|
|
117
117
|
[key: string]: ComposeDefinition[];
|
|
118
118
|
}
|
|
119
119
|
/**
|
|
120
|
-
*
|
|
121
|
-
*
|
|
122
|
-
*/ export type
|
|
123
|
-
/**
|
|
124
|
-
* Register the Markdown agent loader (called by markdownLoaderPlugin())
|
|
125
|
-
*/ export declare function setMarkdownAgentLoader(loader: MarkdownAgentLoader): void;
|
|
126
|
-
/**
|
|
127
|
-
* Check if a path is a Markdown file (.md or .markdown)
|
|
128
|
-
*/ export declare function isMarkdownFile(path: string): boolean;
|
|
120
|
+
* File loader function type for loading agent definitions from files.
|
|
121
|
+
* Plugins can register loaders for different file extensions.
|
|
122
|
+
*/ export type FileLoader = (filePath: string) => Promise<ComposeDefinition>;
|
|
129
123
|
export declare function parseMcpcConfigs(conf?: ComposeDefinition[]): ComposeDefinition[];
|
|
130
124
|
/**
|
|
131
125
|
* Options for mcpc() function
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set-up-mcp-compose.d.ts","sources":["../../src/set-up-mcp-compose.ts"],"names":[],"mappings":"AAAA,SAAS,mBAAmB,oBAAoB;AAChD,cAAc,UAAU,6BAA6B;AACrD,cAAc,cAAc,qBAAqB;AACjD,cAAc,UAAU,4BAA4B;AACpD,cAAc,UAAU,qBAAqB;AAC7C,cAAc,aAAa,6BAA6B;AAExD,iBAAiB;EACf;;;GAGC,GACD,MAAM,MAAM,GAAG,IAAI;EACnB;;GAEC,GACD,cAAc,MAAM;EACpB;;;GAGC,GACD,SAAS,MAAM;EACf,OAAO;EAEP;;;;;;;;;;;GAWC,GACD,WAAW,aAAa,MAAM;EAE9B;IACE;;;;;;KAMC,GACD,OAAO;IAEP;;KAEC,GACD,iBAAiB;IAEjB;;;;KAIC,GACD;MACE;QACE,QAAQ;UAAQ,OAAO,MAAM;;QAC7B,eAAe,MAAM;QACrB,gBAAgB,MAAM;QACtB,uBAAuB,MAAM;;;IAIjC;;;;KAIC,GACD;MACE,SAAS,MAAM;MACf,OAAO,MAAM;MACb,MAAM,OAAO,MAAM,EAAE,MAAM;MAC3B;QACE,MAAM,MAAM;QACZ,aAAa;UACX,MAAM,MAAM;UACZ,SAAS,MAAM;UACf,OAAO,MAAM;UACb,MAAM,OAAO,MAAM,EAAE,MAAM;;;MAG/B,iBAAiB,OAAO;;IAG1B;;;;KAIC,GACD,WAAW,MAAM;IAEjB;;;;KAIC,GACD,YAAY,MAAM;IAElB;;;;KAIC,GACD,iBAAiB,OAAO;IAExB;;;;;KAKC,GACD;;;KAGC,GACD,OAAO,MAAM;;;AAIjB;;;;;;;;;;;;;CAaC,GACD,YAAY,eAAe,oBAAoB,MAAM;AAIrD,iBAAiB;GACd,KAAK,MAAM,GAAG;;AAGjB;;;CAGC,GACD,YAAY,
|
|
1
|
+
{"version":3,"file":"set-up-mcp-compose.d.ts","sources":["../../src/set-up-mcp-compose.ts"],"names":[],"mappings":"AAAA,SAAS,mBAAmB,oBAAoB;AAChD,cAAc,UAAU,6BAA6B;AACrD,cAAc,cAAc,qBAAqB;AACjD,cAAc,UAAU,4BAA4B;AACpD,cAAc,UAAU,qBAAqB;AAC7C,cAAc,aAAa,6BAA6B;AAExD,iBAAiB;EACf;;;GAGC,GACD,MAAM,MAAM,GAAG,IAAI;EACnB;;GAEC,GACD,cAAc,MAAM;EACpB;;;GAGC,GACD,SAAS,MAAM;EACf,OAAO;EAEP;;;;;;;;;;;GAWC,GACD,WAAW,aAAa,MAAM;EAE9B;IACE;;;;;;KAMC,GACD,OAAO;IAEP;;KAEC,GACD,iBAAiB;IAEjB;;;;KAIC,GACD;MACE;QACE,QAAQ;UAAQ,OAAO,MAAM;;QAC7B,eAAe,MAAM;QACrB,gBAAgB,MAAM;QACtB,uBAAuB,MAAM;;;IAIjC;;;;KAIC,GACD;MACE,SAAS,MAAM;MACf,OAAO,MAAM;MACb,MAAM,OAAO,MAAM,EAAE,MAAM;MAC3B;QACE,MAAM,MAAM;QACZ,aAAa;UACX,MAAM,MAAM;UACZ,SAAS,MAAM;UACf,OAAO,MAAM;UACb,MAAM,OAAO,MAAM,EAAE,MAAM;;;MAG/B,iBAAiB,OAAO;;IAG1B;;;;KAIC,GACD,WAAW,MAAM;IAEjB;;;;KAIC,GACD,YAAY,MAAM;IAElB;;;;KAIC,GACD,iBAAiB,OAAO;IAExB;;;;;KAKC,GACD;;;KAGC,GACD,OAAO,MAAM;;;AAIjB;;;;;;;;;;;;;CAaC,GACD,YAAY,eAAe,oBAAoB,MAAM;AAIrD,iBAAiB;GACd,KAAK,MAAM,GAAG;;AAGjB;;;CAGC,GACD,YAAY,cACV,UAAU,MAAM,KACb,QAAQ;AAEb,OAAO,iBAAS,iBACd,OAAO,mBAAmB,GACzB;AAIH;;CAEC,GACD,iBAAiB;EACf;;;;;;;;;GASC,GACD,WAAW,aAAa,MAAM;EAE9B;;;GAGC,GACD,SAAS,QAAQ,wBAAwB,IAAI,GAAG,QAAQ,IAAI;;AAG9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsEC,GACD,OAAO,iBAAe,KACpB,YAAY,6BAA6B,oBAAoB,EAC7D,cAAc,cAAc,EAC5B,iBACI,gBACE,QAAQ,wBAAwB,IAAI,GAAG,QAAQ,IAAI,EAAE,GAC1D,QAAQ,oBAAoB"}
|