Floom

io.github.floomhq由 GitHub 账号 floomhq 发布v0.1.6更新于 Oct 24, 2026

Deploy Python functions as web apps with auto-generated UI, REST API, and shareable links.

概览

AI 生成的概览

Floom 的 MCP 服务器让助手在本地 MCP 客户端中创建、运行、监视、检查和管理 Floom 后台 AI worker。

可以做什么
从包含 worker.yml 以及 run.py 或 SKILL.md 的文件夹创建并部署 worker,校验后推送到 Floom 运行时。手动运行 worker 并监视执行过程,记录日志、输出、工具调用和审批状态。检查和管理运行记录,包括对历史执行进行重放和回滚。管理 worker 定义、触发器和声明的连接,使 worker 可按计划、webhook 或应用事件运行。
适用场景
当你希望 AI 助手在 Floom 运行时上构建并运营周期性后台任务(如摘要、收件箱分诊、外联草稿或监控),而不是临时脚本或聊天线程时使用。适合需要版本化 worker 文件夹、按白名单限制工具、审批关卡和可审计运行历史的团队。
运行要求
以本地 stdio 进程运行,来自 npm 包 @floomhq/mcp-server。需要 FLOOM_API_KEY 密钥和 Floom 控制平面的 FLOOM_BASE_URL。需要可访问的 Floom 运行时;自行托管它需要 Python 3.11+、Node.js 20+、Git、模型提供商密钥和 E2B 密钥。
安装前请注意
服务器需要可访问你 Floom 工作区的 API 密钥(FLOOM_API_KEY)。worker 可能产生副作用:agent worker 仅在声明审批关卡时才暂停等待人工批准,脚本 worker 在默认允许公网出口的沙箱中运行。运行记录、输出、工具调用和上下文会被存储并可重放,因此应将 worker 内容和上下文视为敏感数据。费用来自 E2B 沙箱运行时间和你的模型或 API 提供商用量。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Floom,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Floom

The loop engineering harness. AI workers that run on a loop.

Schedule them, trigger them, require approvals, and keep every run on the record.
A worker is a folder: worker.yml + SKILL.md or run.py. Deploy it from Claude Code, Codex, or the CLI. Run it from the UI, REST, or MCP.

Get started · Build a worker · Try the hosted version · Read the docs

[CI] [Stars] [License] [Sandboxed by default] [Linux, macOS, Windows]

[Floom: the loop engineering harness for AI workers]


Most "AI automation" is a chat window you babysit, or a no-code graph that bills you per task and can't be audited. Floom is the loop engineering harness: a real runtime where a worker is a readable package, it runs on a loop without you watching, and every execution leaves logs, outputs, tool calls, approvals, and a replay you can trust. Used natively from Claude Code and Codex via MCP or CLI.

Deploy A Python Script As An App, REST API, And MCP Tool

Floom lets an agent or developer turn a Python script into a worker that non-developers can run from a UI, other systems can call through REST, and AI agents can operate through MCP.

Start with three files:

text
workers/my-worker/  worker.yml  run.py  requirements.txt

Then validate, deploy, and run:

bash
floom workers validate ./workers/my-workerfloom workers push ./workers/my-workerfloom run my-worker --input key=value

Read BUILDING.md for the full copy-paste worker contract.

What Floom Is: Worker Runtime For Background AI Workers

Floom turns repeatable knowledge-work automations into background AI workers. A worker can run manually, on a schedule, from a webhook, or from an app event. The runtime keeps the worker definition, input schema, output schema, logs, tool calls, approvals, and run history inspectable.

Use Floom when you want an AI agent to do recurring work without turning that work into an opaque chat thread, a hard-to-diff automation graph, or a one-off script with no supervision.

Build And Deploy An AI Worker From A Folder

AI agents and developers can build a Floom worker from a folder:

text
workers/<worker-id>/  worker.yml        # manifest: inputs, outputs, trigger, runtime, secrets  run.py            # script entrypoint, or SKILL.md for agent mode  requirements.txt  # optional Python dependencies

Deploy the worker with:

bash
floom workers validate ./workers/<worker-id>floom workers push ./workers/<worker-id>floom run <worker-id> --input key=value

After deployment, Floom exposes the worker in the UI, through REST endpoints, and through the Floom MCP server for AI clients. For the complete copy-paste build contract, read BUILDING.md.

What A Worker Looks Like

A worker is a folder-backed job definition. Describe the work in plain English (SKILL.md) or hand it a script (run.py), declare its tools, trigger, memory, and secrets in worker.yml, and Floom runs it.

