@enfyra/mcp-server 0.0.33 → 0.0.34
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/package.json
CHANGED
package/src/lib/mcp-examples.js
CHANGED
|
@@ -553,7 +553,7 @@ create_extension({
|
|
|
553
553
|
name: "ReportsPage",
|
|
554
554
|
description: "Reports dashboard",
|
|
555
555
|
menuId: "<created-menu-id>",
|
|
556
|
-
code: "<template><section class=\\"min-h-full w-full
|
|
556
|
+
code: "<template><section class=\\"min-h-full w-full space-y-4\\">Reports</section></template><script setup>useHeaderActionRegistry({ id: 'refresh-reports', label: 'Refresh', icon: 'lucide:refresh-cw', onClick: () => {}, order: 0 })</script>",
|
|
557
557
|
isEnabled: true
|
|
558
558
|
})`,
|
|
559
559
|
notes: [
|
|
@@ -561,6 +561,7 @@ create_extension({
|
|
|
561
561
|
'Use menu_definition.label, not title.',
|
|
562
562
|
'For page extensions, create the menu first and pass menuId to create_extension.',
|
|
563
563
|
'Page extensions should be full-bleed by default and responsive from the first version.',
|
|
564
|
+
'The extension root is already inside eApp main; do not add root-level page padding.',
|
|
564
565
|
],
|
|
565
566
|
},
|
|
566
567
|
{
|
|
@@ -576,17 +577,20 @@ create_menu({
|
|
|
576
577
|
})
|
|
577
578
|
|
|
578
579
|
// Child page extensions should be focused:
|
|
579
|
-
// /dashboard
|
|
580
|
+
// /dashboard compact summary/routing hub: KPIs, current signal, attention queue, navigation cards
|
|
580
581
|
// /cloud/projects project status and drill-downs
|
|
581
582
|
// /cloud/provisioning provisioning timeline/failures/slow steps
|
|
582
583
|
// /cloud/billing orders/subscriptions/refunds
|
|
583
584
|
// /cloud/infrastructure hosts/capacity/plans/system credential readiness
|
|
584
585
|
// /cloud/readiness legal/Paddle/landing launch checklist
|
|
585
|
-
// Use UTabs inside large pages instead of placing every section in one dashboard
|
|
586
|
+
// Use UTabs inside large pages instead of placing every section in one dashboard.
|
|
587
|
+
// For admin record management, link to /data/<table>, e.g. /data/landing_terms, not public landing paths.`,
|
|
586
588
|
notes: [
|
|
587
589
|
'Design the menu/page split before generating dashboard code.',
|
|
588
|
-
'Keep /dashboard as
|
|
590
|
+
'Keep /dashboard as a summary and distribution page, not a detailed operations table.',
|
|
591
|
+
'Use focused pages for operational domains.',
|
|
589
592
|
'UTabs is available in eApp extension runtime for page-level sections.',
|
|
593
|
+
'Admin links for editing or inspecting records should point to /data/<table> routes.',
|
|
590
594
|
],
|
|
591
595
|
},
|
|
592
596
|
{
|
|
@@ -271,8 +271,9 @@ export function buildMcpServerInstructions(apiBaseUrl) {
|
|
|
271
271
|
'- **CRITICAL:** MUST call `create_record` or `update_record` on `extension_definition` — outputting Vue code in chat does NOT save it. User will NOT see it.',
|
|
272
272
|
'- **Code format:** Vue SFC only. Structure: `<template>...</template>` + `<script setup>...</script>`. Server auto-compiles; if compile fails, fix and retry.',
|
|
273
273
|
'- **NO import statements.** All APIs are injected globally (see full list below).',
|
|
274
|
-
'- **Design first for dashboards:** before creating/updating a dashboard extension, define the menu/page split, time range controls, tabs, and drill-down links. Keep `/dashboard` as
|
|
275
|
-
'- **Page layout default:** page extensions should render full-bleed inside the app shell by default. Do not wrap the entire page in a centered card/container unless explicitly requested. Use responsive grids/stacks from the first version so the page works on desktop, tablet, and mobile.',
|
|
274
|
+
'- **Design first for dashboards:** before creating/updating a dashboard extension, define the menu/page split, time range controls, tabs, and drill-down links. Keep `/dashboard` as a compact summary and routing hub only: KPIs, current signal, attention queue, and navigation cards. Put detailed lists/tables/timelines into focused pages such as projects, provisioning, billing, infrastructure, and readiness.',
|
|
275
|
+
'- **Page layout default:** page extensions should render full-bleed inside the app shell by default. The extension root is already inside the eApp page `<main>`, so do not add root-level page padding such as `p-4 sm:p-6 xl:p-8`; use spacing between internal sections only. Do not wrap the entire page in a centered card/container unless explicitly requested. Use responsive grids/stacks from the first version so the page works on desktop, tablet, and mobile.',
|
|
276
|
+
'- **Admin record links:** when an admin extension links to backend records for management or inspection, point to eApp data routes such as `/data/landing_terms`, `/data/cloud_projects`, or `/data/cloud_payment_orders`. Do not use public landing-page paths from record fields such as `/cloud-terms` unless the explicit intent is previewing the public website.',
|
|
276
277
|
'- **Do not downgrade extension code to ES5 to appease tooling.** eApp extension runtime should support normal browser/runtime APIs such as `Array.includes`, `Set`, `Promise.all`, `String.replace`, `Intl.DateTimeFormat`, and `Intl.NumberFormat`. If diagnostics reject these, fix eApp extension checker/runtime contract instead of rewriting generated extension code around the limitation.',
|
|
277
278
|
'',
|
|
278
279
|
'#### Injected Vue API functions:',
|