Request early accessEarly access

/solutions/ai-agents

Give agents tools, not keys.

Your product publishes an interface — its MCP tools, discovered, each marked as a read, a write, a destructive or an outside call. People try them from the page, agents call them with grants tool by tool, and every call is written down before it runs.

  • MCP, both eras
  • Every call on the record
  • Grants per tool
@crm-agent · callsrecorded before each call
  1. 09:43:30companies.getread{ id: "co_12" }200 · 9 ms
  2. 09:43:02contacts.mergedestructive{ keep: "c_88", merge: ["c_91"] }name typed back · 240 ms
  3. 09:42:40webhooks.createexternal{ url: "https://…", secret: [redacted] }confirmed · 96 ms
  4. 09:42:05deals.updatewrite{ id: "d_1042", stage: "won" }confirmed · 180 ms
  5. 09:41:30contacts.bulk_upsertwrite{ rows: [1,380], dedupe_on: "email" }confirmed · 2.1 s
  6. 09:41:12contacts.searchread{ q: "acme", limit: 20 }200 · 14 ms

/the-path

From a product to something an agent may safely call.

Six steps, from the tools your product offers to the agents that use them.

  1. 01

    Run the product

    Deploy it as a container on your own server — from your code, an image or the Marketplace — health-checked and reversible.

    Deployments
  2. 02

    Publish its interface

    Point a system at its MCP server — in the container, or at an address — or at its OpenAPI document. Its tools, instructions, resources and prompts are read at once.

    Systems & MCP
  3. 03

    Say what each tool may do

    Every tool gets a class. Anything that does not declare itself read-only is a write; “reversible” is never guessed — you set it, and it survives the next reading.

    Systems & MCP
  4. 04

    Try it, on the record

    Call any tool from its page: a write is confirmed, a destructive one asks for its name. Every call is a ledger row with the arguments redacted — one history for people and agents.

    Systems & MCP
  5. 05

    Agents with grants

    An agent built from files, granted tools one by one — never a wildcard for writes — that can never do what its owner cannot.

    Agents
  6. 06

    Drafts that wait for a person

    Anything leaving your company is drafted and approved by a person unless your policy says otherwise; triggers wake agents on a schedule, a webhook or an event.

    Agents

/what-changes

Why a gate, not a key.

Two handles, two blast radii.

Restarting a container and merging customer records are different risks, so they are different handles behind different permissions. An agent granted @crm-agent contacts.search can search contacts — and do nothing else, to nothing else.

  • @crm-api — the container: logs, restart, a shell.
  • @crm-agent — the product: its tools, one grant each.
  • A key would open both. A gate opens exactly what was granted.
crm-apicontainer · :3000/mcp · private networkMCP 2026-07-28
@crm-agentproduction14 tools

Acme CRM — contacts, companies, deals and files.

  • contacts.search(query, limit)reads
  • contacts.bulk_upsert(rows[], dedupe_on)writes
  • files.attach(entity, id, file)writes
  • deals.update(id, stage)writes
  • contacts.merge(keep, merge)destructive
  • + 9 more
Type contacts.merge to confirmcontacts.merge
INSTRUCTIONS.mdTOOLS.mdrecorded · tcl_7fa2

Every run, traced.

A run is a trace: what woke the agent, what it read, each tool call with its decision and outcome, what waited for a person and what it cost. The calls land in the same ledger as everyone else’s.

  • Lanes for each agent, the gate and the people it waited for.
  • Tokens and cost, step by step, from prepaid credits.
  • A new agent is tested without side effects before it can be switched on.
A run trace: lanes for the user, the assistant, sub-agents, the coding agent, the policy gate and a staging deploy, with duration, tokens and cost.A run trace: lanes for the user, the assistant, sub-agents, the coding agent, the policy gate and a staging deploy, with duration, tokens and cost.

/trust

Nothing irreversible without you.

Safety here is a set of mechanisms you can inspect, not a badge: what the platform will not do on its own, and what it writes down when it does.

How we keep it safe
  • An isolated cloud per organization

    Servers, networks, databases, buckets and secrets belong to one organization. Nothing is shared with anyone else.

  • Destructive means typed back

    A tool that changes data asks first; one that destroys it asks for its name typed back. Every call lands in a ledger.

  • Secrets never on a command line

    Encrypted and versioned, handed to a container only at deploy time — over stdin, never in a command or a log line.

  • See it before it runs

    Every create shows the exact Docker commands it will run, with secrets by name, before anything is made.

  • Deploys that can’t take you down

    The new container must pass its health check before the old one goes. If it fails, the old one is still serving.

  • Sign-in you control

    Passkeys, two-factor, single sign-on with OIDC or SAML 2.0, verified email domains — and you can require them.

/start

Publish the tools first.

Your systems and their ledger come first; agents call exactly those tools. Request early access to start.

Quick links

Request early accessthe way in
Platform overvieweverything in one isolated cloud
Marketplaceapps, databases, Docker Hub, MCP
Pricingplans, usage, AI credits
Securityisolation, secrets, approvals, audit
Changelogwhat shipped, newest first
Talk to ussales, help, security, privacy

Appearance

Dark mode
Light mode
System mode
Moonlight palettesilver-white · moon blue · lavender grey · the default
Signal paletteindigo · the classic
Ember paletteorange · amber · crimson
Aurum palettegold · bronze · champagne
Clay paletteterracotta · rust · sand
Mocha palettecaramel · mocha · cream
Rosewood palettedusty rose · wine · blush
Sage palettesage · eucalyptus · oat
Tide palettesea teal · deep sea · seafoam
Slate palettesteel blue · slate · mist
Dusk palettelilac · mauve · slate blue
Indigo accent
Violet accent
Blue accent
Teal accent
Emerald accent
Amber accent
Orange accent
Rose accent
Graphite accent
Cool surface
Neutral surface
Warm surface
Midnight surface
↑↓ move↵ open⌘K or / anywhere on the site