@elizaos/plugin-mcp 1.7.1 → 1.8.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 (55) hide show
  1. package/dist/actions/dynamic-tool-actions.d.ts +16 -0
  2. package/dist/actions/dynamic-tool-actions.d.ts.map +1 -0
  3. package/dist/cache/index.d.ts +5 -0
  4. package/dist/cache/index.d.ts.map +1 -0
  5. package/dist/cache/schema-cache.d.ts +34 -0
  6. package/dist/cache/schema-cache.d.ts.map +1 -0
  7. package/dist/cjs/index.cjs +8372 -1581
  8. package/dist/cjs/index.js.map +95 -24
  9. package/dist/index.d.ts +3 -1
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +8408 -1616
  12. package/dist/index.js.map +95 -24
  13. package/dist/provider.d.ts.map +1 -1
  14. package/dist/service.d.ts +23 -21
  15. package/dist/service.d.ts.map +1 -1
  16. package/dist/tool-compatibility/base.d.ts +25 -0
  17. package/dist/tool-compatibility/base.d.ts.map +1 -0
  18. package/dist/tool-compatibility/index.d.ts +7 -52
  19. package/dist/tool-compatibility/index.d.ts.map +1 -1
  20. package/dist/tool-compatibility/providers/anthropic.d.ts +2 -3
  21. package/dist/tool-compatibility/providers/anthropic.d.ts.map +1 -1
  22. package/dist/tool-compatibility/providers/google.d.ts +2 -3
  23. package/dist/tool-compatibility/providers/google.d.ts.map +1 -1
  24. package/dist/tool-compatibility/providers/openai.d.ts +2 -3
  25. package/dist/tool-compatibility/providers/openai.d.ts.map +1 -1
  26. package/dist/types.d.ts +53 -88
  27. package/dist/types.d.ts.map +1 -1
  28. package/dist/utils/action-naming.d.ts +9 -0
  29. package/dist/utils/action-naming.d.ts.map +1 -0
  30. package/dist/utils/error.d.ts +1 -11
  31. package/dist/utils/error.d.ts.map +1 -1
  32. package/dist/utils/json.d.ts.map +1 -1
  33. package/dist/utils/processing.d.ts +5 -11
  34. package/dist/utils/processing.d.ts.map +1 -1
  35. package/dist/utils/schema-converter.d.ts +9 -0
  36. package/dist/utils/schema-converter.d.ts.map +1 -0
  37. package/dist/utils/validation.d.ts +1 -24
  38. package/dist/utils/validation.d.ts.map +1 -1
  39. package/dist/utils/wrapper.d.ts +6 -15
  40. package/dist/utils/wrapper.d.ts.map +1 -1
  41. package/package.json +6 -4
  42. package/dist/actions/callToolAction.d.ts +0 -3
  43. package/dist/actions/callToolAction.d.ts.map +0 -1
  44. package/dist/templates/feedbackTemplate.d.ts +0 -2
  45. package/dist/templates/feedbackTemplate.d.ts.map +0 -1
  46. package/dist/templates/toolReasoningTemplate.d.ts +0 -2
  47. package/dist/templates/toolReasoningTemplate.d.ts.map +0 -1
  48. package/dist/templates/toolSelectionTemplate.d.ts +0 -3
  49. package/dist/templates/toolSelectionTemplate.d.ts.map +0 -1
  50. package/dist/utils/handler.d.ts +0 -3
  51. package/dist/utils/handler.d.ts.map +0 -1
  52. package/dist/utils/schemas.d.ts +0 -69
  53. package/dist/utils/schemas.d.ts.map +0 -1
  54. package/dist/utils/selection.d.ts +0 -38
  55. package/dist/utils/selection.d.ts.map +0 -1
