# MS900 - MicrotronX ERP as an MCP server > MS900 connects AI assistants (Claude, ChatGPT and any other MCP client) to > the MicrotronX ERP through the Model Context Protocol. It runs as a Windows > service at the customer's site, exposes only what the customer's permission > groups allow, and can work without any data access at all. > Vendor: MicrotronX, https://www.microtronx.com, info@microtronx.com > Licence and price: on request, via the website or by e-mail. Product page (German/English): https://mcp.microtronx.com/ Setup guide for humans (German/English): https://mcp.microtronx.com/einrichtung.html ## In short - Answers questions from the customer's own ERP data, in natural language. - Structure-only access: the assistant sees tables, columns and their meaning but no values, designs reports as templates in the ERP statistics module, and those templates run only inside the ERP. No result, row count or run time is returned to the assistant. - Programs automations in the ERP trigger system, cron jobs (MS100) and tracking (MS800), with syntax check and an automatic previous version. - Permission groups decide tools, tables and fields. User accounts, passwords and system credentials are locked for every group. - Remote support by MicrotronX through a relay service, only after the customer approves each request, with no inbound port. - Uses the customer's own AI subscription; MS900 ships no language model. The rest of this file is setup instructions for AI assistants. This file tells an AI assistant how to connect itself to a MicrotronX ERP through the MS900 module. Ask the user for anything you do not know. Never enter passwords. Show every proposed configuration before you change a file. ## What you are connecting to MS900 turns a MicrotronX ERP into an MCP server. The connection is made by a small program, mxBridge.exe, which already sits in the user's local ERP directory after the ERP has been started once. Nothing has to be installed, and the ERP needs no port that is reachable from the internet. ## What you need from the user 1. Path of the local ERP directory (this is where mxBridge.exe is). Look there first before you ask: the standard folder is C:\Program Files (x86)\MicrotronX\MicrotronX ERP 2. Name of the ERP configuration. This is the name of a configuration entry in the ERP, NOT the database name on the database server. It has to match character for character, and it can differ per Windows user, so the user may have to ask their administrator. 3. Whether MS900 runs on the same machine as the assistant, or centrally on a server. If central: the computer name of the server (not an IP address) and the certificate fingerprint, both from the administrator. ## The configuration entry Same machine: "erp-branch1": { "type": "stdio", "command": "C:\\Program Files (x86)\\MicrotronX\\MicrotronX ERP\\mxBridge.exe", "args": ["--stdio", "--local", "--port", "18124", "--db", ""] } Central server: "erp-branch1": { "type": "stdio", "command": "C:\\Program Files (x86)\\MicrotronX\\MicrotronX ERP\\mxBridge.exe", "args": ["--stdio", "--host", ":18124", "--db", "", "--fingerprint", ""] } If the ERP is installed somewhere else, use that directory instead. Assistants that keep their MCP servers in a config.toml (ChatGPT Codex among them) use the same entry in TOML form. The single quotes keep the backslashes: [mcp_servers.erp_branch1] command = 'C:\Program Files (x86)\MicrotronX\MicrotronX ERP\mxBridge.exe' args = ["--stdio", "--local", "--port", "18124", "--db", ""] Arguments: --stdio always; mode for assistants --local MS900 on the same machine --host : MS900 on a server; computer name, not an IP address --port optional, default 18124 --db always; the ERP CONFIGURATION name --fingerprint central only; ties the connection to that instance One entry per ERP database. Several entries may exist side by side; each one is approved separately in its own database. A workstation uses exactly one route: if it was registered on the local route, the central route will be refused until an administrator resets the workstation. The access belongs to the Windows user and the machine, not to the assistant. Several AI assistants on the same workstation share one registration and one group: once it is approved, the next assistant is included without a second approval. If one of them reports "registered with a different token", it is running an older version of mxBridge.exe - have the ERP directory updated. ## Registration and approval 1. After the entry is added, the assistant has to be restarted. 2. At that point the server offers exactly one tool: the status enquiry, named ms900_status. Call it. The answer names the state and, while approval is missing, a confirmation code. The states are: pending registered, not approved yet; the code is shown granted approved, the tools of the group are available denied blocked, or registered with a different credential error the instance could not be reached; the text names the reason Passing {"anfrage": true} registers the workstation again. 3. Give that code to the user and tell them to pass it to their administrator. The administrator compares the code in the ERP administration, approves the workstation and assigns a group. The code is not a password, but it must not be published anywhere. Where to find it - the ERP administration exists in German and English, so give the user the names of their own language: German: main menu > Verwaltung > ERP Administration, then on the left "MS900 KI-Zugriff" > "Arbeitsplaetze & Gruppen" English: main menu > Administration > "Administration (Users, Groups, Settings)", then the MS900 access entry on the left The sub-pages open on the right: Arbeitsplaetze / Workstations (compare the code, approve, block, reset), Gruppen / Groups (what an approved workstation may do), Klassen / Classes (the blocks a group is made of), Einstellungen / Settings (the fingerprint for the central route) and Audit log. 4. After approval the server pushes notifications/tools/list_changed and the tools of the assigned group become available without a restart. Only if nothing appears within a minute, ask the user to restart you once more. You cannot do step 3 yourself. Approval and group assignment happen inside the ERP, where no assistant reaches. ## What you will be allowed to do Nothing by default. A workstation may do only what its group explicitly allows: tools, tables, fields. User accounts, passwords and system credentials are locked for every group and in every query. Read queries are checked before they run; anything not clearly permitted is rejected. Write access keeps a previous version of what was changed. If your group has no sql_query but has get_stat_template / put_stat_template, you work on structure only: use list_tables and list_columns, then create the report as a statistics template (SELECT with placeholders plus a declarative configuration for criteria, pivot, chart). Every SQL in it is checked against your group's tables and fields and only compiled, never executed; sql_plan likewise only compiles. Tell the user to open the template in the ERP statistics module - only they see the figures. New templates are visible to administrators until they are released to user groups. If your group includes file tools, they reach only the named directories the administrator has released - typically report templates and module logs. The database directory and the backup folder are blocked regardless of any setting, and the whole file access can be switched off. Tell the user plainly that whatever you read reaches your provider if you are a cloud-based assistant, and suggest keeping the group rights as narrow as the task allows. ## Messages you may run into "not signed in" No valid registration yet. Restart; the status enquiry can file a new request. "no permission" Approved, but no group assigned yet. approved, but no tools The group has no active permission block. "wrong database" The --db value does not match the instance on this port. Ask for the configuration name. "keine Instanzkennung" Almost always: MS900 was started WITHOUT (even though MS900 administrator rights, so it does not register is visibly running) itself system-wide although the process and the port are there. Tell the user to set MS900 up as a service or restart it via right-click > run as administrator, and only then to check port and --db. Do not send them looking for a file. "already registered" The workstation was registered over the other route. It has to be reset first. "different token" Two registrations for the same workstation. With older versions each assistant created its own. Have the ERP directory updated, restart both assistants; if it persists, have the workstation reset. workstation without a The assistant starts the program in a sandboxed machine name (\user) environment; older versions could not determine the machine name there. Update the ERP directory. granted, but only The assistant did not reload its tool list after ms900_status offered approval. Restart it; if it happens again, have the ERP directory updated. no answer at all MS900 is not started, or the port cannot be reached on the network. ## Deutsch - Kurzfassung Sie richten den Zugang zu einem MicrotronX ERP über das Modul MS900 ein. Sehen Sie zuerst im Standardordner nach (C:\Program Files (x86)\MicrotronX\ MicrotronX ERP), dort liegt mxBridge.exe im Normalfall; nur wenn sie fehlt, fragen Sie nach dem ERP-Verzeichnis. Fragen Sie den Anwender nach: Name der ERP-Konfiguration (nicht der Datenbankname) und ob MS900 auf demselben Rechner oder zentral auf dem Server läuft (dann zusätzlich Rechnername und Fingerabdruck). Erzeugen Sie daraus den Eintrag wie oben, zeigen Sie ihn dem Anwender und ändern Sie erst nach dessen Zustimmung eine Datei. Nach dem Neustart steht genau ein Werkzeug bereit: die Statusauskunft. Rufen Sie es auf, nennen Sie Zustand und Bestätigungscode und erklären Sie, dass der Administrator den Code vergleicht, den Arbeitsplatz freigibt und eine Gruppe zuweist. Nach der Freigabe melden sich die Werkzeuge von selbst nach; nur wenn binnen einer Minute nichts erscheint, starten Sie noch einmal neu. Tragen Sie keine Kennwörter ein. Darf Ihre Gruppe kein sql_query, aber Statistikvorlagen: Sie sehen nur die Struktur, legen Auswertungen als Vorlage an, und nur das ERP führt sie aus. Ausführlich und zweisprachig: https://mcp.microtronx.com/einrichtung.html