Multi-Instance Litmus Edge
6 min
multi instance litmus edge the web ui lets you register multiple litmus edge devices from a single mcp server and switch the active one without restarting why a single mcp server is often shared across more than one physical edge a lab unit, a staging deployment, a production deployment, a customer demo box multi instance support keeps each set of credentials on file and lets you flip between them from the chat header where it lives instances are stored in the env file under indexed keys edge instance 1 url=https //10 0 0 10 edge instance 1 client id= edge instance 1 client secret= edge instance 1 name=lab edge instance 2 url=https //10 0 0 20 edge instance 2 client id= edge instance 2 client secret= edge instance 2 name=staging active edge instance=1 the active instance's credentials are mirrored into the canonical keys edge url= edge api client id= edge api client secret= so every tool and every external mcp client continues to see a single set of edge url / edge api client id / edge api client secret headers, regardless of how many instances you have configured managing instances from the web ui /update env > litmus edge instances add a new instance provide url, client id, client secret, optional friendly name list registered instances the current active one is highlighted switch the active instance the mcpclient is rebuilt server side so subsequent tool calls use the new credentials immediately remove an instance if the active one is removed, the next available instance becomes active managing instances from the api endpoint method purpose /api/edge instances get list all registered instances /api/add edge instance post append a new instance /api/remove edge instance post remove an instance by index /api/switch edge instance post set a different instance as active /api/edge health?index=n get check a specific instance without switching the active one health page /health shows one status card per configured instance each card calls /api/edge health?index=n so you can verify all your edges from one place without disturbing the active one external mcp clients and multi instance external clients (claude desktop, cursor, etc ) connect to the sse endpoint directly and supply their own headers they are not aware of the web ui's instance list if you want different clients to talk to different edges, run separate mcp server containers or send different headers per client the instance list is only consumed by the web ui's chat at http //localhost 9000