@mcp-b/webmcp-types 2.0.7 → 2.0.9
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/model-context.d.ts +2 -2
- package/dist/model-context.d.ts.map +1 -1
- package/dist/tool.d.ts +5 -5
- package/dist/tool.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/model-context.ts +2 -2
- package/src/tool.ts +13 -6
package/dist/model-context.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { InputSchema, ToolResponse } from './common.js';
|
|
2
|
-
import type { JsonSchemaForInference
|
|
2
|
+
import type { JsonSchemaForInference } from './json-schema.js';
|
|
3
3
|
import type { ToolDescriptor, ToolDescriptorFromSchema, ToolListItem, ToolRawResult } from './tool.js';
|
|
4
4
|
/**
|
|
5
5
|
* Context provided to models via provideContext().
|
|
@@ -136,7 +136,7 @@ export interface ModelContextCore {
|
|
|
136
136
|
* `execute(args)` is inferred from `inputSchema`, and when a literal object
|
|
137
137
|
* `outputSchema` is provided, `execute(...).structuredContent` is inferred too.
|
|
138
138
|
*/
|
|
139
|
-
registerTool<TInputSchema extends JsonSchemaForInference, TOutputSchema extends
|
|
139
|
+
registerTool<TInputSchema extends JsonSchemaForInference, TOutputSchema extends JsonSchemaForInference | undefined = undefined, TName extends string = string>(tool: ToolDescriptorFromSchema<TInputSchema, TOutputSchema, TName>): void;
|
|
140
140
|
/**
|
|
141
141
|
* Registers a dynamic tool with explicitly typed args/result.
|
|
142
142
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-context.d.ts","sourceRoot":"","sources":["../src/model-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EAAE,sBAAsB,EAAE,
|
|
1
|
+
{"version":3,"file":"model-context.d.ts","sourceRoot":"","sources":["../src/model-context.ts"],"names":[],"mappings":"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"}
|
package/dist/tool.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { CallToolResult, ElicitationParams, ElicitationResult, InputSchema } from './common.js';
|
|
2
|
-
import type { InferArgsFromInputSchema, InferJsonSchema, JsonSchemaObject } from './json-schema.js';
|
|
2
|
+
import type { InferArgsFromInputSchema, InferJsonSchema, JsonSchemaForInference, JsonSchemaObject } from './json-schema.js';
|
|
3
3
|
/**
|
|
4
4
|
* Annotations providing hints about tool behavior.
|
|
5
5
|
*
|
|
@@ -106,13 +106,13 @@ export interface ToolDescriptor<TArgs extends Record<string, unknown> = Record<s
|
|
|
106
106
|
*
|
|
107
107
|
* @template TOutputSchema - Optional literal JSON object schema.
|
|
108
108
|
*/
|
|
109
|
-
export type ToolResultFromOutputSchema<TOutputSchema extends
|
|
109
|
+
export type ToolResultFromOutputSchema<TOutputSchema extends JsonSchemaForInference | undefined = undefined> = TOutputSchema extends JsonSchemaObject ? CallToolResult & {
|
|
110
110
|
structuredContent?: InferJsonSchema<TOutputSchema>;
|
|
111
111
|
} : CallToolResult;
|
|
112
112
|
/**
|
|
113
113
|
* Execute result typing derived from an optional output schema.
|
|
114
114
|
*/
|
|
115
|
-
export type ToolExecuteResultFromOutputSchema<TOutputSchema extends
|
|
115
|
+
export type ToolExecuteResultFromOutputSchema<TOutputSchema extends JsonSchemaForInference | undefined = undefined> = TOutputSchema extends JsonSchemaObject ? InferJsonSchema<TOutputSchema> | ToolResultFromOutputSchema<TOutputSchema> : TOutputSchema extends JsonSchemaForInference ? InferJsonSchema<TOutputSchema> | CallToolResult : ToolExecuteResult;
|
|
116
116
|
/**
|
|
117
117
|
* Tool descriptor whose `execute` args are inferred from a JSON Schema.
|
|
118
118
|
*
|
|
@@ -126,9 +126,9 @@ export type ToolExecuteResultFromOutputSchema<TOutputSchema extends JsonSchemaOb
|
|
|
126
126
|
*/
|
|
127
127
|
export type ToolDescriptorFromSchema<TInputSchema extends {
|
|
128
128
|
type?: string | readonly string[];
|
|
129
|
-
}, TOutputSchema extends
|
|
129
|
+
}, TOutputSchema extends JsonSchemaForInference | undefined = undefined, TName extends string = string> = Omit<ToolDescriptor<InferArgsFromInputSchema<TInputSchema>, ToolExecuteResultFromOutputSchema<TOutputSchema>, TName>, 'inputSchema' | 'outputSchema'> & {
|
|
130
130
|
inputSchema: TInputSchema;
|
|
131
|
-
} & (TOutputSchema extends
|
|
131
|
+
} & (TOutputSchema extends JsonSchemaForInference ? {
|
|
132
132
|
outputSchema: TOutputSchema;
|
|
133
133
|
} : {
|
|
134
134
|
outputSchema?: undefined;
|
package/dist/tool.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../src/tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,WAAW,EACZ,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../src/tool.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/model-context.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { InputSchema, ToolResponse } from './common.js';
|
|
2
|
-
import type { JsonSchemaForInference
|
|
2
|
+
import type { JsonSchemaForInference } from './json-schema.js';
|
|
3
3
|
import type {
|
|
4
4
|
ToolDescriptor,
|
|
5
5
|
ToolDescriptorFromSchema,
|
|
@@ -200,7 +200,7 @@ export interface ModelContextCore {
|
|
|
200
200
|
*/
|
|
201
201
|
registerTool<
|
|
202
202
|
TInputSchema extends JsonSchemaForInference,
|
|
203
|
-
TOutputSchema extends
|
|
203
|
+
TOutputSchema extends JsonSchemaForInference | undefined = undefined,
|
|
204
204
|
TName extends string = string,
|
|
205
205
|
>(tool: ToolDescriptorFromSchema<TInputSchema, TOutputSchema, TName>): void;
|
|
206
206
|
|
package/src/tool.ts
CHANGED
|
@@ -4,7 +4,12 @@ import type {
|
|
|
4
4
|
ElicitationResult,
|
|
5
5
|
InputSchema,
|
|
6
6
|
} from './common.js';
|
|
7
|
-
import type {
|
|
7
|
+
import type {
|
|
8
|
+
InferArgsFromInputSchema,
|
|
9
|
+
InferJsonSchema,
|
|
10
|
+
JsonSchemaForInference,
|
|
11
|
+
JsonSchemaObject,
|
|
12
|
+
} from './json-schema.js';
|
|
8
13
|
|
|
9
14
|
// ============================================================================
|
|
10
15
|
// Tool Annotations
|
|
@@ -143,7 +148,7 @@ export interface ToolDescriptor<
|
|
|
143
148
|
* @template TOutputSchema - Optional literal JSON object schema.
|
|
144
149
|
*/
|
|
145
150
|
export type ToolResultFromOutputSchema<
|
|
146
|
-
TOutputSchema extends
|
|
151
|
+
TOutputSchema extends JsonSchemaForInference | undefined = undefined,
|
|
147
152
|
> = TOutputSchema extends JsonSchemaObject
|
|
148
153
|
? CallToolResult & { structuredContent?: InferJsonSchema<TOutputSchema> }
|
|
149
154
|
: CallToolResult;
|
|
@@ -152,10 +157,12 @@ export type ToolResultFromOutputSchema<
|
|
|
152
157
|
* Execute result typing derived from an optional output schema.
|
|
153
158
|
*/
|
|
154
159
|
export type ToolExecuteResultFromOutputSchema<
|
|
155
|
-
TOutputSchema extends
|
|
160
|
+
TOutputSchema extends JsonSchemaForInference | undefined = undefined,
|
|
156
161
|
> = TOutputSchema extends JsonSchemaObject
|
|
157
162
|
? InferJsonSchema<TOutputSchema> | ToolResultFromOutputSchema<TOutputSchema>
|
|
158
|
-
:
|
|
163
|
+
: TOutputSchema extends JsonSchemaForInference
|
|
164
|
+
? InferJsonSchema<TOutputSchema> | CallToolResult
|
|
165
|
+
: ToolExecuteResult;
|
|
159
166
|
|
|
160
167
|
/**
|
|
161
168
|
* Tool descriptor whose `execute` args are inferred from a JSON Schema.
|
|
@@ -170,7 +177,7 @@ export type ToolExecuteResultFromOutputSchema<
|
|
|
170
177
|
*/
|
|
171
178
|
export type ToolDescriptorFromSchema<
|
|
172
179
|
TInputSchema extends { type?: string | readonly string[] },
|
|
173
|
-
TOutputSchema extends
|
|
180
|
+
TOutputSchema extends JsonSchemaForInference | undefined = undefined,
|
|
174
181
|
TName extends string = string,
|
|
175
182
|
> = Omit<
|
|
176
183
|
ToolDescriptor<
|
|
@@ -181,7 +188,7 @@ export type ToolDescriptorFromSchema<
|
|
|
181
188
|
'inputSchema' | 'outputSchema'
|
|
182
189
|
> & {
|
|
183
190
|
inputSchema: TInputSchema;
|
|
184
|
-
} & (TOutputSchema extends
|
|
191
|
+
} & (TOutputSchema extends JsonSchemaForInference
|
|
185
192
|
? {
|
|
186
193
|
outputSchema: TOutputSchema;
|
|
187
194
|
}
|