Origami Precision logo Origami Lens logo
Origami Lens
Multi-SaaS Metadata Intelligence
Ready
Tokens: prompt 0 · output 0 · total 0
Loading...
Not set
Record slices

Select preset domains to auto-fill the list; uncheck or clear to go manual.

Mermaid preview (optional)

ERD Preview

erDiagram customer {} contact {} customer }o--|| contact : "contact"


Interactive ERD

Live zoom, pan, hover, and click insights.

Relationship
Lines (hidden)
Creates
Creates (downstream)
Minimap
Select a record to inspect fields

Click a node to expand its full field list.

No record selected.

Introduction

Origami Lens is a full-stack metadata workbench for NetSuite. Each pane shares the same visual language: a control column on the left, a resizable work surface on the right, and persistent indicators for sync status and theme. Keyboard focus follows whichever view is active in the menu bar.

Getting Started

  • Sync metadata from the top-right “Metadata ▾” menu to refresh cached objects and summaries.
  • Select a slice (O2C, Inventory, etc.) to pre-populate ERD record lists, or type CSV values manually.

ERD Builder

The left pane drives both the Mermaid preview and Dagre graph.

  • Expand hops automatically adds referenced records within the provided hop count.
  • Show lists toggles the inclusion of customlist_* objects.
  • Refs only (expanded) limits expanded mode to reference fields so diagrams remain focused.
  • Include line nodes surfaces line collections as separate nodes; use the Lines toggle inside the Dagre filter bar to hide/show them dynamically.
  • Magnify node zooms into the hovered or selected node and becomes a reset toggle.
  • Export scope supports Visible vs Full ERD; the Notes toggle adds a notes list to exports.
ERD Builder supports deep linking.
ℹ️ Info: Warm the cache: trigger a single metadata fetch (or run a small ERD once) for the current context so cache files exist; subsequent ERDs should be fast.

Metadata Explorer

The Metadata menu exposes two sub-views: Explore and Diff.

  • Slices and search filter the left-hand catalog; slice pills behave like the ERD slicer.
  • Summary card includes lineage pills that route to related records, plus line collection tabs.
  • Notes show up on both the catalog list and Dagre nodes so you can annotate requirements.
  • Tables respond to the resizable gutter; drag to allocate more vertical space to the field grid.
Metadata Explorer supports deep linking.

Metadata Diff

Compare cached metadata versions using the selectors at the top of the Diff page.

  • Env A / Env B can be the same or different; versions update based on the selected environment.
  • Select versions, run "Diff metadata caches," then jump into per-object field diffs via the "View diff" shortcut.
  • Use the modal search filter (Ctrl/Cmd+F still works) to locate specific objects inside large diffs.

System Notes

System notes summarize recent NetSuite changes (default range is Yesterday).

  • Row limits apply by plan: trial uses 200 rows, past due uses 50, active uses all.
  • Use the filters to narrow by record type, context, or employee before exporting.

SuiteQL Workbench

  • Run queries with paging controls (Rows dropdown) and filter/highlight output via the toolbar.
  • Use the inline clear button to reset filters, and export to CSV/JSON from the action menu.

Datasets

Datasets mirror the SuiteAnalytics dataset catalog.

  • Select a dataset to preview columns and sample rows; use the right gutter to resize the table area.
  • “Load dataset” fetches fresh data with pagination, respecting the Rows picker.

Saved Searches

  • Load available searches through the MCP connector; Origami normalizes the result columns for sorting/filtering.
  • Use the "Run search" button to execute with the current filter values and export via CSV/JSON as needed.
ℹ️ Info: You might not be able to execute all "Public" saved searches due to permission constraints.
⚠️ Warning: This is an experimental feature requiring the MCP connector. Reach out to support if you need help enabling it.
Token is good for an hour.

SuiteAnalytics Reports

  • Browse enabled SuiteAnalytics reports, then run a report to display rows with the shared table toolbar.
  • The toolbar mirrors SuiteQL/Datasets: inline filters, quick pagination, and export actions.
