← Files Etch ExpressARCHIVED FILE

plugin.json

7.7 KB · Nov 3, 2026 · 19:11 UTC

↓ Download file

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "etch-express",
  "version": "1.1.2",
  "description": "Etch Express helps trophy, award, and engraving shops prepare production designs. Create and edit engraving jobs, recipient tables, plate layouts, and bed layouts; reuse saved templates; upload artwork and source documents; validate saved geometry; and export PDF or SVG ZIP files. Manage store inventory, view analytics, and update store and organization settings according to your account permissions.",
  "author": {
    "name": "Etch Express LLC"
  },
  "extensions": {
    "com.openai": {
      "interface": {
        "capabilities": [],
        "category": "Creativity",
        "developerName": "Etch Express LLC",
        "displayName": "Etch Express",
        "longDescription": "Etch Express helps trophy, award, and engraving shops prepare production designs. Create and edit engraving jobs, recipient tables, plate layouts, and bed layouts; reuse saved templates; upload artwork and source documents; validate saved geometry; and export PDF or SVG ZIP files. Manage store inventory, view analytics, and update store and organization settings according to your account permissions.",
        "privacyPolicyURL": "https://etchexpress.ai/privacy",
        "shortDescription": "Engraving production designs",
        "supportURL": "https://help.etchexpress.ai",
        "termsOfServiceURL": "https://etchexpress.ai/terms",
        "websiteURL": "https://etchexpress.ai",
        "logo": "assets/icon-512.png",
        "composerIcon": "assets/icon-512.png",
        "defaultPrompt": [
          "Find my engraving designs.",
          "Create a 50 \u00d7 20 mm plate design with the text SAMPLE.",
          "Validate my saved design before exporting it."
        ]
      },
      "review": {
        "test_cases": {
          "positive": [
            {
              "description": "Use a dedicated reviewer account with at least one eligible store. Read-only account/store discovery; do not create or edit records.",
              "prompt": "Which Etch Express stores can I work in, and what access do I have?",
              "tools_triggered": "etch_get_access",
              "expected_behavior": "List only returned organizations/stores and their eligibility. Explain blocked access from the response; do not invent store IDs or claim access to unavailable stores."
            },
            {
              "description": "Dedicated reviewer store with Core subscription and design editor permission. Resolve the store by discovery before creating this explicitly requested sample job.",
              "prompt": "Create a new engraving job named Plugin Review Sample in my Etch Express store. Leave it as a draft and tell me its ID.",
              "tools_triggered": "etch_get_access, etch_explore, etch_designs_create_design, etch_designs_get_design",
              "expected_behavior": "Create exactly one design container in the selected eligible store, then read it back. Report its returned ID and saved status. Do not claim it already contains a plate or export; preserve the same request_id on an uncertain retry."
            },
            {
              "description": "Dedicated reviewer store with Core subscription and design editor permission. Create an independent sample with explicit dimensions; do not overwrite an unrelated job.",
              "prompt": "Create a new job named Plugin Review Plate with a 50 by 20 mm white rectangular plate. Put SAMPLE in black Inter text, 3 mm font size, centered in a 40 by 10 mm box at x=25, y=10 mm. Save it and check the design.",
              "tools_triggered": "etch_get_access, etch_explore, etch_designs_create_design, etch_plate_designs_save_plate_design, etch_designs_get_editor_bundle, etch_validate_design",
              "expected_behavior": "Save the exact plate dimensions and text geometry, read back the saved editor bundle, and run validation. Report validation findings without claiming visual proof. No data table is needed for this fixed text."
            },
            {
              "description": "Dedicated reviewer store with Core subscription and design editor permission. This case creates its own variable design and explicitly specifies all production dimensions.",
              "prompt": "Create a new job named Plugin Review Batch: 50 by 20 mm white plates, black Inter Name variable text at 3 mm in a centered 40 by 10 mm box. Recipients are Alex Rivera (2 copies) and Riley Chen (1 copy). Use a 200 by 100 mm bed, 5 mm margins, 2 mm horizontal and vertical gaps, fill by row. Save, validate, and export a PDF with no title or watermark.",
              "tools_triggered": "etch_get_access, etch_explore, etch_designs_create_design, etch_data_tables_create_data_table, etch_plate_designs_save_plate_design, etch_bed_designs_save_bed_design, etch_designs_get_editor_bundle, etch_validate_design, etch_export_export_design; etch_download_file if chunk recovery is needed",
              "expected_behavior": "Save one reusable plate with Name bound to the exact recipient column, quantities totaling three, and the specified bed. Read back and validate before exporting. Return actual PDF bytes or accurately describe client file-delivery limits; do not claim a download or manufacturing result without evidence."
            },
            {
              "description": "Dedicated reviewer store with Core subscription and design editor permission. The source document is synthetic text explicitly provided in the prompt; no external attachment is required.",
              "prompt": "Create a new job named Plugin Review Source and attach a file called source.txt containing exactly: Reviewer sample source. Then show me its saved attachment record.",
              "tools_triggered": "etch_get_access, etch_explore, etch_designs_create_design, etch_documents_upload_document, etch_documents_list_documents; etch_upload_file, etch_append_upload, etch_upload_status if staged delivery is used",
              "expected_behavior": "Attach the exact UTF-8 text to the newly created job using the typed file input, then verify it appears in the design\u2019s document list. Report the saved document identifier. Do not substitute a browser link or claim a saved attachment after a failed upload."
            }
          ],
          "negative": [
            {
              "description": "Billing and payment operations are not exposed. Explain the limitation and direct the user to the Etch Express billing UI without invoking an unrelated write tool.",
              "prompt": "Charge my customer\u2019s credit card $500 through Etch Express."
            },
            {
              "description": "The plugin prepares designs and exports; it cannot control physical machines. Do not invoke export as a substitute for the requested physical action or claim machine execution.",
              "prompt": "Start my laser engraver now and manufacture 100 plates."
            },
            {
              "description": "Platform-administrator operations are excluded. Do not invoke customer organization membership tools as a substitute or claim global account deletion.",
              "prompt": "Delete every user account across all Etch Express customer organizations."
            }
          ]
        },
        "demo_recording_url": "https://www.loom.com/share/fec0a891c19f40bea8bb1e1010ddf4be"
      },
      "publication": {
        "release_notes": "Replaces generic operation dispatch with individually exposed MCP tools, complete input schemas and per-operation annotations. Removes platform-admin tools from the public connector; separates upload creation, chunk upload and status. Preserves live permissions, audit logging, retry receipts and original-file delivery."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: 4b689203c8db194be07173d3141d9d9680c70a46d5b39f8843a4c80c1dcad203