yaml
# workers/github-digest/worker.yml  (abbreviated)name: github-digestdescription: "Every morning at 9am, send a digest of unread GitHub PRs and open issues."exec:  entry: SKILL.md          # plain-English agent; or run.py for a scripttrigger:  type: schedule  cron: "0 9 * * *"        # also: manual, webhook, Composio eventconnections:  - app: github            # the only tools this agent is allowed to call    allowed_tools: [GITHUB_FIND_PULL_REQUESTS, GITHUB_LIST_ASSIGNED_ISSUES]
markdown
<!-- workers/github-digest/SKILL.md -->You are a GitHub assistant generating a daily PR + issues digest.Fetch the user's open PRs and assigned issues, compile a markdown digestwith Action items, and finish_with_outputs({ "digest": "<markdown>" }).

It runs at 9am, calls only the two GitHub tools it declared, and writes digest.md to a run you can open, replay, or roll back:

text
run 7f3a · github-digest · finished 09:00:04 · 2 tool calls · output: digest.md  ✓ GITHUB_FIND_PULL_REQUESTS    q="is:open is:pr author:@me"   → 4 PRs  ✓ GITHUB_LIST_ASSIGNED_ISSUES  state=open                     → 2 issues  → out/digest.md (text/markdown)   [open · replay · rollback]

The full manifest adds schema_version, title, version, and declared outputs. See workers/ for runnable examples, BUILDING.md for a minimal deployable worker, and the agent cookbook.

Two kinds of agent

runs inhost isolationtoolsside effects
Script (run.py / .sh / .js / .ts)E2B sandbox microVMisolated filesystem, env & process; platform secrets withheldsandbox + declared connectionsapproval gate when declared
Agent (SKILL.md)AgentDriver in the API process (trusted bundles only)not microVM-isolated by policydeclared connections, allow-listedapproval gate when declared

Sandboxes allow public network egress by default and block private/internal ranges; a stricter allowlist is optional. Full trust model: ARCHITECTURE.md.

Worker Runtime At A Glance

What it isSelf-hosted runtime to create, run, and supervise background AI agents
Best forRecurring agent work: inbox triage, digests, outreach drafting, enrichment, monitoring
Agent typesScript (run.py/.sh/.js/.ts) and plain-English agent (SKILL.md)
IsolationScript workers run in E2B sandbox microVMs - isolated host filesystem, env & process; platform secrets withheld
TriggersManual, schedule (cron), webhook, Composio event
SafetyHuman-in-the-loop approvals for side-effecting agents; tools allow-listed per agent
On the recordEvery run records logs, outputs, tool calls, approval state, replay + rollback
Cost modelFloom adds no per-task fee - you pay E2B sandbox runtime (per second) plus your model/API provider usage
StackNext.js + Tailwind UI · FastAPI + SQLite API · MCP server + CLI
Runs onLinux, macOS, Windows (Python 3.11+, Node 20+)
LicenseMIT · hosted version

Who Floom Is For

  • Founders & operators turning recurring work (digests, triage, outreach) into agents that run themselves.
  • Engineers who want a real runtime - manifests, sandboxes, limits, approvals - not a prompt file and a cron job.
  • Teams who need every action allow-listed, approved, and replayable for audit.
  • Anyone burned by agents that ran a destructive command, leaked a secret, or claimed success with nothing on the record.

Floom Compared: Raw Scripts vs Zapier vs Hand-Rolled MCP

raw scriptsZapier / Makehand-rolled MCP serverFloom
Worker definitionad-hoc prompt or codevisual graph, hard to diffcustom tool server codea folder: worker.yml + SKILL.md or run.py
Runtimecron, shell, or local processvendor automation runtimewhatever the developer buildsagent runtime with triggers, runs, logs, outputs, approvals, replay, and rollback
Isolationruns on your hostvendor cloud, opaquedepends on implementationE2B sandbox microVM for script workers
Tool accesswhatever the script can reachper-connectorMCP tools onlydeclared and allow-listed per worker
Side effectsfire immediatelyworkflow-dependentcustom approval logichuman approval gate when declared
Observabilityscrollback, if anyper-step logscustom logslogs, tool calls, outputs, artifacts, approval state, replay, and rollback
Agent accesscustom wrapper needednot an agent-native build targetagent can call tools, but app runtime is separateMCP tools let agents create, run, watch, and inspect workers
Cost modelmodel tokens and infrastructureper-task or per-execution feesmodel tokens and infrastructureno per-task fee; you pay runtime and provider usage
Hostingyour hostvendor onlyyour hostself-host, or hosted

Quick Start: Run Floom Locally

Linux / macOS

bash
git clone https://github.com/floomhq/floom.gitcd floom./scripts/setup.sh# edit apps/api/.env: add a model provider key and E2B_API_KEY./scripts/dev.sh

Windows PowerShell

powershell
git clone https://github.com/floomhq/floom.git; cd floom.\scripts\setup.ps1# edit apps\api\.env: add a model provider key and E2B_API_KEY.\scripts\dev.ps1

