POROROCA OTA · DOCUMENTATION
MCP for coding agents
Connect Codex or another MCP client to safe delivery operations.
WHAT MCP DOES
Operate delivery beside the code.
The local stdio server inspects health, publishes already-signed bundles, changes rollout, and rolls back. It does not author or sign. Use a delivery token and require human approval for production mutations.
01 · BUILD AND ADD TO CODEX
Use one Node 22+ stdio command.
codex mcp add pororoca \
--env POROROCA_API_URL=https://pororoca-ota.fly.dev \
--env POROROCA_API_TOKEN=pororoca_live_... \
-- npx -y @pororoca-ota/mcp-server
codex mcp list
Restart if needed and use /mcp
in the Codex TUI. Keep stdout reserved for protocol messages.
OTHER MCP CLIENTS
Use the same command and environment.
{
"mcpServers": {
"pororoca": {
"command": "npx",
"args": ["-y", "@pororoca-ota/mcp-server"],
"env": {
"POROROCA_API_URL": "https://pororoca-ota.fly.dev",
"POROROCA_API_TOKEN": "pororoca_live_..."
}
}
}
}
02 · TOOLS AND SAFE LOOP
Inspect before and after every mutation.
| Tool | Effect |
|---|---|
pororoca_channel_status | Read-only health and adoption. |
pororoca_publish | Publish a signed manifest and base64 files. |
pororoca_set_rollout | Set eligible percentage from 0–100. |
pororoca_rollback | Restore previous known-good update. |
- Read status and summarize the baseline.
- Validate/sign outside MCP; never send it a private key.
- Get approval for app, channel, update ID, and percentage.
- Publish at 10%, inspect signals, then widen deliberately.
- On regression, roll back and inspect again.
Give an agent llms-full.txt for complete machine-readable context.
TROUBLESHOOTING
Separate transport, auth, and product errors.
-
No tools: run
npx -y @pororoca-ota/mcp-serverin a terminal to confirm it starts, then restart the client. - Server exits: run it in a terminal; verify Node 22+ and environment variables.
- HTTP 401: replace the missing, revoked, or wrong-app token.
- HTTP 402: activate the subscription before mutation.
- Publish rejection: validate the bundle and confirm app, platform, and manifest agree.