@frontmcp/plugin-codecall 0.0.1 → 0.7.1

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.
Files changed (62) hide show
  1. package/codecall.plugin.d.ts +42 -0
  2. package/codecall.plugin.d.ts.map +1 -0
  3. package/codecall.symbol.d.ts +107 -0
  4. package/codecall.symbol.d.ts.map +1 -0
  5. package/codecall.types.d.ts +353 -0
  6. package/codecall.types.d.ts.map +1 -0
  7. package/errors/index.d.ts +2 -0
  8. package/errors/index.d.ts.map +1 -0
  9. package/errors/tool-call.errors.d.ts +80 -0
  10. package/errors/tool-call.errors.d.ts.map +1 -0
  11. package/esm/index.mjs +2625 -0
  12. package/esm/package.json +59 -0
  13. package/index.d.ts +3 -0
  14. package/index.d.ts.map +1 -0
  15. package/index.js +2668 -0
  16. package/package.json +3 -3
  17. package/providers/code-call.config.d.ts +30 -0
  18. package/providers/code-call.config.d.ts.map +1 -0
  19. package/security/index.d.ts +3 -0
  20. package/security/index.d.ts.map +1 -0
  21. package/security/self-reference-guard.d.ts +33 -0
  22. package/security/self-reference-guard.d.ts.map +1 -0
  23. package/security/tool-access-control.service.d.ts +105 -0
  24. package/security/tool-access-control.service.d.ts.map +1 -0
  25. package/services/audit-logger.service.d.ts +187 -0
  26. package/services/audit-logger.service.d.ts.map +1 -0
  27. package/services/enclave.service.d.ts +63 -0
  28. package/services/enclave.service.d.ts.map +1 -0
  29. package/services/error-enrichment.service.d.ts +95 -0
  30. package/services/error-enrichment.service.d.ts.map +1 -0
  31. package/services/index.d.ts +7 -0
  32. package/services/index.d.ts.map +1 -0
  33. package/services/output-sanitizer.d.ts +87 -0
  34. package/services/output-sanitizer.d.ts.map +1 -0
  35. package/services/synonym-expansion.service.d.ts +67 -0
  36. package/services/synonym-expansion.service.d.ts.map +1 -0
  37. package/services/tool-search.service.d.ts +196 -0
  38. package/services/tool-search.service.d.ts.map +1 -0
  39. package/tools/describe.schema.d.ts +29 -0
  40. package/tools/describe.schema.d.ts.map +1 -0
  41. package/tools/describe.tool.d.ts +36 -0
  42. package/tools/describe.tool.d.ts.map +1 -0
  43. package/tools/execute.schema.d.ts +116 -0
  44. package/tools/execute.schema.d.ts.map +1 -0
  45. package/tools/execute.tool.d.ts +6 -0
  46. package/tools/execute.tool.d.ts.map +1 -0
  47. package/tools/index.d.ts +5 -0
  48. package/tools/index.d.ts.map +1 -0
  49. package/tools/invoke.schema.d.ts +105 -0
  50. package/tools/invoke.schema.d.ts.map +1 -0
  51. package/tools/invoke.tool.d.ts +14 -0
  52. package/tools/invoke.tool.d.ts.map +1 -0
  53. package/tools/search.schema.d.ts +31 -0
  54. package/tools/search.schema.d.ts.map +1 -0
  55. package/tools/search.tool.d.ts +6 -0
  56. package/tools/search.tool.d.ts.map +1 -0
  57. package/utils/describe.utils.d.ts +87 -0
  58. package/utils/describe.utils.d.ts.map +1 -0
  59. package/utils/index.d.ts +3 -0
  60. package/utils/index.d.ts.map +1 -0
  61. package/utils/mcp-result.d.ts +7 -0
  62. package/utils/mcp-result.d.ts.map +1 -0
