API and MCP

Drive SysJ from your code, your pipeline or your own agent.

Everything the console does is available through a documented API. Connect Claude Code, Cursor or any MCP client to SysJ, and every change it proposes still passes through the same plan, policy and approval.
claude code · example
youadd a Postgres database for orders
agent → sysjpropose_change(environment: staging)
sysjplan +6 · policy passed · $64 / month
sysjwaiting for approval in SysJ

At a glance

What API and MCP gives you.

The same API as the console

The console is a client of the public API. Nothing is reserved for the web interface.

Keys scoped to a workspace

API keys belong to a workspace, carry the permissions you give them, and can be revoked at any time.

An MCP server

Point your coding agent at SysJ and it can describe, plan and inspect infrastructure. It cannot skip approval.

Webhooks out

Plans, approvals, applies, deployments and drift are published as signed events to the endpoints you choose.

In detail

How it works.

Model Context Protocol

Bring your own agent. Keep every guarantee.

If your team already works in Claude Code or Cursor, add SysJ as an MCP server. Your agent can propose a cluster, read a plan and check an environment’s health. Applying still waits for a person in SysJ, because no path to your cloud skips the gate.

  • Works with any MCP client
  • Acts with the permissions of the key it holds
  • Proposals land in the same approval queue as everything else
claude code · example
youadd a Postgres database for orders
agent → sysjpropose_change(environment: staging)
sysjplan +6 · policy passed · $64 / month
sysjwaiting for approval in SysJ

REST API

Automate the loop from CI or a script.

Create a plan from a declaration, poll it, fetch the grouped diff and cost, and request approval, all over HTTPS with a workspace key.

  • Documented and versioned
  • Idempotent writes for safe retries
  • The same permission checks as the console
rest api · example
Create a plan
curl -X POST https://api.sysj.com/v1/plans \
  -H "Authorization: Bearer $SYSJ_API_KEY" \
  -d '{"environment": "staging"}'

Webhooks

Tell the rest of your tools what happened.

Subscribe an endpoint to the events you care about. Each delivery is signed, retried on failure, and visible in the console with its response.

  • Plan ready, approved, applied and failed events
  • Deployment and drift events
  • Signed payloads and delivery history
webhook · example
plan.approved
{
  "event": "plan.approved",
  "environment": "staging",
  "plan": "7f3a…",
  "approvedBy": "sam"
}

Questions

Common questions about API and MCP.

Can an agent connected over MCP apply changes?
It can propose them. Every proposal becomes a plan that is checked against policy and waits for a person with permission to approve it.
Do API keys use someone’s login?
No. Keys are credentials of their own, scoped to one workspace and to the permissions you grant, and they are revoked independently of any user.

See your own infrastructure as a plan.

Tell us about your team and the cloud you use. We will set up your workspace and walk through your first plan with you.