ℹ️ Info: You might not be able to execute all "Public" saved searches due to permission constraints.
⚠️ Warning: This is an experimental feature requiring the MCP connector. Reach out to support if you need help enabling it.
Token is good for an hour.

Precision AI

Generate narrative insights or SOP drafts using cached metadata and ERD context.

  • Parameter inputs (Top P, Top K, Max tokens) are optional; leave blank to use model defaults.
  • Paste Mermaid snippets or notes into the prompt box, then run "Send to Precision AI." Token counts appear under the status bar.
  • Trial accounts hide the auto-filled schema data field (ERD/Diff) until you upgrade.

CodeEye

CodeEye turns SuiteScript uploads into a deterministic inventory, findings, dependency graph, and diagrams.

  • Uploads are never executed. ZIPs are unpacked safely (no symlinks or path traversal).
  • Secrets are redacted before analysis artifacts are written.
  • Results are delivered as JSON artifacts you can download.
  • Diagrams render in the dual-pane viewer with Mermaid text on the right and SVG fallback for large graphs.
  • Use the Copy button to reuse Mermaid definitions in docs or tickets.

Workflow: Upload → Analyze → Review Summary → Open Diagrams → (Optional) Run AI Actions.

  • Summary Report aggregates files, entry points, integrations, and findings.
  • Runs lists prior analyses per tenant/context and supports hard delete for cleanup.
  • AI Actions (if enabled) use redacted source only; output is advisory.
?? Info: Mermaid is available for copy/paste. SVG fallback is used automatically for large graphs.
?? Warning: AI output may be inaccurate. Validate before acting on recommendations.

Notice: NetSuite is a registered trademark of Oracle Corporation and/or its affiliates.

SuiteQL Workbench

Run SuiteQL queries with pagination support.

No query executed yet.
No data loaded.

Saved Searches 🧪

List and run NetSuite saved searches via MCP.

Load saved searches to begin.
Selected: None
Lower bound of results
Upper bound of results
Only for standalone search types
ℹ️ Info: You might not be able to execute all "Public" saved searches due to permission constraints.
⚠️ Warning: This is an experimental feature requiring the MCP connector. Reach out to support if you need help enabling it.
Token is good for an hour.

Saved Search Results

Executed search rows appear here.

Run a saved search to see results.

Reports 🧪

List and run MCP reports.

Load available reports to begin.
Selected: None
ℹ️ Info: You might not be able to execute all "Public" saved searches due to permission constraints.
⚠️ Warning: This is an experimental feature requiring the MCP connector. Reach out to support if you need help enabling it.
Token is good for an hour.

Report Results

Executed report data appears here.

Run a report to see results.

Datasets

Select a dataset to preview sample rows.

Pick a dataset to preview.
No dataset selected.

SoD Conflicts

Define permission pairs and run conflict checks.

No SoD rules yet.

Rule detail

Select or create a rule, then run it.

Last run:
Count: 0

Rule results

Counts summarized by domain and permission pairs.

By domain

No runs yet.

Permission pairs

No runs yet.

System Notes

Pull recent system note changes by relative date range.

Warning: Token needs: 'System Notes for Analytics' permission to view all changes.
Select a range and run.
No data loaded.

Precision AI

Include the current ERD or Diff for insights.

Insights

AI output may be inaccurate. Validate before acting.

No Precision AI run yet.

CodeEye Runs

Runs for the active tenant and context.

-
Created Status Upload Files Findings Integrations Nodes Edges
Loading...

CodeEye

Upload SuiteScript files to generate a deterministic inventory and dependency map. Uploads are never executed.

Limits: 10 files, 2MB total, 10,000 lines.
Tenants' Contexts

Contexts per tenant (read-only)

TenantAppEnvDescription
Loading...
Users

Users and roles

EmailTenantRoleVerifiedMCPDaily token capTokens used (today)
Loading...

Click "Edit" on a user row to open the editor modal.

Email Outbox

Recent notification attempts

AtKindToSubjectProviderStatusError
Loading...

Outbox entries live in Firestore at config/notifications/outbox.