MCP servercom.floot/floot
Build and publish full-stack web and mobile apps on Floot from any MCP client.
Read more
Build and publish full-stack web and mobile apps on Floot from any MCP client. Building is free.Overview
Score?
UNRATED 0.681
of what a free look can see, on 32 looks
Looks
36
last 5 hr ago
Tools
45
changed 1 day ago
More info
URL
mcp.floot.com/mcp
streamable-http
Says it is
floot 1.0.0
protocol 2025-06-18
In the record since
32 days ago
Among servers18,413 with a card
0median 0.606 · this server 0.681 · highest on record 0.8561
Toolsfrom sha256:388e560dab…79331a · +0 −0 1 day ago
| Tool | Schema |
|---|---|
| add_dependency Add npm packages to the project (validated against Floot's supported set — rejected packages get a supported alternative named; some versions are pinned/substituted). Avoid node-gy |
input · no output |
| apply_patch Apply a V4A patch to a Floot project — create and update multiple files in ONE atomic operation. Format: "*** Begin Patch" envelope with "*** Add File: path" (+ prefixed lines) and |
input · no output |
| cancel_request Withdraw a pending request you created — a credential request from request_external_resource, a custom-domain setup request from publish_app, or an open screenshot job from screens |
input · no output |
| card_upload_asset Internal bridge for the upload card (not for agents — use request_user_upload / upload_asset). phase 'presign' mints the PUT URL for the picked file; phase 'complete' verifies the |
input · no output |
| copy_file Copy one or more items to new names (e.g. {from:'components/Card', to:'components/BigCard'}). Item names without extensions; same type only. Importers of the source are left unchan |
input · no output |
| create_checkpoint Create a NAMED checkpoint — a labeled restore point the user sees in the project's Checkpoints panel and can revert to later. All file/dependency changes since the previous checkpo |
input · no output |
| create_project Create a new Floot project (pre-seeded with the shared component library) and return its id. `initial_prompt` describes the app to build — what it does and for whom — keeping the u |
input · no output |
| delete_file Delete a project file. Deleting an item's main code file (e.g. components/Foo.tsx) removes the whole item including its css/tests; deleting an aux file (e.g. Foo.module.css) only c |
input · no output |
| edit_file Replace old_string with new_string in a project file. old_string must match the current content exactly (including whitespace) and be unique unless replace_all is set. Prefer this |
input · no output |
| execute_sql Run a WRITE SQL statement against the project's Postgres database (the Floot-managed one, or an external Postgres the user connected) — CREATE/ALTER TABLE, INSERT, UPDATE, DELETE, |
input · no output |
| fetch Fetch a search result by id: a project overview ('<projectId>') or a file ('<projectId>:<path>'). For direct access to a known file or project, read_file/list_files give more detai |
input · no output |
| generate_image Generate AI image assets directly into the project. Each image is written to the project's own asset storage and registered in its asset manifest; the tool returns the project-rela |
input · no output |
| get_current_context What the user is looking at RIGHT NOW in their open Floot editor: the active page/component, the preview element they selected (mapped to source file:line), the preview device size |
input · no output |
| get_guides Floot documentation for agents. Call with no arguments to list available guides. Pass `topic` for one guide (e.g. topic:'floot-overview') or `topics` (an array of ids) to fetch sev |
input · no output |
| get_job_status Poll a pending tool call by its jobId. Each poll either returns the final result (succeeded/failed/cancelled), or reports the call as still running — call it again until you get th |
input · no output |
| get_live_payments Look up your LIVE-mode Floot Payments records in Stripe (payments, charges, refunds, customers, subscriptions, invoices…) across all your projects. Lookup only: GET by id or list, |
input · no output |
| get_logs Your FIRST step when debugging any runtime problem — a 500, a failed request, a blank page, or 'it doesn't work' from the user. Call this before theorizing from an error message al |
input · no output |
| get_preview_url Show the user a live preview card and return the preview link. On an EXISTING project this is typically called EARLY, before the first change, so the user watches edits live from t |
input · no output |
| get_publish_status Read-only publish snapshot for a project: published (true/false, with the live URL when published), customDomains (the user's own domains attached to the project — apex and www are |
input · no output |
| list_files List a Floot project's virtual file tree with sizes, plus its dependencies, current version (pass the version to write tools as expected_version), and current project metadata — ti |
input · no output |
| list_projects List your Floot projects (id, name, last-updated, whether an app icon is set), most recently updated first. name_filter is a case-insensitive substring match on the stored name, wh |
input · no output |
| list_resources List the env vars a project's code can use and the resources behind them: (1) resources CONNECTED to the project — usable as process.env.<NAME> in endpoint code now; (2) the owner' |
input · no output |
| navigate_preview Point the user's OPEN Floot preview at a page URL, a component's examples, or a page's examples — use it to SHOW the user what you just built ("here's the new dashboard page", "her |
input · no output |
| provision_resource Provision a Floot-managed backend resource for the project — fully server-side (Floot mints all secrets; no keys to paste). Also seeds the working code for it. Available:
- databas |
input · no output |
| publish_app Publish the app to production — call for the first publish, to publish again after changes the user wants live, and to set up a custom domain. Omit domain and the user gets the pub |
input · no output |
| pull_database_schema Introspect the database and write a typed schema helper the app uses for queries (kysely on current projects; some legacy projects use drizzle or snake_case kysely — the pull match |
input · no output |
| query_database Run a READ-ONLY SQL query against the project's Postgres database (SELECT, EXPLAIN, etc.) — the Floot-managed database, or an external Postgres the user connected to the project. W |
input · no output |
| read_file Read a file from a Floot project (cat -n style). Paths follow the item scheme: components/Name.tsx, components/Name.module.css, helpers/Name.tsx, pages/name.tsx, pages/name.pageLay |
input · no output |
| read_files Read MULTIPLE files from a Floot project in ONE call — much cheaper than repeated read_file (the whole project is loaded once, one round-trip). Prefer this whenever you need severa |
input · no output |
| remove_dependency Remove npm packages from a Floot project's dependency record (record-only; nothing runs). |
input · no output |
| rename_file Rename one or more items and automatically rewrite every file that imports them. Use item names WITHOUT extensions (e.g. {from:'components/OldName', to:'components/NewName'}). Pref |
input · no output |
| request_external_resource Request the USER'S OWN external credential for this project — their OpenAI or Anthropic API key, an external Postgres connection string (ALWAYS type POSTGRES — a Postgres credentia |
input · no output |
| request_user_upload Show the user an inline upload card so they can hand you a file from their device (image/font/audio/…) — it lands in the project's hosted assets and the card gives you the hosted p |
input · no output |
| run_code_in_browser Run a TypeScript snippet inside the RUNNING APP's preview document in the user's open Floot editor (`document`/`window` ARE the live app's DOM — query `document` directly; do NOT l |
input · no output |
| run_code_in_vm Run a Node.js snippet on the project's compute VM (headless — no browser needed). The project's npm dependencies are importable; network access works, so you can call the project's |
input · no output |
| run_tests Run the project's Jasmine spec files (helpers/*.spec.tsx) headlessly on the project VM (jsdom — no browser needed). Frontend AND backend code is testable: specs may render componen |
input · no output |
| screenshot_preview Capture a screenshot of the user app. Call it whenever you want to SEE what the app currently looks like (layout, styling, rendered state) or want to debug the app. By default it s |
input · no output |
| search Search your Floot projects and their code. Returns result ids usable with fetch. For richer options, list_projects enumerates projects and search_code does code-level search. |
input · no output |
| search_code Search a Floot project's files (string or regex) with optional glob filters (e.g. ['components/*', 'endpoints/**']). Returns file:line excerpts plus filename matches; capped at 40 |
input · no output |
| typecheck Typecheck the project (incremental tsc on the project VM). Type errors don't block the app from running. |
input · no output |
| unpublish_app Take the published app offline and release its subdomain — destructive, confirm with the user first. Details: get_guides('publishing'). |
input · no output |
| update_project_metadata Update project settings (current values appear at the top of list_files). Keys: title (2-100 chars), description, iconUrl (the app's icon/logo: favicon, home-screen icon and native |
input · no output |
| upload_asset Upload a binary asset (image, font, audio, …) to the project's hosted storage. This uploads bytes you actually hold — a file you generated, downloaded, or read yourself. Chat attac |
input · no output |
| view_annotation View a screenshot annotation the user drew on the app preview (annotationId comes from get_current_context). Returns the annotated image — the user's drawings/text point at what th |
input · no output |
| write_file Create or fully overwrite a file in a Floot project. Content is written literally. Paths must follow the item scheme (see read_file); invalid paths are rejected with the rule they |
input · no output |
Verify it yourself
npx teppi-check https://mcp.floot.com/mcpcurl -s https://api.teppi.xyz/v1/trust/mcp/mcs_01M1FZ26E52R5GAH0Q0Z6TJJB5