Agent systems · 2025–Present
NetSuite MCP Runtime
A stable, extensible runtime that gives AI agents governed access to NetSuite tools without coupling every business capability to NetSuite’s changing CustomTool schema.
Read the design writeup: selective disclosure ↗Why it mattered
NetSuite’s AI Connector imposed a constrained CustomTool schema that changed across releases. Instead of exposing every business operation directly through that surface, I designed a small, durable adapter layer for discovery and execution. The runtime could evolve independently while absorbing NetSuite-specific schema and compatibility changes in one place.
Selective disclosure
- Agents first list the tools or categories available to the current user.
- Detailed parameter schemas are retrieved only for the operations needed.
- A single dispatcher executes the chosen operation with structured parameters.
- The smaller surface reduces context noise and isolates callers from schema churn.
Plugin architecture
- Core owns discovery, schema shaping, permissions, and execution dispatch.
- Separate plugin-pack SuiteApps contribute product and client-specific tools.
- Developers register a namespaced operation, description, parameters, and handler.
- New workflows ship as plugins without modifying the shared runtime.
From consulting to product
The runtime became the flagship foundation for our AI consulting work and now runs in production client accounts, with three plugin-pack SuiteApps contributing domain toolsets. A typical paid engagement starts by installing the core and delivering a small set of high-value business tools, giving the client immediate use cases while leaving behind a governed platform that grows with additional plugins.
Technical range
TypeScript, Model Context Protocol, NetSuite SuiteScript 2.1, SDF, SuiteQL, runtime and plugin architecture, role-aware discovery, schema normalization, and tool execution.