Turn the job into one command: repo path, read or write roots, a timeout, and a non-zero exit on failure. Do not paste an interactive session into the pipeline.
Inject secrets from the CI vault. Do not commit them in mcp.json or echo them in logs. Cut MCP and skills down to the one this job needs. Writes go to a robot branch for humans to review.
Sandbox and approval modes often default to deny when no UI is present. Prove a read-only call on a throwaway job before you open bounded writes. See agent sandbox and approvals.
On failure, read PATH, login, and timeouts in the job log before you add five servers. This page does not replace each vendor CI sample.