opentool 0.4.5 → 0.5.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/README.md +11 -8
- package/dist/cli/build.d.ts +15 -0
- package/dist/cli/build.d.ts.map +1 -1
- package/dist/cli/build.js +127 -398
- package/dist/cli/build.js.map +1 -1
- package/dist/cli/dev.d.ts.map +1 -1
- package/dist/cli/dev.js +31 -76
- package/dist/cli/dev.js.map +1 -1
- package/dist/cli/generate-metadata.d.ts +7 -7
- package/dist/cli/generate-metadata.d.ts.map +1 -1
- package/dist/cli/generate-metadata.js +37 -238
- package/dist/cli/generate-metadata.js.map +1 -1
- package/dist/cli/shared/metadata.d.ts +19 -0
- package/dist/cli/shared/metadata.d.ts.map +1 -0
- package/dist/cli/shared/metadata.js +283 -0
- package/dist/cli/shared/metadata.js.map +1 -0
- package/dist/cli/validate.d.ts +5 -1
- package/dist/cli/validate.d.ts.map +1 -1
- package/dist/cli/validate.js +146 -237
- package/dist/cli/validate.js.map +1 -1
- package/dist/runtime/index.d.ts +1 -0
- package/dist/runtime/index.d.ts.map +1 -1
- package/dist/runtime/index.js +118 -69
- package/dist/runtime/index.js.map +1 -1
- package/dist/types/index.d.ts +5 -22
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/metadata.d.ts +975 -59
- package/dist/types/metadata.d.ts.map +1 -1
- package/dist/types/metadata.js +105 -0
- package/dist/types/metadata.js.map +1 -1
- package/dist/utils/esbuild.d.ts +13 -0
- package/dist/utils/esbuild.d.ts.map +1 -0
- package/dist/utils/esbuild.js +95 -0
- package/dist/utils/esbuild.js.map +1 -0
- package/dist/utils/module-loader.d.ts +3 -0
- package/dist/utils/module-loader.d.ts.map +1 -0
- package/dist/utils/module-loader.js +49 -0
- package/dist/utils/module-loader.js.map +1 -0
- package/package.json +5 -1
package/dist/runtime/index.js
CHANGED
|
@@ -35,17 +35,20 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.createDevServer = createDevServer;
|
|
37
37
|
exports.createStdioServer = createStdioServer;
|
|
38
|
+
exports.resolveRuntimePath = resolveRuntimePath;
|
|
38
39
|
const index_js_1 = require("@modelcontextprotocol/sdk/server/index.js");
|
|
39
40
|
const stdio_js_1 = require("@modelcontextprotocol/sdk/server/stdio.js");
|
|
40
41
|
const types_js_1 = require("@modelcontextprotocol/sdk/types.js");
|
|
41
42
|
const fs = __importStar(require("fs"));
|
|
42
43
|
const path = __importStar(require("path"));
|
|
43
|
-
|
|
44
|
-
|
|
44
|
+
const url_1 = require("url");
|
|
45
|
+
const zod_to_json_schema_1 = require("zod-to-json-schema");
|
|
45
46
|
/**
|
|
46
47
|
* Create local development server
|
|
47
48
|
*/
|
|
48
49
|
function createDevServer(tools) {
|
|
50
|
+
const metadata = loadMetadata();
|
|
51
|
+
const metadataMap = buildMetadataMap(metadata);
|
|
49
52
|
const server = new index_js_1.Server({
|
|
50
53
|
name: 'opentool-dev',
|
|
51
54
|
version: '1.0.0',
|
|
@@ -54,15 +57,9 @@ function createDevServer(tools) {
|
|
|
54
57
|
tools: {},
|
|
55
58
|
},
|
|
56
59
|
});
|
|
57
|
-
// Register list tools handler
|
|
58
60
|
server.setRequestHandler(types_js_1.ListToolsRequestSchema, async () => ({
|
|
59
|
-
tools: tools.map(tool => (
|
|
60
|
-
name: tool.metadata?.name || tool.filename,
|
|
61
|
-
description: tool.metadata?.description || `${tool.filename} tool`,
|
|
62
|
-
inputSchema: tool.schema,
|
|
63
|
-
})),
|
|
61
|
+
tools: tools.map(tool => serializeTool(tool, metadataMap)),
|
|
64
62
|
}));
|
|
65
|
-
// Register call tool handler
|
|
66
63
|
server.setRequestHandler(types_js_1.CallToolRequestSchema, async (request) => {
|
|
67
64
|
const tool = tools.find(t => {
|
|
68
65
|
const toolName = t.metadata?.name || t.filename;
|
|
@@ -88,59 +85,13 @@ function createDevServer(tools) {
|
|
|
88
85
|
});
|
|
89
86
|
return server;
|
|
90
87
|
}
|
|
91
|
-
/**
|
|
92
|
-
* Load tools from tools directory
|
|
93
|
-
*/
|
|
94
|
-
async function loadToolsFromDirectory() {
|
|
95
|
-
const tools = [];
|
|
96
|
-
const toolsDir = path.join(process.cwd(), 'tools');
|
|
97
|
-
if (!fs.existsSync(toolsDir)) {
|
|
98
|
-
return tools;
|
|
99
|
-
}
|
|
100
|
-
const files = fs.readdirSync(toolsDir);
|
|
101
|
-
for (const file of files) {
|
|
102
|
-
if (file.endsWith('.js') || file.endsWith('.ts')) {
|
|
103
|
-
const toolPath = path.join(toolsDir, file);
|
|
104
|
-
try {
|
|
105
|
-
const toolModule = require(toolPath);
|
|
106
|
-
// Check for required exports (schema and TOOL function, metadata is optional)
|
|
107
|
-
if (toolModule.TOOL && toolModule.schema) {
|
|
108
|
-
const baseName = file.replace(/\.(ts|js)$/, '');
|
|
109
|
-
const tool = {
|
|
110
|
-
schema: toolModule.schema,
|
|
111
|
-
inputSchema: { type: 'object' }, // Placeholder for runtime
|
|
112
|
-
metadata: toolModule.metadata || null,
|
|
113
|
-
filename: baseName,
|
|
114
|
-
handler: async (params) => {
|
|
115
|
-
const result = await toolModule.TOOL(params);
|
|
116
|
-
// Handle both string and object returns
|
|
117
|
-
if (typeof result === 'string') {
|
|
118
|
-
return {
|
|
119
|
-
content: [{ type: 'text', text: result }],
|
|
120
|
-
isError: false,
|
|
121
|
-
};
|
|
122
|
-
}
|
|
123
|
-
return result;
|
|
124
|
-
}
|
|
125
|
-
};
|
|
126
|
-
tools.push(tool);
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
catch (error) {
|
|
130
|
-
console.warn(`Failed to load tool from ${file}: ${error}`);
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
return tools;
|
|
135
|
-
}
|
|
136
|
-
// Legacy HTTP handler removed - now using AWS MCP Adapter for Lambda deployment
|
|
137
88
|
/**
|
|
138
89
|
* Create stdio server for use with AWS Lambda MCP Adapter
|
|
139
90
|
*/
|
|
140
91
|
async function createStdioServer(tools) {
|
|
141
|
-
|
|
142
|
-
const
|
|
143
|
-
|
|
92
|
+
const metadata = loadMetadata();
|
|
93
|
+
const metadataMap = buildMetadataMap(metadata);
|
|
94
|
+
const toolDefinitions = tools || await loadToolsFromDirectory(metadataMap);
|
|
144
95
|
const server = new index_js_1.Server({
|
|
145
96
|
name: 'opentool-runtime',
|
|
146
97
|
version: '1.0.0',
|
|
@@ -149,17 +100,9 @@ async function createStdioServer(tools) {
|
|
|
149
100
|
tools: {},
|
|
150
101
|
},
|
|
151
102
|
});
|
|
152
|
-
// Register all tools at once
|
|
153
|
-
const toolsList = toolDefinitions.map(tool => ({
|
|
154
|
-
name: tool.metadata?.name || tool.filename,
|
|
155
|
-
description: tool.metadata?.description || `${tool.filename} tool`,
|
|
156
|
-
inputSchema: tool.schema,
|
|
157
|
-
}));
|
|
158
|
-
// Register list tools handler
|
|
159
103
|
server.setRequestHandler(types_js_1.ListToolsRequestSchema, async () => ({
|
|
160
|
-
tools:
|
|
104
|
+
tools: toolDefinitions.map(tool => serializeTool(tool, metadataMap)),
|
|
161
105
|
}));
|
|
162
|
-
// Register call tool handler
|
|
163
106
|
server.setRequestHandler(types_js_1.CallToolRequestSchema, async (request) => {
|
|
164
107
|
const tool = toolDefinitions.find(t => {
|
|
165
108
|
const toolName = t.metadata?.name || t.filename;
|
|
@@ -183,10 +126,116 @@ async function createStdioServer(tools) {
|
|
|
183
126
|
};
|
|
184
127
|
}
|
|
185
128
|
});
|
|
186
|
-
// Create stdio transport
|
|
187
129
|
const transport = new stdio_js_1.StdioServerTransport();
|
|
188
|
-
// Connect server to transport
|
|
189
130
|
await server.connect(transport);
|
|
190
131
|
console.error('MCP stdio server started');
|
|
191
132
|
}
|
|
133
|
+
/**
|
|
134
|
+
* Load tools from tools directory
|
|
135
|
+
*/
|
|
136
|
+
async function loadToolsFromDirectory(metadataMap) {
|
|
137
|
+
const tools = [];
|
|
138
|
+
const toolsDir = path.join(process.cwd(), 'tools');
|
|
139
|
+
if (!fs.existsSync(toolsDir)) {
|
|
140
|
+
return tools;
|
|
141
|
+
}
|
|
142
|
+
const files = fs.readdirSync(toolsDir);
|
|
143
|
+
for (const file of files) {
|
|
144
|
+
if (!isSupportedToolFile(file)) {
|
|
145
|
+
continue;
|
|
146
|
+
}
|
|
147
|
+
const toolPath = path.join(toolsDir, file);
|
|
148
|
+
try {
|
|
149
|
+
const exportsObject = require(toolPath);
|
|
150
|
+
const candidate = exportsObject && exportsObject.schema && exportsObject.TOOL
|
|
151
|
+
? exportsObject
|
|
152
|
+
: exportsObject?.default;
|
|
153
|
+
if (!candidate?.schema || !candidate?.TOOL) {
|
|
154
|
+
continue;
|
|
155
|
+
}
|
|
156
|
+
const baseName = file.replace(/\.[^.]+$/, '');
|
|
157
|
+
const name = candidate.metadata?.name || baseName;
|
|
158
|
+
const meta = metadataMap.get(name);
|
|
159
|
+
let inputSchema = meta?.inputSchema;
|
|
160
|
+
if (!inputSchema) {
|
|
161
|
+
try {
|
|
162
|
+
inputSchema = (0, zod_to_json_schema_1.zodToJsonSchema)(candidate.schema, {
|
|
163
|
+
name: `${name}Schema`,
|
|
164
|
+
target: 'jsonSchema7',
|
|
165
|
+
$refStrategy: 'none',
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
catch (error) {
|
|
169
|
+
inputSchema = { type: 'object' };
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
const tool = {
|
|
173
|
+
schema: candidate.schema,
|
|
174
|
+
inputSchema,
|
|
175
|
+
metadata: candidate.metadata || meta || null,
|
|
176
|
+
filename: baseName,
|
|
177
|
+
handler: async (params) => {
|
|
178
|
+
const result = await candidate.TOOL(params);
|
|
179
|
+
if (typeof result === 'string') {
|
|
180
|
+
return {
|
|
181
|
+
content: [{ type: 'text', text: result }],
|
|
182
|
+
isError: false,
|
|
183
|
+
};
|
|
184
|
+
}
|
|
185
|
+
return result;
|
|
186
|
+
},
|
|
187
|
+
};
|
|
188
|
+
tools.push(tool);
|
|
189
|
+
}
|
|
190
|
+
catch (error) {
|
|
191
|
+
console.warn(`Failed to load tool from ${file}: ${error}`);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
return tools;
|
|
195
|
+
}
|
|
196
|
+
function loadMetadata() {
|
|
197
|
+
const metadataPath = path.join(process.cwd(), 'metadata.json');
|
|
198
|
+
if (!fs.existsSync(metadataPath)) {
|
|
199
|
+
return null;
|
|
200
|
+
}
|
|
201
|
+
try {
|
|
202
|
+
const contents = fs.readFileSync(metadataPath, 'utf8');
|
|
203
|
+
return JSON.parse(contents);
|
|
204
|
+
}
|
|
205
|
+
catch (error) {
|
|
206
|
+
console.warn(`Failed to parse metadata.json: ${error}`);
|
|
207
|
+
return null;
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
function buildMetadataMap(metadata) {
|
|
211
|
+
const map = new Map();
|
|
212
|
+
if (!metadata?.tools) {
|
|
213
|
+
return map;
|
|
214
|
+
}
|
|
215
|
+
metadata.tools.forEach((tool) => {
|
|
216
|
+
map.set(tool.name, tool);
|
|
217
|
+
});
|
|
218
|
+
return map;
|
|
219
|
+
}
|
|
220
|
+
function serializeTool(tool, metadataMap) {
|
|
221
|
+
const name = tool.metadata?.name || tool.filename;
|
|
222
|
+
const meta = metadataMap.get(name);
|
|
223
|
+
return {
|
|
224
|
+
name,
|
|
225
|
+
description: meta?.description || tool.metadata?.description || `${tool.filename} tool`,
|
|
226
|
+
inputSchema: meta?.inputSchema || tool.inputSchema,
|
|
227
|
+
annotations: meta?.annotations || tool.metadata?.annotations,
|
|
228
|
+
payment: meta?.payment || tool.metadata?.payment,
|
|
229
|
+
discovery: meta?.discovery || tool.metadata?.discovery,
|
|
230
|
+
};
|
|
231
|
+
}
|
|
232
|
+
function isSupportedToolFile(file) {
|
|
233
|
+
return /\.(cjs|mjs|js|ts)$/i.test(file);
|
|
234
|
+
}
|
|
235
|
+
function resolveRuntimePath(value) {
|
|
236
|
+
if (value.startsWith('file://')) {
|
|
237
|
+
return (0, url_1.fileURLToPath)(value);
|
|
238
|
+
}
|
|
239
|
+
return path.resolve(value);
|
|
240
|
+
}
|
|
192
241
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/runtime/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/runtime/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
import {
|
|
2
|
+
import type { ToolMetadataOverrides } from "./metadata";
|
|
3
3
|
export interface ToolContent {
|
|
4
4
|
type: "text" | "image" | "resource";
|
|
5
5
|
text?: string;
|
|
@@ -12,39 +12,22 @@ export interface ToolResponse {
|
|
|
12
12
|
}
|
|
13
13
|
export interface InternalToolDefinition<TSchema extends z.ZodSchema = z.ZodSchema> {
|
|
14
14
|
schema: TSchema;
|
|
15
|
-
inputSchema:
|
|
16
|
-
metadata:
|
|
15
|
+
inputSchema: unknown;
|
|
16
|
+
metadata: ToolMetadataOverrides | null;
|
|
17
17
|
handler: (params: z.infer<TSchema>) => Promise<ToolResponse>;
|
|
18
18
|
filename: string;
|
|
19
|
+
sourcePath?: string;
|
|
19
20
|
}
|
|
20
21
|
export interface ServerConfig {
|
|
21
22
|
name: string;
|
|
22
23
|
version: string;
|
|
23
24
|
tools: InternalToolDefinition[];
|
|
24
25
|
}
|
|
25
|
-
export interface LambdaEvent {
|
|
26
|
-
httpMethod: string;
|
|
27
|
-
path: string;
|
|
28
|
-
headers: Record<string, string>;
|
|
29
|
-
body: string;
|
|
30
|
-
isBase64Encoded: boolean;
|
|
31
|
-
}
|
|
32
|
-
export interface LambdaContext {
|
|
33
|
-
requestId: string;
|
|
34
|
-
functionName: string;
|
|
35
|
-
functionVersion: string;
|
|
36
|
-
remainingTimeInMillis: number;
|
|
37
|
-
}
|
|
38
|
-
export interface LambdaResponse {
|
|
39
|
-
statusCode: number;
|
|
40
|
-
headers: Record<string, string>;
|
|
41
|
-
body: string;
|
|
42
|
-
}
|
|
43
26
|
export interface BuildConfig {
|
|
44
27
|
toolsDir: string;
|
|
45
28
|
outputDir: string;
|
|
46
29
|
serverName?: string;
|
|
47
30
|
serverVersion?: string;
|
|
48
31
|
}
|
|
49
|
-
export type { Metadata } from "./metadata";
|
|
32
|
+
export type { Tool, ToolMetadataOverrides, Metadata } from "./metadata";
|
|
50
33
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAGxD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,UAAU,CAAC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAGD,MAAM,WAAW,sBAAsB,CACrC,OAAO,SAAS,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS;IAEzC,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACvC,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;IAC7D,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAGD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,sBAAsB,EAAE,CAAC;CACjC;AAGD,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,YAAY,EAAE,IAAI,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"}
|