Runbook: Alembic — operations¶
| Field | Value |
|---|---|
| Service | Alembic |
| Owner | Olger Avila (IT) |
| Last verified | 2026-07-09 (transcribed from Olger's own architecture write-up; not yet independently re-run by Athanor/Eduardo) |
Purpose¶
Day-to-day operation of the SAP B1/Oracle MCP server: checking it's up, deploying code changes, restarting after changes, and reloading the reverse proxy without downtime.
Prerequisites¶
- RDP/remote access to the Windows server ("Jetty box",
192.168.1.6) — office LAN or VPN. Credentials are IT-managed; not documented here. - PowerShell access on that server.
- For deploys: push access to
Alquemis-Automation/Alembic(private repo).
Steps¶
Check service status¶
Get-Service caddy, mcp-sapb1
Both should show Running. They're managed as Windows services via NSSM (auto-start, restart
on crash).
Deploy a code change¶
git pushthe change toAlquemis-Automation/Alembic(mainbranch). No CI/CD — this is manual.- Copy the changed file(s) (typically
server.py) toC:\Trabajo\MCP\on the server. - Restart the MCP service to load the new code:
powershell Restart-Service mcp-sapb1
Change only Caddy config¶
No restart needed — reload applies the new config without dropping TLS:
.\caddy.exe reload --config Caddyfile
Verification¶
Get-Service caddy, mcp-sapb1shows bothRunning.- Logs: Caddy at
C:\Caddy\logs\, MCP atC:\Trabajo\MCP\logs\. - Functional check: connect an MCP client to
https://mcp.alquemis.com/<TOKEN>/and confirm the tool list comes back (six tools — see the catalog entry).
Rollback¶
- Code: revert the change in
Alquemis-Automation/Alembic, re-copy the previousserver.pyto the server,Restart-Service mcp-sapb1. - Caddy config: restore the previous
Caddyfile,caddy.exe reload --config Caddyfile.
Contacts¶
Olger Avila (owner). Escalate to him for anything beyond a simple restart/reload — server
access, the .env file, and the shared URL token are all his to manage.