Backed byFounders Inc

The cockpit
for background work

Workers, triggers, and connections in one place. Driven by , , , or any agent that speaks MCP. One operating layer.

Start a workspace
See a live demo
workeros.floom.dev
Federico's Workspace
Eight workers. Always on.
8Workers
4Connections
214Runs today
Pick a section
All workers
Files in /workers. Floom discovers each one.
TRIGGERallcronwebhookmanualSANDBOXAlllocale2b
ListGrid
gmail_intake_brief
Read inbox, summarize each thread, draft replies.
#email#cron#gmail
next run · 14h 22m
Activev1.4.0
lead_enrichment
Enrich a row of leads with web data and LinkedIn.
#leads#webhook#linkedin
running now · step 3/6
Activev2.1.0
research_brief
Deep research on a topic. Markdown brief out.
#research#manual
last run · 42s
Activev1.0.4
weekly_digest
Investor update from changelog and run metrics.
#reports#cron#slack
next run · Fri 18:00
Activev1.1.0
support_replies
Draft ticket replies in your team voice.
#support#webhook
last run · 6m ago
Activev1.3.1
investor_update
Monthly metrics into a tight update draft.
#reports#monthly
next run · 1st of month
Activev2.1.0
Connections
OAuth once via Composio. Workers reuse the same token.
gmail · depontefede@gmail.comlive · 2 workers
linkedin · @fedepontelive · expires 12d
slack · floom · #updateslive · 1 worker
notionnot connected
How workers use it

Declare connections: [gmail] in worker.yml. Floom injects the live token at run time. No secrets in code.

Recent runs
Every execution on the record. Logs, output, duration.
gmail_intake_brief · run 0193abf2
cron · 12 threads · 4 drafts · 8.2s
done
Step timings

[fetch] 12 threads · [summarize] 12/12 · [draft] 4/12 · [save] 314 lines

Output

output.json · 4 drafts saved to gmail

Logs

09:00:01 INFO · 09:00:09 ✓ completed in 8.2s

Next runslead_enrichment · nowweekly_digest · Fri 18:00investor_update · 1st
Activity
Every change, on the record.
Today
run.completedgmail_intake_brief · 4 draftscron2h
worker.publishedlead_enrichment → v2.1.0you5h
Yesterday
connection.linkedGmail · depontefede@gmail.comyou1d
worker.createdinvestor_update · via MCPclaude1d
gmail_intake_brief
@fede · v1.4.0 · python
cron · 09:00 MON-FRI · runner=e2b
# worker.yml

name: gmail_intake_brief
runtime:
type: python
runner: e2b
trigger:
type: schedule
cron: "0 9 * * MON-FRI"

# connections
- gmail (depontefede@gmail.com)
Triggered by
Cronactive
Webhookready
Manualready
Drive Workeros from any MCP-capable agent
ClaudeChatGPTCursorCodexWindsurf
Source of truth

One worker file. Every trigger reads the same thing.

A worker is a folder with worker.yml plus your code. Declare the trigger, secrets, and connections. Floom handles cron, webhooks, manual runs, and the MCP surface from the same file.

How it works
workeros.floom.dev/workers
gmail_intake_brief
@fede · one source of truth
v1.4.0active · 3 prior versions
Triggered by
Cron
Webhook
Manual
MCP
Change worker.yml once. Every trigger picks it up.
Live by default

Every connection, fresh. Every run, on the record.

Workers reuse the same OAuth token Floom holds for each service. No secrets in code, no expired tokens silently failing in cron. Stream logs live; export every run to CSV with one click.

See observability
workeros.floom.dev/connections
Connections4 linked
Gmail · depontefede@gmail.comLive
LinkedIn · @fedeponteLive
Slack · floom · #updatestoken rotates in 12dRefresh
NotionConnect
Agent-native

Your agent creates the worker. Floom runs it.

Install one MCP server and Claude, Cursor, or any agent can callworkers.create, schedule a cron, or trigger a run. Skip the canvas. The brief is the workflow.

MCP reference
CL
Claudevia MCP · 2h
Every weekday 9am, summarize new Gmail threads and draft replies.
gmail_intake_brief
cron · 09:00 MON-FRI · gmail
Active
Created via workers.create. Scheduled before you finish the sentence.
Run now
Copy worker.yml
Works in any agent that speaks MCP

Spin up a worker in two minutes.

The cockpit for every background task you direct. Triggered by cron, webhook, or your agent.

Start a workspace
See a live demo