@nextclaw/ncp-mcp 0.1.113-beta.0 → 0.2.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/dist/index.d.ts +5 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -4
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { NcpTool } from "@nextclaw/ncp";
|
|
1
|
+
import { NcpTool, NcpToolExecutionContext } from "@nextclaw/ncp";
|
|
2
2
|
import { McpRegistryService, McpToolCatalogEntry } from "@nextclaw/mcp";
|
|
3
3
|
|
|
4
4
|
//#region src/mcp-ncp-tool.d.ts
|
|
@@ -8,8 +8,10 @@ declare class McpNcpTool implements NcpTool {
|
|
|
8
8
|
readonly name: string;
|
|
9
9
|
readonly description?: string;
|
|
10
10
|
readonly parameters?: Record<string, unknown>;
|
|
11
|
-
constructor(entry: McpToolCatalogEntry, executeImpl: (entry: McpToolCatalogEntry, args: Record<string, unknown
|
|
12
|
-
|
|
11
|
+
constructor(entry: McpToolCatalogEntry, executeImpl: (entry: McpToolCatalogEntry, args: Record<string, unknown>, options: {
|
|
12
|
+
signal?: AbortSignal;
|
|
13
|
+
}) => Promise<unknown>);
|
|
14
|
+
execute(args: unknown, context?: NcpToolExecutionContext): Promise<unknown>;
|
|
13
15
|
}
|
|
14
16
|
//#endregion
|
|
15
17
|
//#region src/mcp-ncp-tool-registry-adapter.d.ts
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/mcp-ncp-tool.ts","../src/mcp-ncp-tool-registry-adapter.ts"],"mappings":";;;;cAGa,UAAA,YAAsB,OAAA;EAAA,iBAMd,KAAA;EAAA,iBACA,WAAA;EAAA,SANV,IAAA;EAAA,SACA,WAAA;EAAA,SACA,UAAA,GAAa,MAAA;cAGH,KAAA,EAAO,mBAAA,EACP,WAAA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/mcp-ncp-tool.ts","../src/mcp-ncp-tool-registry-adapter.ts"],"mappings":";;;;cAGa,UAAA,YAAsB,OAAA;EAAA,iBAMd,KAAA;EAAA,iBACA,WAAA;EAAA,SANV,IAAA;EAAA,SACA,WAAA;EAAA,SACA,UAAA,GAAa,MAAA;cAGH,KAAA,EAAO,mBAAA,EACP,WAAA,GACf,KAAA,EAAO,mBAAA,EACP,IAAA,EAAM,MAAA,mBACN,OAAA;IAAW,MAAA,GAAS,WAAA;EAAA,MACjB,OAAA;EAOD,OAAA,CAAQ,IAAA,WAAe,OAAA,GAAU,uBAAA,GAA0B,OAAA;AAAA;;;cClBtD,yBAAA;EAAA,iBACkB,eAAA;cAAA,eAAA,EAAiB,kBAAA;EAE9C,eAAA,CAAgB,OAAA;IAAW,OAAA;EAAA,IAAoB,UAAA;AAAA"}
|
package/dist/index.js
CHANGED
|
@@ -10,8 +10,8 @@ var McpNcpTool = class {
|
|
|
10
10
|
this.description = entry.description;
|
|
11
11
|
this.parameters = entry.parameters;
|
|
12
12
|
}
|
|
13
|
-
async execute(args) {
|
|
14
|
-
return this.executeImpl(this.entry, isRecord(args) ? args : {});
|
|
13
|
+
async execute(args, context) {
|
|
14
|
+
return this.executeImpl(this.entry, isRecord(args) ? args : {}, { signal: context?.abortSignal });
|
|
15
15
|
}
|
|
16
16
|
};
|
|
17
17
|
function isRecord(value) {
|
|
@@ -24,10 +24,11 @@ var McpNcpToolRegistryAdapter = class {
|
|
|
24
24
|
this.registryService = registryService;
|
|
25
25
|
}
|
|
26
26
|
listToolsForRun(context) {
|
|
27
|
-
return this.registryService.listAccessibleTools({ agentId: context.agentId }).map((entry) => new McpNcpTool(entry, async (toolEntry, args) => this.registryService.callTool({
|
|
27
|
+
return this.registryService.listAccessibleTools({ agentId: context.agentId }).map((entry) => new McpNcpTool(entry, async (toolEntry, args, options) => this.registryService.callTool({
|
|
28
28
|
serverName: toolEntry.serverName,
|
|
29
29
|
toolName: toolEntry.toolName,
|
|
30
|
-
args
|
|
30
|
+
args,
|
|
31
|
+
signal: options.signal
|
|
31
32
|
})));
|
|
32
33
|
}
|
|
33
34
|
};
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../src/mcp-ncp-tool.ts","../src/mcp-ncp-tool-registry-adapter.ts"],"sourcesContent":["import type { NcpTool } from \"@nextclaw/ncp\";\nimport type { McpToolCatalogEntry } from \"@nextclaw/mcp\";\n\nexport class McpNcpTool implements NcpTool {\n readonly name: string;\n readonly description?: string;\n readonly parameters?: Record<string, unknown>;\n\n constructor(\n private readonly entry: McpToolCatalogEntry,\n private readonly executeImpl: (entry: McpToolCatalogEntry
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../src/mcp-ncp-tool.ts","../src/mcp-ncp-tool-registry-adapter.ts"],"sourcesContent":["import type { NcpTool, NcpToolExecutionContext } from \"@nextclaw/ncp\";\nimport type { McpToolCatalogEntry } from \"@nextclaw/mcp\";\n\nexport class McpNcpTool implements NcpTool {\n readonly name: string;\n readonly description?: string;\n readonly parameters?: Record<string, unknown>;\n\n constructor(\n private readonly entry: McpToolCatalogEntry,\n private readonly executeImpl: (\n entry: McpToolCatalogEntry,\n args: Record<string, unknown>,\n options: { signal?: AbortSignal },\n ) => Promise<unknown>,\n ) {\n this.name = entry.qualifiedName;\n this.description = entry.description;\n this.parameters = entry.parameters;\n }\n\n async execute(args: unknown, context?: NcpToolExecutionContext): Promise<unknown> {\n return this.executeImpl(this.entry, isRecord(args) ? args : {}, {\n signal: context?.abortSignal,\n });\n }\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return Boolean(value) && typeof value === \"object\" && !Array.isArray(value);\n}\n","import type { McpRegistryService } from \"@nextclaw/mcp\";\nimport { McpNcpTool } from \"./mcp-ncp-tool.js\";\n\nexport class McpNcpToolRegistryAdapter {\n constructor(private readonly registryService: McpRegistryService) {}\n\n listToolsForRun(context: { agentId: string }): McpNcpTool[] {\n return this.registryService.listAccessibleTools({\n agentId: context.agentId\n }).map((entry) =>\n new McpNcpTool(entry, async (toolEntry, args, options) =>\n this.registryService.callTool({\n serverName: toolEntry.serverName,\n toolName: toolEntry.toolName,\n args,\n signal: options.signal,\n })\n )\n );\n }\n}\n"],"mappings":";AAGA,IAAa,aAAb,MAA2C;CACzC;CACA;CACA;CAEA,YACE,OACA,aAKA;AANiB,OAAA,QAAA;AACA,OAAA,cAAA;AAMjB,OAAK,OAAO,MAAM;AAClB,OAAK,cAAc,MAAM;AACzB,OAAK,aAAa,MAAM;;CAG1B,MAAM,QAAQ,MAAe,SAAqD;AAChF,SAAO,KAAK,YAAY,KAAK,OAAO,SAAS,KAAK,GAAG,OAAO,EAAE,EAAE,EAC9D,QAAQ,SAAS,aAClB,CAAC;;;AAIN,SAAS,SAAS,OAAkD;AAClE,QAAO,QAAQ,MAAM,IAAI,OAAO,UAAU,YAAY,CAAC,MAAM,QAAQ,MAAM;;;;AC1B7E,IAAa,4BAAb,MAAuC;CACrC,YAAY,iBAAsD;AAArC,OAAA,kBAAA;;CAE7B,gBAAgB,SAA4C;AAC1D,SAAO,KAAK,gBAAgB,oBAAoB,EAC9C,SAAS,QAAQ,SAClB,CAAC,CAAC,KAAK,UACN,IAAI,WAAW,OAAO,OAAO,WAAW,MAAM,YAC5C,KAAK,gBAAgB,SAAS;GAC5B,YAAY,UAAU;GACtB,UAAU,UAAU;GACpB;GACA,QAAQ,QAAQ;GACjB,CAAC,CACH,CACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nextclaw/ncp-mcp",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Thin NCP adapter for exposing platform MCP tools inside NextClaw NCP runtimes.",
|
|
6
6
|
"type": "module",
|
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
"dist"
|
|
25
25
|
],
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@nextclaw/mcp": "0.
|
|
28
|
-
"@nextclaw/ncp": "0.
|
|
27
|
+
"@nextclaw/mcp": "0.3.0",
|
|
28
|
+
"@nextclaw/ncp": "0.7.0"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"@types/node": "^20.17.6",
|