MCP server + execution API

AI agents that work inside the system.

DoneOS gives agents typed tools and bounded authority, then records their work in the same execution ledger people use.

DoneOS MCPconnected
> list_work_items { zoneId: "next" }3 ready
> start_agent_run { workItemId: "work-42" }lease: 300s · actor: build-agent
> finish_agent_run { workItemCommand: "review" }state updated · event appended
Every accepted write is attributable
Built for controlled autonomy

More than CRUD tools.

Execution semantics keep retries, concurrent agents, and long-running work from corrupting the shared state.

Scoped credentials

Each revocable key maps to an AI actor with explicit permissions and optional expiration.

Renewable leases

Claims expire unless the agent heartbeats, so abandoned work can recover safely.

Idempotent commands

Stable request keys let clients retry without completing or creating work twice.

API trust boundary

MCP never receives Firebase credentials or writes directly to Firestore.

Connect in minutes

Create a key, connect your client, then give it work.

An agent key is a credential, not a running agent. DoneOS now shows the exact next command after you create one, and records the first run as soon as your client starts working.

1

Create a scoped key

Open Connect in DoneOS, choose Connect an AI agent, and copy the one-time key.

Open DoneOS
2

Connect your MCP client

For Codex, use the hosted server—no repository clone required.

export DONEOS_API_KEY='dos_…'
codex mcp add doneos \
+  --url https://app.doneos.net/mcp \
+  --bearer-token-env-var DONEOS_API_KEY
3

Give the agent its first job

Ask it to inspect your goals and ready work, claim one item, and keep DoneOS updated while it runs.

“Use DoneOS to find my highest-priority ready item, start a run, and record the result.”
Durable run protocol

An agent run has a lifecycle.

  1. 1
    Start

    Claim work and open an attributable run.

  2. 2
    Heartbeat

    Renew both the run and work-item lease.

  3. 3
    Finish

    Store output, artifacts, and the final transition together.

Typed tool surface

Enough context to act. Enough structure to stay safe.

Goalslist_goals · get_goal · create_goal · update_goal
Worklist_work_items · create_work_item · claim_work_item · complete_work_item
Runsstart_agent_run · heartbeat_agent_run · finish_agent_run
Evidencerecord_execution_event · list_recent_done · summarize_status_for_slack
Secrets stay server-side.

Agent keys are shown once and stored as one-way hashes. Integration tokens are encrypted outside the client data surface.

Security model
Agent beta

Give your agents a real execution contract.

Connect an MCP client to work that remains visible, recoverable, and accountable to people.