How Norma knows which system to call

Norma routes a request to the right backend (SAP today, other ERPs later) by scoping tool selection to a system โ€” not by guessing.

A common question: when Norma can talk to more than one backend โ€” SAP Business One today, another ERP such as Microsoft Dynamics tomorrow โ€” how does it know which one to call? The short answer is that Norma does not guess. It scopes the tools it can even see to a single system, so the choice is made by configuration and grounding, not by the language model improvising.

Today: one system, no routing

Right now Norma talks to exactly one backend, SAP Business One, through a single connector. The assistant never decides “SAP or something else” โ€” it only picks a tool (for example create_invoice or list_business_partners) from the one set of tools it is given, and even that choice is guided by retrieval: the knowledge service surfaces the tools relevant to the request, and the assistant selects one. Because SAP is the only system, there is nothing to route.

The system tag: keeping worlds apart

Every grounding document in Norma’s knowledge corpus is labelled with a system โ€” sap for SAP Business One knowledge, norma for how the assistant itself works, domain for a specific customer’s vertical vocabulary, and a new value for each future ERP. This label is a wall: a question about SAP retrieves only SAP knowledge, never another system’s tools or docs. It is the mechanism that stops a multi-system deployment from confusing one backend’s paperwork with another’s.

Adding a second ERP

When a new backend is introduced, it arrives as its own connector โ€” a separate component exposing that ERP’s own tools. Nothing about the assistant, the edge, or the interface changes. From there two shapes are possible:

  • One deployment, one ERP โ€” the common case. A customer runs SAP or Dynamics, and their Norma is wired to just that one. The tools it offers simply are that ERP’s tools; there is no routing decision at all, and the system tag keeps its grounding on the right system automatically.
  • One deployment, several ERPs โ€” for an organisation that genuinely spans multiple backends. Here each tool is named with its system (so a request selects, say, the SAP invoice tool rather than the Dynamics one), retrieval filters the available tools by system, and a routing signal โ€” which company or entity the request is about, or an explicit mention of the system โ€” decides which system is in scope for that request.

The principle

Norma treats “which system” as a matter of scoping, not intuition: the right tools are the only tools in view, chosen by how the deployment is wired and what the request is grounded against. That is why adding a new ERP is mostly additive โ€” a new connector plus its system-tagged knowledge โ€” rather than a rebuild.