@frontmcp/plugin-dashboard 1.0.3 → 1.1.0-beta.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.
@@ -1,56 +1,56 @@
1
- import { z } from 'zod';
1
+ import { z } from '@frontmcp/lazy-zod';
2
2
  /**
3
3
  * CDN configuration for loading dashboard UI from external sources.
4
4
  */
5
- export declare const cdnConfigSchema: z.ZodObject<{
6
- entrypoint: z.ZodOptional<z.ZodString>;
7
- react: z.ZodDefault<z.ZodString>;
8
- reactDom: z.ZodDefault<z.ZodString>;
9
- reactDomClient: z.ZodDefault<z.ZodString>;
10
- reactJsxRuntime: z.ZodDefault<z.ZodString>;
11
- reactRouter: z.ZodDefault<z.ZodString>;
12
- xyflow: z.ZodDefault<z.ZodString>;
13
- dagre: z.ZodDefault<z.ZodString>;
14
- xyflowCss: z.ZodDefault<z.ZodString>;
15
- }, z.core.$strip>;
5
+ export declare const cdnConfigSchema: import("@frontmcp/lazy-zod").ZodObject<{
6
+ entrypoint: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodString>;
7
+ react: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodString>;
8
+ reactDom: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodString>;
9
+ reactDomClient: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodString>;
10
+ reactJsxRuntime: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodString>;
11
+ reactRouter: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodString>;
12
+ xyflow: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodString>;
13
+ dagre: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodString>;
14
+ xyflowCss: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodString>;
15
+ }, import("zod/v4/core").$strip>;
16
16
  /** CDN config type */
17
17
  export type CdnConfig = z.output<typeof cdnConfigSchema>;
18
18
  /**
19
19
  * Authentication configuration for dashboard access.
20
20
  */
21
- export declare const dashboardAuthSchema: z.ZodObject<{
22
- enabled: z.ZodDefault<z.ZodBoolean>;
23
- token: z.ZodOptional<z.ZodString>;
24
- }, z.core.$strip>;
21
+ export declare const dashboardAuthSchema: import("@frontmcp/lazy-zod").ZodObject<{
22
+ enabled: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodBoolean>;
23
+ token: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodString>;
24
+ }, import("zod/v4/core").$strip>;
25
25
  /** Dashboard auth type */
26
26
  export type DashboardAuth = z.output<typeof dashboardAuthSchema>;
27
27
  /**
28
28
  * Dashboard plugin options schema.
29
29
  */
