foundr.work — full features
An opinionated declarative framework for stateful agents. Write a `worker.yaml`; the foundr-work npm package compiles it into a Foundr Worker — a long-running, resumable, MCP-native agent. Skills bundle drops into Claude Code or Codex so the framework writes itself. OSS at the core; the hosted runtime is the convenience tax, not the only path.
Pricing
Free via X. Solo at indie prices. Pro when you scale.
Same pricing model across the whole foundr.* family. No per-seat math. No enterprise quote theater.
OSS
npm install foundr-work
$0 · MIT
Full framework, full CLI, full skill bundle. BYO LLM key. No account, no telemetry.
- `npm install foundr-work` + Claude Code / Codex skill bundle
- CLI: `init`, `compile`, `run`, `test`, `inspect`
- Full YAML spec parser (state, tools, triggers, memory, guardrails)
- BYO LLM key (Anthropic / OpenAI / Gemini / local via env)
- MCP server + MCP client built into every worker
- Run on any host — laptop, Vercel, Fly, your own Postgres
- MIT license, full source on GitHub
Hosted Solo
Recommended$29 / mo
One owner, unlimited workers, durability + replay sized for indie scale.
- Unlimited workers, single-owner workspace
- Durable execution + step-level replay (Temporal/Inngest pattern, indie-priced)
- 100k worker-steps / mo included; then $0.0005 / step
- 7-day log + run-history retention
- Hosted MCP endpoints with bearer-token auth
- foundr.team membership (worker registers as a roster member)
- BYO LLM key passes straight through — zero token markup
Hosted Pro
$199 / mo
Up to 5 seats, audit log, SSO, 99.9% SLA. Fills the canyon between Solo and enterprise.
- Up to 5 team seats
- Audit log + SSO + 90-day retention
- 1M worker-steps / mo included; then $0.0003 / step
- Priority MCP-tool-call queue + 99.9% SLA
- Scheduled cron + A2A bridge to other Pro tenants
- Worker observability dashboards (token cost, latency, replay)
What you get
Every feature, grouped by who it's for.
Core (declarative framework)
- `worker.yaml` schema: `model`, `instructions`, `state` (typed via JSON Schema), `tools`, `triggers`, `memory`, `guardrails`, `lifecycle`, `version`
- `foundr-work init` — scaffolds repo, `worker.yaml`, `.foundr/` state dir, skill-bundle hookup
- `foundr-work compile` — emits the runnable worker, pinned to spec hash (TS or Python target)
- `foundr-work run` — local execution loop with hot-reload on YAML change
- `foundr-work test` — replay recorded runs against a new spec hash (regression test for prompts + state)
- `foundr-work inspect` — REPL into a running worker's state, message history, tool calls
- Spec-hash versioning: workers are content-addressed (`worker@<sha>`); state never tied to code commit
- Stateful by default — `state` declared in spec, persisted by runtime, survives restarts + model swaps
- Human-in-the-loop gates as a spec field: `lifecycle.paused: until <event>`
Agentic-first (MCP + token)
- Every worker auto-exposes an MCP server at `<id>.foundr.work/mcp` — tools, state reads, resume actions become MCP tools/resources
- MCP client built-in: spec field `tools: [{mcp: <url>}]` mounts external tools without code
- A2A handoffs as a spec field: `handoffs: [<other-worker>]`
- Streaming over MCP: tokens, step transitions, state deltas all emit as MCP notifications
- Trigger surface declared in spec: HTTP, cron, MCP tool-call, webhook, A2A
- Hosted runtime auth via OAuth bearer → MCP token; worker URL IS the MCP endpoint
- Skill bundle for Claude Code + Codex: `/foundr-work-design`, `/foundr-work-add-tool`, `/foundr-work-add-state`, `/foundr-work-promote`
Solo-founder-shaped
- `npm install foundr-work` — no account, no signup, no telemetry on the OSS path
- BYO LLM key via env (`ANTHROPIC_API_KEY`, `OPENAI_API_KEY`); no model proxy in the middle
- Specs are plain YAML — copy-paste a gist + `foundr-work run` works
- One-line promote: `foundr-work deploy` pushes the spec to Hosted Solo
- Solo tier has no "team" concept — one owner, one MCP token, no RBAC ceremony
- No vendor lock: every worker exports as `{worker.yaml, .foundr/state/}` — the spec runs anywhere npm runs
Agentic-first
The MCP surface your agents call.
Add it once to Claude, Cursor, or any MCP host. Your bearer token unlocks every tier — no dashboard required.
claude mcp add --transport http foundr-work https://foundr-work.foundr.company/api/mcp
worker.tools[*]Every spec-declared tool becomes an MCP tool the worker exposes
state.get / state.setRead or mutate the worker's typed state from any MCP client
lifecycle.resumeResume a paused worker from a human-in-the-loop gate
replay.getFetch any past run for step-level replay or audit
trigger.invokeFire any declared trigger (HTTP, cron, A2A) from another agent
spec.describeReturn the YAML spec + version hash so callers can verify the contract
Why this differs
The angles the incumbents won't ship.
- 01
YAML spec IS the artifact — not a config option (Pydantic AI, MS Agent Framework, AgentSpec offer YAML *alongside* code). foundr.work makes the YAML the worker; everything else is generated.
- 02
Compiled from a spec + a Claude Code / Codex skill bundle — uniquely meets the AI-native solo founder where they already live. No competitor ships "drop these skills into your coding agent and the framework writes itself."
- 03
Stateful by default. State, memory, and resumability are spec fields, not runtime decisions. LangGraph checkpointers are opt-in (and silently fail per Issue #10144); ours are the default.
- 04
Spec-hash versioning — the YAML hash IS the worker version. Reproducible workers, immutable history, trivially rollback-able. No competitor offers this.
- 05
MCP-native both ways — the worker IS an MCP server out of the box (consume + expose). LangGraph / CrewAI bolt this on.
- 06
No graph DAG, no role abstraction. Declarative spec → compiled state machine. Lower learning curve than LangGraph (graphs) or CrewAI (roles/goals/backstories).
- 07
Single-customer pricing shape. $29 Solo undercuts CrewAI Basic ($99), Mastra Teams ($250), Inngest Pro ($75), Temporal Essentials ($100) — sized for one builder, not a team.
Competitive landscape
Who's already here, and what they leave on the table.
Honest comparison. We do not pretend the space is empty.
- LangGraph + LangSmith (LangChain)OSS free; LangSmith Plus $39/seat + per-run + per-minute uptime + LCU $1.50; LangGraph Platform usage-priced
Graph-orchestration framework + hosted runtime; production default for Python agent teams
Gap: Graph-Python mental model; per-node + per-minute meter explodes at scale; not declarative; recurring state-loss bugs (Issues #10144, #2040, #36957)
- CrewAI + AMPOSS free; Basic $99/mo (100 execs); Standard $6k/yr → Ultra $120k/yr; Enterprise $60k+
Role-based "crews" Python framework + visual AMP cloud
Gap: Enterprise-priced ceiling, role/goal/backstory metaphor is opinionated, Python-only, $99/$6k gap skips the indie tier
- MastraOSS Apache-2.0 free; Starter $0; Teams $250/mo; Enterprise custom
TypeScript framework + Mastra Cloud (Studio/Server/Memory); YC W25
Gap: Code-DSL not declarative; $250 next jump skips the solo founder; no YAML spec; closest direct competitor, but funded teams build for funded teams
- Microsoft Agent Framework (AutoGen successor)OSS free; runtime billed via Azure AI Foundry
Converged AutoGen + Semantic Kernel; declarative YAML agents via `AgentFactory.create_agent_from_yaml`; A2A + MCP native
Gap: Azure-shaped, .NET/Python, enterprise/Foundry gravity well, not solo-founder-friendly
- Temporal CloudEssentials $100/mo (1M actions); Business $500/mo (2.5M); Enterprise custom
Gold-standard durable execution; agents as workflows
Gap: Pure workflow engine — agent ergonomics on you. $100/mo floor too high for indie scale; the $5B-valuation precedent that proves the market but leaves the bottom open
Declare your first worker
`npm install foundr-work`, write a 20-line YAML spec, run it. The Claude Code skill bundle (`claude mcp add foundr-work`) is in the README's first command. Hosted runtime is optional — the framework runs anywhere npm runs.