@@ -0,0 +1,16 @@
1
+ import { type Action } from "@elizaos/core";
2
+ import type { Tool } from "@modelcontextprotocol/sdk/types.js";
3
+ import { type ActionParameter } from "../utils/schema-converter";
4
+ export interface McpToolAction extends Action {
5
+ parameters?: Record<string, ActionParameter>;
6
+ _mcpMeta: {
7
+ serverName: string;
8
+ toolName: string;
9
+ originalSchema: Tool["inputSchema"];
10
+ };
11
+ }
12
+ export declare function createMcpToolAction(serverName: string, tool: Tool, existingNames: Set<string>): McpToolAction;
13
+ export declare function createMcpToolActions(serverName: string, tools: Tool[], existingNames: Set<string>): McpToolAction[];
14
+ export declare function isMcpToolAction(action: Action): action is McpToolAction;
15
+ export declare function getMcpToolActionsForServer(actions: Action[], serverName: string): McpToolAction[];
16
+ //# sourceMappingURL=dynamic-tool-actions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamic-tool-actions.d.ts","sourceRoot":"","sources":["../../src/actions/dynamic-tool-actions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,MAAM,EAOZ,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAG/D,OAAO,EAAE,KAAK,eAAe,EAAgE,MAAM,2BAA2B,CAAC;AAI/H,MAAM,WAAW,aAAc,SAAQ,MAAM;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC7C,QAAQ,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;KAAE,CAAC;CACzF;AAUD,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,aAAa,CAwE7G;AAED,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,aAAa,EAAE,CAUnH;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,IAAI,aAAa,CAEvE;AAED,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,aAAa,EAAE,CAEjG"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * MCP Cache Module
3
+ */
4
+ export { McpSchemaCache, getSchemaCache } from "./schema-cache";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cache/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * MCP Schema Cache - Optional Redis caching for serverless cold start optimization
3
+ *
4
+ * When enabled (via env vars), caches tool schemas to avoid MCP connection on cold start.
5
+ * When disabled or misconfigured, gracefully falls back to direct MCP connections.
6
+ *
7
+ * Environment variables:
8
+ * - MCP_SCHEMA_CACHE_ENABLED: "true" to enable (default: disabled)
9
+ * - MCP_CACHE_REDIS_URL: Upstash REST API URL (https://..., NOT rediss://)
10
+ * - MCP_CACHE_REDIS_TOKEN: Upstash REST API token
11
+ * - MCP_SCHEMA_CACHE_TTL: Cache TTL in seconds (default: 3600)
12
+ */
13
+ import type { CachedServerSchema, McpServerConfig } from "../types";
14
+ import type { Tool } from "@modelcontextprotocol/sdk/types.js";
15
+ /**
16
+ * MCP Schema Cache - singleton for caching tool schemas
17
+ */
18
+ export declare class McpSchemaCache {
19
+ private client;
20
+ private ttl;
21
+ constructor();
22
+ get isEnabled(): boolean;
23
+ /** Hash config to detect changes */
24
+ hashConfig(config: McpServerConfig): string;
25
+ private key;
26
+ /** Get cached schemas (returns null on miss or error) */
27
+ getSchemas(agentId: string, serverName: string, configHash: string): Promise<CachedServerSchema | null>;
28
+ /** Cache schemas (fails silently) */
29
+ setSchemas(agentId: string, serverName: string, configHash: string, tools: Tool[]): Promise<void>;
30
+ /** Convert cached schemas to Tool format */
31
+ static toTools(cached: CachedServerSchema): Tool[];
32
+ }
33
+ export declare function getSchemaCache(): McpSchemaCache;
34
+ //# sourceMappingURL=schema-cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-cache.d.ts","sourceRoot":"","sources":["../../src/cache/schema-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,KAAK,EAAE,kBAAkB,EAAoB,eAAe,EAAE,MAAM,UAAU,CAAC;AACtF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAqC/D;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,GAAG,CAAS;;IA0BpB,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,oCAAoC;IACpC,UAAU,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM;IAa3C,OAAO,CAAC,GAAG;IAIX,yDAAyD;IACnD,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAqB7G,qCAAqC;IAC/B,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBvG,4CAA4C;IAC5C,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI,EAAE;CAOnD;AAID,wBAAgB,cAAc,IAAI,cAAc,CAG/C"}