Kleap MCP Server

Website infrastructure for AI agents via MCP with verified-live guarantee.

Web & Search MIT license Added Sep 18, 2026 Hosted / remote ✓ Verified Nov 8 35 tools

Kleap is a Web & Search MCP (Model Context Protocol) server: Website infrastructure for AI agents via MCP with verified-live guarantee. It is MIT-licensed and available as a hosted endpoint, so it works with no local install. It exposes 35 tools including create_app, modify_app, write_files, edit_files. Listed on MCP Collection since September 2026.

About Kleap

Create, edit, and publish real websites via MCP with a verified-live guarantee. Remote MCP endpoint: https://kleap.co/api/mcp (OAuth). npm: kleap-cli / npx -y kleap-cli.

Kleap tools (35)

Read from the live server on Nov 8, 2026. These are the tools your AI assistant can call once connected.

create_app
Use this when the user wants a complete, hosted website or web app built from a text description (e.g. 'build me a website for X'). Kleap's AI builds AND auto-deploys the whole site; this takes a few minutes (typically 5 to 15 min). Returns
modify_app
Use this when the user wants to change or update an existing website. The AI can overwrite or remove existing content and automatically publishes the result to the live site. This uses Kleap usage. Needs the app_id — if the user named the s
write_files
Write WHOLE files DIRECTLY — YOUR model generates the code, Kleap stores, builds and deploys it as-is. To change something in a file that ALREADY EXISTS, use edit_files instead (read_files → edit_files): it replaces just the lines you name,
edit_files
Change PART of a file without resending it — the counterpart to write_files. Give `old_string` (exact text as in the file today) and `new_string`; Kleap reads, replaces, stores. Nothing else moves. Use it whenever the file exists and only a
generate_image
Put a REAL photo or illustration on the site by describing it — no image bytes to send. Give a vivid `prompt` and a `public/` `path` (e.g. public/hero.jpg); Kleap generates it with Cloudflare FLUX.2 and stores it as a proper binary asset, e
delete_files
Remove pages, components or assets from a site — the counterpart to write_files. Use it when a page should no longer exist: a wrong route, a duplicate, an outdated landing page, an image nobody references. Do NOT overwrite the file with emp
list_app_files
List the source file PATHS of an app (names only, no contents). See the project structure, then read_files to get contents before editing. Astro: src/pages/*.astro, src/data/*.json, src/components/*.astro, public/*.
read_files
Read existing file contents so you can edit them SAFELY instead of rewriting blind (which risks breaking shared components/homepages). Loop: list_app_files → read_files → edit_files (change just the lines that must change) → publish_app; us
list_apps
Use this when the user wants to see all their websites with name, slug, preview URL, and production URL.
get_app
Show a website to the user: its screenshot, name and live address. This is the ONE tool that renders the finished-site card, so call it once after a build or edit has finished and deployed (check_task says deployment_status deployed) — that
seo_audit
Free SEO check of ONE public website URL, on Kleap or not (no app_id, no usage consumed, no AI call). Reads up to 12 pages plus sitemap.xml and robots.txt and checks title, meta description, h1, canonical, viewport, lang, og:image, JSON-LD,
find_app
Resolve a website the user refers to by its ADDRESS — a custom domain ('mysite.ch'), a kleap.io URL ('mysite.kleap.io'), or a slug — to its app_id. Use this FIRST whenever the user names a site by its address instead of an app_id (e.g. 'edi
rename_app
Rename an app's display name. Does NOT change the URL — the live address ({slug}.kleap.io) and any links to it stay intact. (There is no tool to delete the entire app; delete_files removes selected source files.)
get_screenshot
Use this when the user wants to see a visual screenshot of their website. Rate-limited to 1/min per app. The returned image_url is a PNG on the asset host — render it as an image (![preview](image_url)) and nothing else. It is NOT the websi
check_task
Check a create/modify task. Returns quickly with the CURRENT status — report it to the user rather than calling again in the same turn; a build takes 5-15 min, so the answer to 'is it ready?' is usually 'still building, here is the progress
retry_task
Resume a failed or stalled create/modify task from where it stopped — partial files are preserved. Use this when check_task reports 'failed' instead of starting a brand-new create_app. Returns a NEW task_id — poll check_task on that NEW id
get_credits
Use this when the user asks how much usage they have left or about their plan status.
upgrade_plan
Use this when the user wants a paid Kleap plan, runs out of usage, or needs a feature that requires one (custom domain, more usage). Returns an upgrade_url the USER must open and pay — nothing is charged before that, so never say they are s
wake_app
Use this when the user's website preview is sleeping (sandboxes auto-stop after 15 min). Takes ~30-60s to restart.
publish_app
Use this to take a website LIVE at its public URL. Publishing is VERIFIED-LIVE: the app is only reported published once the new version is provably serving — otherwise it reports 'not confirmed live', never a false 'it is online'. Publishin
get_publish_status
Use this to check whether a website is actually published and live. Returns the published state, the live production URL, and — once a publish has run — the PUBLISH REPORT of what Kleap checked on the site it just built: broken_links (exist
search_domains
Search for available domains for a site (e.g. 'mybakery'). Returns available names across TLDs. To buy one, call buy_domain — it returns a checkout link the user pays. Use connect_domain for a domain the user already owns.
check_domain
Check a domain's connection / DNS status for a Kleap app.
connect_domain
Connect a domain the user ALREADY OWNS to a live Kleap app (routing + automatic TLS). The app must be live first — a create_app/modify_app with deployment_status deployed already counts as published, so you do NOT need publish_app first. Th
get_form_submissions
Use this when the user asks who filled out their contact form, or wants to see/export leads from their live site. Returns submissions from any <form> built with KleapForm on the app, newest first. Empty list is normal for a brand new site w
get_analytics
Use this when the user asks about traffic, visitors, or which pages/referrers are performing on their PUBLISHED site. Backed by the same analytics as the Kleap dashboard's Visitors view. Returns zeroed data with configured:false if the app
get_search_console
Use this when the user asks how their site does IN GOOGLE SEARCH — queries they rank for, impressions, clicks, CTR, average position. Real Search Console data from their own property, not an estimate. Returns totals plus top queries and top
connect_search_console
Use this when the user wants to connect (or reconnect) Google Search Console for a site — typically right after get_search_console reported connected:false. Returns a consent_url: give it to the user as a link and ask them to open it and ap
get_database_schema
The app's Kleap Database (Postgres): its tables, row counts and columns. Call it before reading or writing rows. provisioned:false means the app has no database yet — create one with modify_app (describe the data to store).
query_database_rows
Read rows from one table of the app's database. where = exact matches, e.g. {"status":"new"}. Max 500 rows per call; page with offset while has_more is true.
insert_database_rows
Insert up to 500 rows into one table of the app's database. Returns the inserted rows (with generated ids/defaults).
update_database_rows
Update the rows matching where (required, non-empty, exact matches, e.g. {"id":42}) with the values in set. Returns the updated rows.
delete_database_rows
Delete the rows matching where (required, non-empty, exact matches, e.g. {"id":42}). Permanent. Returns how many were deleted.
run_database_sql
Run SQL on the app's database (owner-level, needs database:write), values as $1, $2 in params. Rows capped at 500 / 5 MB. A table left without row-level security is rolled back (RLS_REQUIRED). To just read rows, prefer query_database_rows.
buy_domain
Start buying a domain: returns a Stripe checkout_url (valid 30 min) that the USER must open and pay. Nothing is bought until they complete checkout — give them the link, never say it is purchased. With app_id it is connected to that app aft

How to connect Kleap to Claude, Cursor or VS Code

Kleap runs as a hosted remote MCP server at https://kleap.co/api/mcp. Add that URL to your MCP client's config (Claude Code, Cursor, Windsurf or VS Code) and the tools appear immediately, no install required.

{
  "mcpServers": {
    "kleap-2": {
      "url": "https://kleap.co/api/mcp"
    }
  }
}

Claude Code: claude mcp add --transport http kleap-2 https://kleap.co/api/mcp. VS Code's .vscode/mcp.json uses a servers key instead of mcpServers (see how). Servers that require OAuth or an API key will prompt on first use.

Kleap FAQ

What is Kleap?

Kleap is a Model Context Protocol (MCP) server in the Web & Search category. Website infrastructure for AI agents via MCP with verified-live guarantee. MCP servers expose tools that AI assistants like Claude can call during a conversation.

How do I use Kleap with Claude or Cursor?

Kleap runs as a hosted remote MCP server at https://kleap.co/api/mcp. Add that URL to your MCP client's config (Claude Code, Cursor, Windsurf or VS Code) and the tools appear immediately, no install required.

Is Kleap free to use?

Kleap is published under the MIT license, so the software itself is free to run. Hosted or API-backed servers may have their own usage tiers; check the project homepage.

What tools does Kleap provide?

Kleap exposes 35 MCP tools: create_app, modify_app, write_files, edit_files, generate_image, delete_files, list_app_files, read_files, list_apps, get_app, seo_audit, find_app, and more. This list is read from the live server (last verified Nov 8, 2026).

Is the Kleap MCP server online?

Yes. MCP Collection checks the endpoint every day; it last answered on Nov 8, 2026.

Where is the source code for Kleap?

The source is at github.com/kleaphq/cli.

More Web & Search MCP servers