@@ -0,0 +1,105 @@
1
+ import { z } from 'zod';
2
+ export declare const invokeToolDescription = "Call ONE tool directly. Returns standard MCP CallToolResult.\n\nUSE invoke: single tool, no transformation\nUSE execute: multiple tools, loops, filtering, joining\n\nINPUT: tool (string), input (object matching tool schema)\nOUTPUT: MCP CallToolResult (same as standard tool call)\nERRORS: tool_not_found (\u2192 re-search) | validation_error | execution_error | permission_denied\n\nFLOW: search \u2192 describe \u2192 invoke";
3
+ export declare const invokeToolInputSchema: z.ZodObject<{
4
+ tool: z.ZodString;
5
+ input: z.ZodRecord<z.ZodString, z.ZodUnknown>;
6
+ }, z.core.$strip>;
7
+ export type InvokeToolInput = z.infer<typeof invokeToolInputSchema>;
8
+ export declare const invokeToolOutputSchema: z.ZodObject<{
9
+ _meta: z.ZodOptional<z.ZodObject<{
10
+ progressToken: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
11
+ "io.modelcontextprotocol/related-task": z.ZodOptional<z.ZodObject<{
12
+ taskId: z.ZodString;
13
+ }, z.core.$strip>>;
14
+ }, z.core.$loose>>;
15
+ content: z.ZodDefault<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
16
+ type: z.ZodLiteral<"text">;
17
+ text: z.ZodString;
18
+ annotations: z.ZodOptional<z.ZodObject<{
19
+ audience: z.ZodOptional<z.ZodArray<z.ZodEnum<{
20
+ user: "user";
21
+ assistant: "assistant";
22
+ }>>>;
23
+ priority: z.ZodOptional<z.ZodNumber>;
24
+ lastModified: z.ZodOptional<z.ZodISODateTime>;
25
+ }, z.core.$strip>>;
26
+ _meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
27
+ }, z.core.$strip>, z.ZodObject<{
28
+ type: z.ZodLiteral<"image">;
29
+ data: z.ZodString;
30
+ mimeType: z.ZodString;
31
+ annotations: z.ZodOptional<z.ZodObject<{
32
+ audience: z.ZodOptional<z.ZodArray<z.ZodEnum<{
33
+ user: "user";
34
+ assistant: "assistant";
35
+ }>>>;
36
+ priority: z.ZodOptional<z.ZodNumber>;
37
+ lastModified: z.ZodOptional<z.ZodISODateTime>;
38
+ }, z.core.$strip>>;
39
+ _meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
40
+ }, z.core.$strip>, z.ZodObject<{
41
+ type: z.ZodLiteral<"audio">;
42
+ data: z.ZodString;
43
+ mimeType: z.ZodString;
44
+ annotations: z.ZodOptional<z.ZodObject<{
45
+ audience: z.ZodOptional<z.ZodArray<z.ZodEnum<{
46
+ user: "user";
47
+ assistant: "assistant";
48
+ }>>>;
49
+ priority: z.ZodOptional<z.ZodNumber>;
50
+ lastModified: z.ZodOptional<z.ZodISODateTime>;
51
+ }, z.core.$strip>>;
52
+ _meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
53
+ }, z.core.$strip>, z.ZodObject<{
54
+ uri: z.ZodString;
55
+ description: z.ZodOptional<z.ZodString>;
56
+ mimeType: z.ZodOptional<z.ZodString>;
57
+ annotations: z.ZodOptional<z.ZodObject<{
58
+ audience: z.ZodOptional<z.ZodArray<z.ZodEnum<{
59
+ user: "user";
60
+ assistant: "assistant";
61
+ }>>>;
62
+ priority: z.ZodOptional<z.ZodNumber>;
63
+ lastModified: z.ZodOptional<z.ZodISODateTime>;
64
+ }, z.core.$strip>>;
65
+ _meta: z.ZodOptional<z.ZodObject<{}, z.core.$loose>>;
66
+ icons: z.ZodOptional<z.ZodArray<z.ZodObject<{
67
+ src: z.ZodString;
68
+ mimeType: z.ZodOptional<z.ZodString>;
69
+ sizes: z.ZodOptional<z.ZodArray<z.ZodString>>;
70
+ theme: z.ZodOptional<z.ZodEnum<{
71
+ light: "light";
72
+ dark: "dark";
73
+ }>>;
74
+ }, z.core.$strip>>>;
75
+ name: z.ZodString;
76
+ title: z.ZodOptional<z.ZodString>;
77
+ type: z.ZodLiteral<"resource_link">;
78
+ }, z.core.$strip>, z.ZodObject<{
79
+ type: z.ZodLiteral<"resource">;
80
+ resource: z.ZodUnion<readonly [z.ZodObject<{
81
+ uri: z.ZodString;
82
+ mimeType: z.ZodOptional<z.ZodString>;
83
+ _meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
84
+ text: z.ZodString;
85
+ }, z.core.$strip>, z.ZodObject<{
86
+ uri: z.ZodString;
87
+ mimeType: z.ZodOptional<z.ZodString>;
88
+ _meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
89
+ blob: z.ZodString;
90
+ }, z.core.$strip>]>;
91
+ annotations: z.ZodOptional<z.ZodObject<{
92
+ audience: z.ZodOptional<z.ZodArray<z.ZodEnum<{
93
+ user: "user";
94
+ assistant: "assistant";
95
+ }>>>;
96
+ priority: z.ZodOptional<z.ZodNumber>;
97
+ lastModified: z.ZodOptional<z.ZodISODateTime>;
98
+ }, z.core.$strip>>;
99
+ _meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
100
+ }, z.core.$strip>]>>>;
101
+ structuredContent: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
102
+ isError: z.ZodOptional<z.ZodBoolean>;
103
+ }, z.core.$loose>;
104
+ export type InvokeToolOutput = z.infer<typeof invokeToolOutputSchema>;
105
+ //# sourceMappingURL=invoke.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invoke.schema.d.ts","sourceRoot":"","sources":["../../src/tools/invoke.schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,qBAAqB,+aASD,CAAC;AAElC,eAAO,MAAM,qBAAqB;;;iBAWhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAGpE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAuB,CAAC;AAE3D,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { ToolContext } from '@frontmcp/sdk';
2
+ import { InvokeToolInput, InvokeToolOutput } from './invoke.schema';
3
+ /**
4
+ * InvokeTool allows direct tool invocation without running JavaScript code.
5
+ * Returns the same CallToolResult format as a standard MCP tool call.
6
+ *
7
+ * Security Considerations:
8
+ * - Self-reference blocking: Cannot invoke codecall:* tools
9
+ * - All middleware (auth, PII, rate limiting) applies via normal tool execution
10
+ */
11
+ export default class InvokeTool extends ToolContext {
12
+ execute(input: InvokeToolInput): Promise<InvokeToolOutput>;
13
+ }
14
+ //# sourceMappingURL=invoke.tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invoke.tool.d.ts","sourceRoot":"","sources":["../../src/tools/invoke.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,WAAW,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EACL,eAAe,EAEf,gBAAgB,EAGjB,MAAM,iBAAiB,CAAC;AAazB;;;;;;;GAOG;AAeH,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,WAAW;IAC3C,OAAO,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAkCjE"}
@@ -0,0 +1,31 @@
1
+ import { z } from 'zod';
2
+ export declare const searchToolDescription = "Find tools by splitting user request into atomic actions.\n\nDECOMPOSE: \"delete users and send email\" \u2192 queries: [\"delete user\", \"send email\"]\nDECOMPOSE: \"get order and refund\" \u2192 queries: [\"get order\", \"calculate refund\"]\n\nAVOID RE-SEARCHING: Use excludeToolNames for already-discovered tools.\nRE-SEARCH WHEN: describe fails (typo?) OR execute returns tool_not_found.\n\nINPUT:\n- queries: string[] (required) - atomic action phrases, max 10\n- appIds?: string[] - filter by app\n- excludeToolNames?: string[] - skip known tools\n- topK?: number (default 5) - results per query\n- minRelevanceScore?: number (default 0.3) - minimum match threshold\n\nOUTPUT: Flat deduplicated tool list. relevanceScore: 0.5+=good, 0.7+=strong match.\n\nFLOW: search \u2192 describe \u2192 execute/invoke";
3
+ export declare const searchToolInputSchema: z.ZodObject<{
4
+ queries: z.ZodArray<z.ZodString>;
5
+ appIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
6
+ excludeToolNames: z.ZodOptional<z.ZodArray<z.ZodString>>;
7
+ topK: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
8
+ minRelevanceScore: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
9
+ }, z.core.$strip>;
10
+ export type SearchToolInput = z.infer<typeof searchToolInputSchema>;
11
+ export declare const searchToolOutputSchema: z.ZodObject<{
12
+ tools: z.ZodArray<z.ZodObject<{
13
+ name: z.ZodString;
14
+ appId: z.ZodOptional<z.ZodString>;
15
+ description: z.ZodString;
16
+ relevanceScore: z.ZodNumber;
17
+ matchedQueries: z.ZodArray<z.ZodString>;
18
+ }, z.core.$strip>>;
19
+ warnings: z.ZodArray<z.ZodObject<{
20
+ type: z.ZodEnum<{
21
+ excluded_tool_not_found: "excluded_tool_not_found";
22
+ no_results: "no_results";
23
+ low_relevance: "low_relevance";
24
+ }>;
25
+ message: z.ZodString;
26
+ affectedTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
27
+ }, z.core.$strip>>;
28
+ totalAvailableTools: z.ZodNumber;
29
+ }, z.core.$strip>;
30
+ export type SearchToolOutput = z.infer<typeof searchToolOutputSchema>;
31
+ //# sourceMappingURL=search.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.schema.d.ts","sourceRoot":"","sources":["../../src/tools/search.schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,qBAAqB,kzBAiBO,CAAC;AAE1C,eAAO,MAAM,qBAAqB;;;;;;iBAgBhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;iBAsBjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { ToolContext } from '@frontmcp/sdk';
2
+ import { SearchToolInput, SearchToolOutput } from './search.schema';
3
+ export default class SearchTool extends ToolContext {
4
+ execute(input: SearchToolInput): Promise<SearchToolOutput>;
5
+ }
6
+ //# sourceMappingURL=search.tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.tool.d.ts","sourceRoot":"","sources":["../../src/tools/search.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,WAAW,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EACL,eAAe,EAEf,gBAAgB,EAGjB,MAAM,iBAAiB,CAAC;AA8BzB,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,WAAW;IAC3C,OAAO,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAyFjE"}
@@ -0,0 +1,87 @@
1
+ import type { JSONSchema } from 'zod/v4/core';
2
+ /** JSON Schema type from Zod v4 */
3
+ type JsonSchema = JSONSchema.JSONSchema;
4
+ /**
5
+ * Tool example for describe output
6
+ */
7
+ export interface ToolUsageExample {
8
+ description: string;
9
+ code: string;
10
+ }
11
+ /**
12
+ * Detected intent of a tool based on its name and description.
13
+ */
14
+ export type ToolIntent = 'create' | 'list' | 'get' | 'update' | 'delete' | 'search' | 'action' | 'unknown';
15
+ /**
16
+ * Detect the intent of a tool from its name.
17
+ * Extracts the action verb from tool names like "users:create" or "orders:list".
18
+ */
19
+ export declare function detectToolIntent(toolName: string, description?: string): ToolIntent;
20
+ /**
21
+ * Generate a TypeScript-like function signature from a JSON Schema.
22
+ *
23
+ * @example
24
+ * Input: { type: 'object', properties: { id: { type: 'string' }, limit: { type: 'number' } }, required: ['id'] }
25
+ * Output: "(id: string, limit?: number) => unknown"
26
+ */
27
+ export declare function jsonSchemaToSignature(toolName: string, inputSchema?: JsonSchema, outputSchema?: JsonSchema): string;
28
+ /**
29
+ * Generate a natural language summary of a schema.
30
+ */
31
+ export declare function jsonSchemaToNaturalLanguage(schema: JsonSchema | undefined | null, direction: 'input' | 'output'): string;
32
+ /**
33
+ * Generate a basic usage example for a tool.
34
+ */
35
+ export declare function generateBasicExample(toolName: string, inputSchema?: JsonSchema): ToolUsageExample;
36
+ /**
37
+ * Check if a schema has pagination parameters.
38
+ */
39
+ export declare function hasPaginationParams(schema?: JsonSchema): boolean;
40
+ /**
41
+ * Check if a schema has filter-like parameters.
42
+ */
43
+ export declare function hasFilterParams(schema?: JsonSchema): boolean;
44
+ /**
45
+ * Get filter-like property names from a schema.
46
+ */
47
+ export declare function getFilterProperties(schema?: JsonSchema): string[];
48
+ /**
49
+ * Generate a pagination example for a tool.
50
+ */
51
+ export declare function generatePaginationExample(toolName: string): ToolUsageExample;
52
+ /**
53
+ * Generate a filter example for a tool.
54
+ */
55
+ export declare function generateFilterExample(toolName: string, filterProp: string): ToolUsageExample;
56
+ /**
57
+ * Generate a create example for a tool.
58
+ * Shows required parameters with contextual sample values.
59
+ */
60
+ export declare function generateCreateExample(toolName: string, inputSchema?: JsonSchema): ToolUsageExample;
61
+ /**
62
+ * Generate a get (retrieve single item) example for a tool.
63
+ */
64
+ export declare function generateGetExample(toolName: string, inputSchema?: JsonSchema): ToolUsageExample;
65
+ /**
66
+ * Generate a list example for a tool.
67
+ */
68
+ export declare function generateListExample(toolName: string, inputSchema?: JsonSchema): ToolUsageExample;
69
+ /**
70
+ * Generate an update example for a tool.
71
+ */
72
+ export declare function generateUpdateExample(toolName: string, inputSchema?: JsonSchema): ToolUsageExample;
73
+ /**
74
+ * Generate a delete example for a tool.
75
+ */
76
+ export declare function generateDeleteExample(toolName: string, inputSchema?: JsonSchema): ToolUsageExample;
77
+ /**
78
+ * Generate a search example for a tool.
79
+ */
80
+ export declare function generateSearchExample(toolName: string, inputSchema?: JsonSchema): ToolUsageExample;
81
+ /**
82
+ * Smart example generator that uses intent detection.
83
+ * This is the main entry point for generating examples.
84
+ */
85
+ export declare function generateSmartExample(toolName: string, inputSchema?: JsonSchema, description?: string): ToolUsageExample;
86
+ export {};
87
+ //# sourceMappingURL=describe.utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"describe.utils.d.ts","sourceRoot":"","sources":["../../src/utils/describe.utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,mCAAmC;AACnC,KAAK,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;AAExC;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;AAiB3G;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,UAAU,CAwBnF;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,UAAU,EAAE,YAAY,CAAC,EAAE,UAAU,GAAG,MAAM,CAKnH;AAkFD;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,IAAI,EACrC,SAAS,EAAE,OAAO,GAAG,QAAQ,GAC5B,MAAM,CAkCR;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,UAAU,GAAG,gBAAgB,CASjG;AAyED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,OAAO,CAOhE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,OAAO,CAe5D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,MAAM,EAAE,CAcjE;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAY5E;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,gBAAgB,CAM5F;AAgBD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,UAAU,GAAG,gBAAgB,CAUlG;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,UAAU,GAAG,gBAAgB,CAqB/F;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,UAAU,GAAG,gBAAgB,CAQhG;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,UAAU,GAAG,gBAAgB,CA0BlG;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,UAAU,GAAG,gBAAgB,CAoBlG;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,UAAU,GAAG,gBAAgB,CAiBlG;AA2ED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,UAAU,EACxB,WAAW,CAAC,EAAE,MAAM,GACnB,gBAAgB,CAuBlB"}
@@ -0,0 +1,3 @@
1
+ export * from './describe.utils';
2
+ export * from './mcp-result';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAEA,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { CallToolResult } from '@modelcontextprotocol/sdk/types.js';
2
+ /**
3
+ * Extract the actual result from a CallToolResult.
4
+ * MCP returns results wrapped in content array format.
5
+ */
6
+ export declare function extractResultFromCallToolResult(mcpResult: CallToolResult): unknown;
7
+ //# sourceMappingURL=mcp-result.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-result.d.ts","sourceRoot":"","sources":["../../src/utils/mcp-result.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAEzE;;;GAGG;AACH,wBAAgB,+BAA+B,CAAC,SAAS,EAAE,cAAc,GAAG,OAAO,CA4BlF"}