30
- export declare const dashboardPluginOptionsSchema: z.ZodObject<{
31
- enabled: z.ZodOptional<z.ZodBoolean>;
32
- basePath: z.ZodDefault<z.ZodString>;
33
- auth: z.ZodPipe<z.ZodOptional<z.ZodObject<{
34
- enabled: z.ZodDefault<z.ZodBoolean>;
35
- token: z.ZodOptional<z.ZodString>;
36
- }, z.core.$strip>>, z.ZodTransform<{
30
+ export declare const dashboardPluginOptionsSchema: import("@frontmcp/lazy-zod").ZodObject<{
31
+ enabled: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>;
32
+ basePath: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodString>;
33
+ auth: import("zod").ZodPipe<import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodObject<{
34
+ enabled: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodBoolean>;
35
+ token: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodString>;
36
+ }, import("zod/v4/core").$strip>>, import("zod").ZodTransform<{
37
37
  enabled: boolean;
38
38
  token?: string | undefined;
39
39
  }, {
40
40
  enabled: boolean;
41
41
  token?: string | undefined;
42
42
  } | undefined>>;
43
- cdn: z.ZodPipe<z.ZodOptional<z.ZodObject<{
44
- entrypoint: z.ZodOptional<z.ZodString>;
45
- react: z.ZodDefault<z.ZodString>;
46
- reactDom: z.ZodDefault<z.ZodString>;
47
- reactDomClient: z.ZodDefault<z.ZodString>;
48
- reactJsxRuntime: z.ZodDefault<z.ZodString>;
49
- reactRouter: z.ZodDefault<z.ZodString>;
50
- xyflow: z.ZodDefault<z.ZodString>;
51
- dagre: z.ZodDefault<z.ZodString>;
52
- xyflowCss: z.ZodDefault<z.ZodString>;
53
- }, z.core.$strip>>, z.ZodTransform<{
43
+ cdn: import("zod").ZodPipe<import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodObject<{
44
+ entrypoint: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodString>;
45
+ react: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodString>;
46
+ reactDom: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodString>;
47
+ reactDomClient: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodString>;
48
+ reactJsxRuntime: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodString>;
49
+ reactRouter: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodString>;
50
+ xyflow: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodString>;
51
+ dagre: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodString>;
52
+ xyflowCss: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodString>;
53
+ }, import("zod/v4/core").$strip>>, import("zod").ZodTransform<{
54
54
  react: string;
55
55
  reactDom: string;
56
56
  reactDomClient: string;
@@ -71,7 +71,7 @@ export declare const dashboardPluginOptionsSchema: z.ZodObject<{
71
71
  xyflowCss: string;
72
72
  entrypoint?: string | undefined;
73
73
  } | undefined>>;
74
- }, z.core.$strip>;
74
+ }, import("zod/v4/core").$strip>;
75
75
  /** Dashboard plugin options (parsed/validated) */
76
76
  export type DashboardPluginOptions = z.output<typeof dashboardPluginOptionsSchema>;
77
77
  /** Dashboard plugin options input (before validation) */
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard.types.d.ts","sourceRoot":"","sources":["../src/dashboard.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;iBAmB1B,CAAC;AAEH,sBAAsB;AACtB,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,eAAe,CAAC,CAAC;AAEzD;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;iBAK9B,CAAC;AAEH,0BAA0B;AAC1B,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBASvC,CAAC;AAEH,kDAAkD;AAClD,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAEnF,yDAAyD;AACzD,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAEvF,uCAAuC;AACvC,eAAO,MAAM,6BAA6B,EAAE,2BAI3C,CAAC;AAEF;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAM3E"}
1
+ {"version":3,"file":"dashboard.types.d.ts","sourceRoot":"","sources":["../src/dashboard.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,oBAAoB,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;gCAmB1B,CAAC;AAEH,sBAAsB;AACtB,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,eAAe,CAAC,CAAC;AAEzD;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;gCAK9B,CAAC;AAEH,0BAA0B;AAC1B,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCASvC,CAAC;AAEH,kDAAkD;AAClD,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAEnF,yDAAyD;AACzD,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAEvF,uCAAuC;AACvC,eAAO,MAAM,6BAA6B,EAAE,2BAI3C,CAAC;AAEF;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAM3E"}
package/esm/index.mjs CHANGED
@@ -13,7 +13,7 @@ var __decorateClass = (decorators, target, key, kind) => {
13
13
  import { DynamicPlugin, Plugin } from "@frontmcp/sdk";
14
14
 
15
15
  // plugins/plugin-dashboard/src/dashboard.types.ts
16
- import { z } from "zod";
16
+ import { z } from "@frontmcp/lazy-zod";
17
17
  var cdnConfigSchema = z.object({
18
18
  /** Base URL for the dashboard UI bundle (e.g., https://esm.sh/@frontmcp/dashboard-ui@1.0.0) */
19
19
  entrypoint: z.string().optional(),
@@ -109,7 +109,7 @@ import {
109
109
  App,
110
110
  Plugin as Plugin2,
111
111
  DynamicPlugin as DynamicPlugin2,
112
- ScopeEntry as ScopeEntry4,
112
+ ScopeEntry as ScopeEntry2,
113
113
  FrontMcpConfig,
114
114
  FrontMcpServer
115
115
  } from "@frontmcp/sdk";
@@ -378,8 +378,8 @@ GraphDataProvider = __decorateClass([
378
378
  ], GraphDataProvider);
379
379
 
380
380
  // plugins/plugin-dashboard/src/tools/graph.tool.ts
381
+ import { z as z2 } from "@frontmcp/lazy-zod";
381
382
  import { Tool, ToolContext } from "@frontmcp/sdk";
382
- import { z as z2 } from "zod";
383
383
  var graphToolInputSchema = {
384
384
  includeSchemas: z2.boolean().optional().default(false).describe("Include full input/output schemas in the response"),
385
385
  refresh: z2.boolean().optional().default(false).describe("Force refresh the graph data (bypass cache)")
@@ -419,8 +419,8 @@ GraphTool = __decorateClass([
419
419
  ], GraphTool);
420
420
 
421
421
  // plugins/plugin-dashboard/src/tools/list-tools.tool.ts
422
+ import { z as z3 } from "@frontmcp/lazy-zod";
422
423
  import { Tool as Tool2, ToolContext as ToolContext2 } from "@frontmcp/sdk";
423
- import { z as z3 } from "zod";
424
424
 
425
425
  // plugins/plugin-dashboard/src/shared/safe-regex.ts
426
426
  function safeRegex(pattern) {
@@ -499,8 +499,8 @@ ListToolsTool = __decorateClass([
499
499
  ], ListToolsTool);
500
500
 
501
501
  // plugins/plugin-dashboard/src/tools/list-resources.tool.ts
502
+ import { z as z4 } from "@frontmcp/lazy-zod";
502
503
  import { Tool as Tool3, ToolContext as ToolContext3 } from "@frontmcp/sdk";
503
- import { z as z4 } from "zod";
504
504
  var listResourcesInputSchema = {
505
505
  filter: z4.string().optional().describe("Filter resources by name or URI pattern (regex supported)"),
506
506
  includeTemplates: z4.boolean().default(true).describe("Include resource templates in the response")
@@ -1238,7 +1238,7 @@ DashboardApp = __decorateClass([
1238
1238
  {
1239
1239
  name: "dashboard:parent-scope",
1240
1240
  provide: ParentScopeToken,
1241
- inject: () => [ScopeEntry4],
1241
+ inject: () => [ScopeEntry2],
1242
1242
  useFactory: (scope) => {
1243
1243
  return scope;
1244
1244
  }
@@ -1247,7 +1247,7 @@ DashboardApp = __decorateClass([
1247
1247
  {
1248
1248
  name: "dashboard:graph-data",
1249
1249
  provide: GraphDataProvider,
1250
- inject: () => [ScopeEntry4, FrontMcpConfig],
1250
+ inject: () => [ScopeEntry2, FrontMcpConfig],
1251
1251
  useFactory: (scope, config) => {
1252
1252
  const serverName = config.info?.name || "FrontMCP Server";
1253
1253
  const serverVersion = config.info?.version;
package/esm/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@frontmcp/plugin-dashboard",
3
- "version": "1.0.3",
3
+ "version": "1.1.0-beta.1",
4
4
  "description": "Dashboard plugin for FrontMCP - visual monitoring and introspection of MCP servers",
5
5
  "author": "AgentFront <info@agentfront.dev>",
6
6
  "license": "Apache-2.0",
@@ -44,10 +44,12 @@
44
44
  }
45
45
  },
46
46
  "dependencies": {
47
- "@frontmcp/sdk": "1.0.3",
48
- "zod": "^4.0.0"
47
+ "@frontmcp/sdk": "1.1.0-beta.1"
49
48
  },
50
49
  "devDependencies": {
51
50
  "reflect-metadata": "^0.2.2"
51
+ },
52
+ "peerDependencies": {
53
+ "@frontmcp/lazy-zod": "1.1.0-beta.1"
52
54
  }
53
55
  }
package/index.js CHANGED
@@ -48,38 +48,38 @@ module.exports = __toCommonJS(index_exports);
48
48
  var import_sdk = require("@frontmcp/sdk");
49
49
 
50
50
  // plugins/plugin-dashboard/src/dashboard.types.ts
51
- var import_zod = require("zod");
52
- var cdnConfigSchema = import_zod.z.object({
51
+ var import_lazy_zod = require("@frontmcp/lazy-zod");
52
+ var cdnConfigSchema = import_lazy_zod.z.object({
53
53
  /** Base URL for the dashboard UI bundle (e.g., https://esm.sh/@frontmcp/dashboard-ui@1.0.0) */
54
- entrypoint: import_zod.z.string().optional(),
54
+ entrypoint: import_lazy_zod.z.string().optional(),
55
55
  /** React CDN URL */
56
- react: import_zod.z.string().default("https://esm.sh/react@19"),
56
+ react: import_lazy_zod.z.string().default("https://esm.sh/react@19"),
57
57
  /** React DOM CDN URL */
58
- reactDom: import_zod.z.string().default("https://esm.sh/react-dom@19"),
58
+ reactDom: import_lazy_zod.z.string().default("https://esm.sh/react-dom@19"),
59
59
  /** React DOM client CDN URL */
60
- reactDomClient: import_zod.z.string().default("https://esm.sh/react-dom@19/client"),
60
+ reactDomClient: import_lazy_zod.z.string().default("https://esm.sh/react-dom@19/client"),
61
61
  /** React JSX runtime CDN URL */
62
- reactJsxRuntime: import_zod.z.string().default("https://esm.sh/react@19/jsx-runtime"),
62
+ reactJsxRuntime: import_lazy_zod.z.string().default("https://esm.sh/react@19/jsx-runtime"),
63
63
  /** React Router CDN URL */
64
- reactRouter: import_zod.z.string().default("https://esm.sh/react-router-dom@7"),
64
+ reactRouter: import_lazy_zod.z.string().default("https://esm.sh/react-router-dom@7"),
65
65
  /** XYFlow (React Flow) CDN URL */
66
- xyflow: import_zod.z.string().default("https://esm.sh/@xyflow/react@12?external=react,react-dom"),
66
+ xyflow: import_lazy_zod.z.string().default("https://esm.sh/@xyflow/react@12?external=react,react-dom"),
67
67
  /** Dagre layout library CDN URL */
68
- dagre: import_zod.z.string().default("https://esm.sh/dagre@0.8.5"),
68
+ dagre: import_lazy_zod.z.string().default("https://esm.sh/dagre@0.8.5"),
69
69
  /** XYFlow CSS URL */
70
- xyflowCss: import_zod.z.string().default("https://esm.sh/@xyflow/react@12/dist/style.css")
70
+ xyflowCss: import_lazy_zod.z.string().default("https://esm.sh/@xyflow/react@12/dist/style.css")
71
71
  });
72
- var dashboardAuthSchema = import_zod.z.object({
72
+ var dashboardAuthSchema = import_lazy_zod.z.object({
73
73
  /** Enable authentication (default: false) */
74
- enabled: import_zod.z.boolean().default(false),
74
+ enabled: import_lazy_zod.z.boolean().default(false),
75
75
  /** Secret token for query param authentication (?token=xxx) */
76
- token: import_zod.z.string().optional()
76
+ token: import_lazy_zod.z.string().optional()
77
77
  });
78
- var dashboardPluginOptionsSchema = import_zod.z.object({
78
+ var dashboardPluginOptionsSchema = import_lazy_zod.z.object({
79
79
  /** Enable/disable dashboard (undefined = auto: enabled in dev, disabled in prod) */
80
- enabled: import_zod.z.boolean().optional(),
80
+ enabled: import_lazy_zod.z.boolean().optional(),
81
81
  /** Base path for dashboard routes (default: /dashboard) */
82
- basePath: import_zod.z.string().default("/dashboard"),
82
+ basePath: import_lazy_zod.z.string().default("/dashboard"),
83
83
  /** Authentication configuration */
84
84
  auth: dashboardAuthSchema.optional().transform((v) => dashboardAuthSchema.parse(v ?? {})),
85
85
  /** CDN configuration for UI loading */
@@ -406,11 +406,11 @@ GraphDataProvider = __decorateClass([
406
406
  ], GraphDataProvider);
407
407
 
408
408
  // plugins/plugin-dashboard/src/tools/graph.tool.ts
409
+ var import_lazy_zod2 = require("@frontmcp/lazy-zod");
409
410
  var import_sdk3 = require("@frontmcp/sdk");
410
- var import_zod2 = require("zod");
411
411
  var graphToolInputSchema = {
412
- includeSchemas: import_zod2.z.boolean().optional().default(false).describe("Include full input/output schemas in the response"),
413
- refresh: import_zod2.z.boolean().optional().default(false).describe("Force refresh the graph data (bypass cache)")
412
+ includeSchemas: import_lazy_zod2.z.boolean().optional().default(false).describe("Include full input/output schemas in the response"),
413
+ refresh: import_lazy_zod2.z.boolean().optional().default(false).describe("Force refresh the graph data (bypass cache)")
414
414
  };
415
415
  var GraphTool = class extends import_sdk3.ToolContext {
416
416
  async execute(input) {
@@ -447,8 +447,8 @@ GraphTool = __decorateClass([
447
447
  ], GraphTool);
448
448
 
449
449
  // plugins/plugin-dashboard/src/tools/list-tools.tool.ts
450
+ var import_lazy_zod3 = require("@frontmcp/lazy-zod");
450
451
  var import_sdk4 = require("@frontmcp/sdk");
451
- var import_zod3 = require("zod");
452
452
 
453
453
  // plugins/plugin-dashboard/src/shared/safe-regex.ts
454
454
  function safeRegex(pattern) {
@@ -466,22 +466,22 @@ function safeRegex(pattern) {
466
466
 
467
467
  // plugins/plugin-dashboard/src/tools/list-tools.tool.ts
468
468
  var listToolsInputSchema = {
469
- filter: import_zod3.z.string().optional().describe("Filter tools by name pattern (regex supported)"),
470
- includePlugins: import_zod3.z.boolean().default(true).describe("Include tools from plugins"),
471
- includeSchemas: import_zod3.z.boolean().default(false).describe("Include input/output schemas in the response")
469
+ filter: import_lazy_zod3.z.string().optional().describe("Filter tools by name pattern (regex supported)"),
470
+ includePlugins: import_lazy_zod3.z.boolean().default(true).describe("Include tools from plugins"),
471
+ includeSchemas: import_lazy_zod3.z.boolean().default(false).describe("Include input/output schemas in the response")
472
472
  };
473
- var listToolsOutputSchema = import_zod3.z.object({
474
- tools: import_zod3.z.array(
475
- import_zod3.z.object({
476
- name: import_zod3.z.string(),
477
- fullName: import_zod3.z.string(),
478
- description: import_zod3.z.string().optional(),
479
- tags: import_zod3.z.array(import_zod3.z.string()).optional(),
480
- inputSchema: import_zod3.z.unknown().optional(),
481
- outputSchema: import_zod3.z.unknown().optional()
473
+ var listToolsOutputSchema = import_lazy_zod3.z.object({
474
+ tools: import_lazy_zod3.z.array(
475
+ import_lazy_zod3.z.object({
476
+ name: import_lazy_zod3.z.string(),
477
+ fullName: import_lazy_zod3.z.string(),
478
+ description: import_lazy_zod3.z.string().optional(),
479
+ tags: import_lazy_zod3.z.array(import_lazy_zod3.z.string()).optional(),
480
+ inputSchema: import_lazy_zod3.z.unknown().optional(),
481
+ outputSchema: import_lazy_zod3.z.unknown().optional()
482
482
  })
483
483
  ),
484
- count: import_zod3.z.number()
484
+ count: import_lazy_zod3.z.number()
485
485
  });
486
486
  var ListToolsTool = class extends import_sdk4.ToolContext {
487
487
  async execute(input) {
@@ -527,23 +527,23 @@ ListToolsTool = __decorateClass([
527
527
  ], ListToolsTool);
528
528
 
529
529
  // plugins/plugin-dashboard/src/tools/list-resources.tool.ts
530
+ var import_lazy_zod4 = require("@frontmcp/lazy-zod");
530
531
  var import_sdk5 = require("@frontmcp/sdk");
531
- var import_zod4 = require("zod");
532
532
  var listResourcesInputSchema = {
533
- filter: import_zod4.z.string().optional().describe("Filter resources by name or URI pattern (regex supported)"),
534
- includeTemplates: import_zod4.z.boolean().default(true).describe("Include resource templates in the response")
533
+ filter: import_lazy_zod4.z.string().optional().describe("Filter resources by name or URI pattern (regex supported)"),
534
+ includeTemplates: import_lazy_zod4.z.boolean().default(true).describe("Include resource templates in the response")
535
535
  };
536
- var listResourcesOutputSchema = import_zod4.z.object({
537
- resources: import_zod4.z.array(
538
- import_zod4.z.object({
539
- name: import_zod4.z.string(),
540
- uri: import_zod4.z.string(),
541
- description: import_zod4.z.string().optional(),
542
- mimeType: import_zod4.z.string().optional(),
543
- isTemplate: import_zod4.z.boolean()
536
+ var listResourcesOutputSchema = import_lazy_zod4.z.object({
537
+ resources: import_lazy_zod4.z.array(
538
+ import_lazy_zod4.z.object({
539
+ name: import_lazy_zod4.z.string(),
540
+ uri: import_lazy_zod4.z.string(),
541
+ description: import_lazy_zod4.z.string().optional(),
542
+ mimeType: import_lazy_zod4.z.string().optional(),
543
+ isTemplate: import_lazy_zod4.z.boolean()
544
544
  })
545
545
  ),
546
- count: import_zod4.z.number()
546
+ count: import_lazy_zod4.z.number()
547
547
  });
548
548
  var ListResourcesTool = class extends import_sdk5.ToolContext {
549
549
  async execute(input) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@frontmcp/plugin-dashboard",
3
- "version": "1.0.3",
3
+ "version": "1.1.0-beta.1",
4
4
  "description": "Dashboard plugin for FrontMCP - visual monitoring and introspection of MCP servers",
5
5
  "author": "AgentFront <info@agentfront.dev>",
6
6
  "license": "Apache-2.0",
@@ -44,10 +44,12 @@
44
44
  }
45
45
  },
46
46
  "dependencies": {
47
- "@frontmcp/sdk": "1.0.3",
48
- "zod": "^4.0.0"
47
+ "@frontmcp/sdk": "1.1.0-beta.1"
49
48
  },
50
49
  "devDependencies": {
51
50
  "reflect-metadata": "^0.2.2"
51
+ },
52
+ "peerDependencies": {
53
+ "@frontmcp/lazy-zod": "1.1.0-beta.1"
52
54
  }
53
55
  }
@@ -1,12 +1,12 @@
1
+ import { z } from '@frontmcp/lazy-zod';
1
2
  import { ToolContext } from '@frontmcp/sdk';
2
- import { z } from 'zod';
3
3
  import type { GraphData } from '../shared/types';
4
4
  /**
5
5
  * Input schema for the graph tool.
6
6
  */
7
7
  export declare const graphToolInputSchema: {
8
- includeSchemas: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
9
- refresh: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
8
+ includeSchemas: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>>;
9
+ refresh: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>>;
10
10
  };
11
11
  export type GraphToolInput = z.infer<z.ZodObject<typeof graphToolInputSchema>>;
12
12
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"graph.tool.d.ts","sourceRoot":"","sources":["../../src/tools/graph.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,WAAW,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;CAGhC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAC;AAE/E;;GAEG;AAUH,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,WAAW;IAC1C,OAAO,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC;CA2BzD"}
1
+ {"version":3,"file":"graph.tool.d.ts","sourceRoot":"","sources":["../../src/tools/graph.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,oBAAoB,CAAC;AACvC,OAAO,EAAQ,WAAW,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;CAGhC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAC;AAE/E;;GAEG;AAUH,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,WAAW;IAC1C,OAAO,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC;CA2BzD"}
@@ -1,26 +1,26 @@
1
+ import { z } from '@frontmcp/lazy-zod';
1
2
  import { ToolContext } from '@frontmcp/sdk';
2
- import { z } from 'zod';
3
3
  /**
4
4
  * Input schema for the list-resources tool.
5
5
  */
6
6
  export declare const listResourcesInputSchema: {
7
- filter: z.ZodOptional<z.ZodString>;
8
- includeTemplates: z.ZodDefault<z.ZodBoolean>;
7
+ filter: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodString>;
8
+ includeTemplates: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodBoolean>;
9
9
  };
10
10
  export type ListResourcesInput = z.output<z.ZodObject<typeof listResourcesInputSchema>>;
11
11
  /**
12
12
  * Output schema for the list-resources tool.
13
13
  */
14
- export declare const listResourcesOutputSchema: z.ZodObject<{
15
- resources: z.ZodArray<z.ZodObject<{
16
- name: z.ZodString;
17
- uri: z.ZodString;
18
- description: z.ZodOptional<z.ZodString>;
19
- mimeType: z.ZodOptional<z.ZodString>;
20
- isTemplate: z.ZodBoolean;
21
- }, z.core.$strip>>;
22
- count: z.ZodNumber;
23
- }, z.core.$strip>;
14
+ export declare const listResourcesOutputSchema: import("@frontmcp/lazy-zod").ZodObject<{
15
+ resources: import("@frontmcp/lazy-zod").ZodArray<import("@frontmcp/lazy-zod").ZodObject<{
16
+ name: import("@frontmcp/lazy-zod").ZodString;
17
+ uri: import("@frontmcp/lazy-zod").ZodString;
18
+ description: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodString>;
19
+ mimeType: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodString>;
20
+ isTemplate: import("@frontmcp/lazy-zod").ZodBoolean;
21
+ }, import("zod/v4/core").$strip>>;
22
+ count: import("@frontmcp/lazy-zod").ZodNumber;
23
+ }, import("zod/v4/core").$strip>;
24
24
  export type ListResourcesOutput = z.output<typeof listResourcesOutputSchema>;
25
25
  /**
26
26
  * Tool to list all resources available in the monitored server (parent scope).
@@ -1 +1 @@
1
- {"version":3,"file":"list-resources.tool.d.ts","sourceRoot":"","sources":["../../src/tools/list-resources.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,WAAW,EAAc,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;CAGpC,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC;AAExF;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;iBAWpC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE7E;;GAEG;AAUH,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,WAAW;IAClD,OAAO,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAwDvE"}
1
+ {"version":3,"file":"list-resources.tool.d.ts","sourceRoot":"","sources":["../../src/tools/list-resources.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,oBAAoB,CAAC;AACvC,OAAO,EAAQ,WAAW,EAAmB,MAAM,eAAe,CAAC;AAKnE;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;CAGpC,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC;AAExF;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;gCAWpC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE7E;;GAEG;AAUH,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,WAAW;IAClD,OAAO,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAwDvE"}
@@ -1,28 +1,28 @@
1
+ import { z } from '@frontmcp/lazy-zod';
1
2
  import { ToolContext } from '@frontmcp/sdk';
2
- import { z } from 'zod';
3
3
  /**
4
4
  * Input schema for the list-tools tool.
5
5
  */
6
6
  export declare const listToolsInputSchema: {
7
- filter: z.ZodOptional<z.ZodString>;
8
- includePlugins: z.ZodDefault<z.ZodBoolean>;
9
- includeSchemas: z.ZodDefault<z.ZodBoolean>;
7
+ filter: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodString>;
8
+ includePlugins: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodBoolean>;
9
+ includeSchemas: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodBoolean>;
10
10
  };
11
11
  export type ListToolsInput = z.output<z.ZodObject<typeof listToolsInputSchema>>;
12
12
  /**
13
13
  * Output schema for the list-tools tool.
14
14
  */
15
- export declare const listToolsOutputSchema: z.ZodObject<{
16
- tools: z.ZodArray<z.ZodObject<{
17
- name: z.ZodString;
18
- fullName: z.ZodString;
19
- description: z.ZodOptional<z.ZodString>;
20
- tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
21
- inputSchema: z.ZodOptional<z.ZodUnknown>;
22
- outputSchema: z.ZodOptional<z.ZodUnknown>;
23
- }, z.core.$strip>>;
24
- count: z.ZodNumber;
25
- }, z.core.$strip>;
15
+ export declare const listToolsOutputSchema: import("@frontmcp/lazy-zod").ZodObject<{
16
+ tools: import("@frontmcp/lazy-zod").ZodArray<import("@frontmcp/lazy-zod").ZodObject<{
17
+ name: import("@frontmcp/lazy-zod").ZodString;
18
+ fullName: import("@frontmcp/lazy-zod").ZodString;
19
+ description: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodString>;
20
+ tags: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodArray<import("@frontmcp/lazy-zod").ZodString>>;
21
+ inputSchema: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodUnknown>;
22
+ outputSchema: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodUnknown>;
23
+ }, import("zod/v4/core").$strip>>;
24
+ count: import("@frontmcp/lazy-zod").ZodNumber;
25
+ }, import("zod/v4/core").$strip>;
26
26
  export type ListToolsOutput = z.output<typeof listToolsOutputSchema>;
27
27
  /**
28
28
  * Tool to list all tools available in the monitored server (parent scope).
@@ -1 +1 @@
1
- {"version":3,"file":"list-tools.tool.d.ts","sourceRoot":"","sources":["../../src/tools/list-tools.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,WAAW,EAAc,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;CAIhC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAC;AAEhF;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;iBAYhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAErE;;GAEG;AAWH,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,WAAW;IAC9C,OAAO,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;CAgD/D"}
1
+ {"version":3,"file":"list-tools.tool.d.ts","sourceRoot":"","sources":["../../src/tools/list-tools.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,oBAAoB,CAAC;AACvC,OAAO,EAAQ,WAAW,EAAmB,MAAM,eAAe,CAAC;AAKnE;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;CAIhC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAC;AAEhF;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;gCAYhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAErE;;GAEG;AAWH,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,WAAW;IAC9C,OAAO,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;CAgD/D"}