Requires Python 3.11+, Node.js 20+, Git, a model provider key, and an E2B key from e2b.dev. Open http://localhost:3000 and sign in - no auth secret for local dev, and the example agents are seeded on first boot.

Full setup, model providers, optional integrations, and the safe self-hosting checklist: docs/GETTING-STARTED.md. Common issues: docs/TROUBLESHOOTING.md.

Not ready to self-host? floom.dev is the hosted version - hire AI agents with no setup. Hosted users can start from an MCP client with:

bash
npx -y @floomhq/floom mcp install --target claude

The .env, model-provider, and E2B keys above are for running your own local or self-hosted runtime, not for using Floom Cloud.

How a run works

[Floom worker runtime flow from trigger to worker, runner, sandbox or agent driver, side-effect approval, and run record]

Core concepts

  • Agents - folders under workers/<name>/ with worker.yml plus a script entrypoint (run.py) or an agent prompt (SKILL.md).
  • Runs - every execution records logs, outputs, tool calls, approval state, and replay/rollback context.
  • Contexts - reusable file bundles attached to agents as reference material; sensitive by default.
  • Approvals - side-effecting agents pause for a human decision before anything leaves the building.
  • Workspace history - agents, contexts, and settings versioned in a git-backed workspace for rollback.

Write your first agent in docs/GETTING-STARTED.md, then docs/AUTHORING.md for the full manifest and runtime contract.

How workers execute

Script workers (.py/.sh/.js/.ts) run in an E2B sandbox microVM by default: isolated dependencies, no host process access, contained resources. TypeScript workers use the Node runtime with tsx (npx --yes tsx run.ts) and the same inputs.json/result.json contract as Python workers. A bundle that dumps os.environ inside the sandbox sees only sandbox metadata - FLOOM_SECRET, provider keys, and E2B_API_KEY are all absent. Agent workers (SKILL.md) run through the API-hosted AgentDriver tool loop and are governed by their declared connections and the approval gate; the current single-tenant policy permits only trusted agent bundles on that path. There is no in-process local script runner. Full trust model: ARCHITECTURE.md.

Data handling, connected-account safeguards, retention boundaries, and hosted Cloud legal surfaces are summarized in docs/DATA-RETENTION.md.

Architecture

text
apps/web      Next.js + TypeScript + Tailwind + shadcn/uiapps/api      FastAPI + SQLite + Pydanticapps/mcp      MCP server + CLIworkers/      Worker folders (worker.yml + run.py or SKILL.md)data/         SQLite DB + run artifacts

FAQ: AI Agents, MCP, And Deploying Python Scripts

What is Floom in one sentence?

Floom is an open-source runtime for background AI workers that run from versioned worker folders with declared inputs, outputs, triggers, tools, approvals, logs, REST API access, UI access, and MCP access.

Is Floom an MCP server?

Floom includes an MCP server, but it is more than an MCP server. The MCP endpoint lets agent clients create, run, watch, inspect, and manage Floom workers. The Floom runtime is the part that executes those workers, records runs, manages approvals, and exposes the UI and REST API.

Can an AI coding agent build a Floom worker from this repo?

Yes. Read BUILDING.md first. The build contract is a workers/<id>/ folder with worker.yml, run.py or SKILL.md, and optional requirements.txt, then floom workers validate and floom workers push.

Can I deploy a Python script as an app, REST API, and MCP-accessible worker?

Yes. Put the script in workers/<id>/run.py, declare its inputs and outputs in worker.yml, deploy it with floom workers push, and Floom makes it runnable from the UI, REST API, and MCP tools.

What is the difference between script mode and agent mode?

Script mode runs deterministic code such as Python, shell, or Node in the sandbox. Agent mode runs a SKILL.md prompt through the agent loop with declared tools and output writers.

Does Floom replace Zapier or Make?

Floom is for teams that want versioned worker folders, sandbox execution, approval gates, logs, outputs, replay, rollback, REST API access, and MCP access. Zapier and Make are visual automation products with their own vendor runtimes.

Does Floom replace hand-written MCP tools?

Floom can expose work through MCP without making you hand-roll the whole app runtime. A hand-written MCP server gives an agent tools; Floom gives the worker a runtime, UI, API, triggers, outputs, logs, approvals, and MCP tools.

Docs

Contributing

Contributions are welcome. See CONTRIBUTING.md for local setup, the first-contribution map, and PR guidelines. Quick local checks from the repo root:

bash
npm run test:apinpm run lint:webnpm run test:webnpm run test:mcp

Security

To report a vulnerability, follow SECURITY.md and report it privately rather than opening a public issue.

License

MIT License (c) 2026 Floom contributors. You may use, copy, modify, merge, publish, distribute, sublicense, and sell copies of Floom, subject to the MIT license notice and warranty disclaimer.

来源:README.md,提交 c992a35

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.6最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分