---
title: "MGS3025: server speaks the old socket protocol"
description: A magus command reached a server, or a per-process pool, started by an older magus that still speaks the line protocol on its unix socket instead of HTTP. Restart the server.
tags: [MGS3025, server, socket, protocol, restart, upgrade]
---

# MGS3025: server speaks the old socket protocol

A magus command dialed a server's unix socket and got an answer in the socket protocol
magus used before the socket carried HTTP. The process on the other end was started by an
older magus.

```text
[MGS3025] the magus server at unix:///run/user/501/magus/server.sock was started by an
  older magus and speaks its old socket protocol; restart it: pkill -TERM -f 'magus server' && magus server start
```

## Why

The server's socket carries HTTP: the control operations (forwarded runs, jobs, status,
reload, stop), MCP and the Connect APIs are paths on it. The line protocol it replaced is
gone, with no fallback, so a new client and an old server share no way to talk. A server
keeps running across an upgrade of the binary it was started from, which is how the two
meet.

## Resolution

Restart the server so it runs the magus you just installed:

```sh
pkill -TERM -f 'magus server' && magus server start
```

`magus server stop` speaks the new protocol too, so against an old server it names this
code and stops nothing. The old process handles `SIGTERM` as a clean shutdown.

A forwarded run that meets an old server says so once and runs in its own process, so
nothing is lost while you restart.

## See also

- [The server](../../../guides/integrations/server.md)
