The problem
SAP Business One runs the back office of tens of thousands of SMBs — but it lives on-premise, behind the firewall, on SQL Server or SAP HANA. That makes it almost impossible to point a modern AI agent at it: there's no public API surface, every customer's instance is different, and nobody wants to expose their ERP database to the internet. AgentOne (sapb1.ai) closes that gap — it lets a business talk to its own SAP B1 data through AI agents, without re-platforming and without opening the database to the world.
The approach
AgentOne is a multi-tenant SaaS platform with a deliberately thin on-prem footprint and a fully managed cloud control plane. A customer installs one lightweight agent on their network; everything else — provisioning, agents, billing, integrations — is self-service in the cloud. Each tenant is isolated end to end and gets its own deployed services, including a per-tenant MCP server, so an AI host can connect to that customer's SAP B1 in natural language.
Architecture
The runtime is a five-stage pipeline, visible in the platform's Command Center:
- Configurator (Python) — the control plane. Provisions each tenant on GCP Cloud Run: preflight checks, credential injection, a per-tenant Cloud SQL instance, GCS buckets, provider/tenant DB schema bootstrap, and Cloud Run env wiring — fully automated from a single "provision" action.
- Headless agent (Go) — a small Windows service installed on the customer's network. It bridges the on-prem SAP B1 (SQL Server / HANA) outward to the broker over an authenticated channel, so no inbound ports are opened on the customer side.
- Broker — routes work between the cloud agents and the headless connectors.
- Connectors — translate agent intent into SAP B1 operations.
- Database — the customer's SAP B1 instance, reached only through the connector.
Around that core sit ~22 microservices: an agent registry and custom-agent images, a container image registry, downloadable connectors (standard + headless), Stripe billing (subscriptions, usage metering, promo codes), and MS Teams / WhatsApp handlers — plus a tenant health dashboard and monitoring for the operator.
Why it's hard
The interesting engineering is in the seams: turnkey per-tenant infrastructure provisioning (so onboarding is self-service, not a services engagement), a keyless on-prem→cloud bridge that security teams will actually approve, and a clean separation between provider-level and tenant-level assets so one platform safely serves many isolated customers.



