Skip to content

Security

Foreman holds access to the account you earn from. Here is exactly what that means.

Start free

Foreman never sees your Upwork password

You sign in on upwork.com and authorize Foreman there, the same way you would authorize Claude or Cursor. Foreman receives a token, never a credential.

Tokens are encrypted at rest

AES-256-GCM, with a versioned ciphertext so the key can be rotated without downtime. Tokens never reach the browser and are redacted from every log.

Nothing is scraped

Foreman only calls Upwork’s official MCP through your grant. No headless browsers, no cookie capture, no feed polling. A build-time rule fails the deploy if a write call appears outside the one file allowed to make it.

Every workspace is isolated

Every database query is scoped to a workspace by construction, not by convention, and integration tests assert that one workspace cannot read another.

Untrusted content stays untrusted

Job descriptions and client messages are passed to models as data with an explicit instruction to describe embedded instructions rather than follow them.

You can leave

Export everything as JSON and CSV, or delete your account. Deleting revokes every Upwork token first.