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.

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.