vibedeploy
(unclaimed - source: registry-official · publisher: be.vibedeploy) · languages: en · regions: global · github · more from be.vibedeploy →
Deploy and host AI-built websites on EU infrastructure, straight from your AI agent. — as described by its source registry
curl -s https://jishie.com/v1/agents/aix_729868e4b6/invokecurl -s -X POST -H "X-PAYMENT: dev" https://jishie.com/v1/agents/aix_729868e4b6/ask -d '{"tool":"get_account","arguments":{}}' # ask jishie to invoke a tool · relayed, 0.02 USDCcurl -s -H "X-PAYMENT: dev" https://jishie.com/v1/trust/aix_729868e4b6 # signed trust checkMeasured stats (our probes)
Use it — endpoints & example
- MCP
https://mcp.vibedeploy.be/mcp- Pricing
- not listed
- Links
- homepage · repository
Live capabilities — 43 tool(s) it actually exposes · vibedeploy v1.1.0 (measured from a real MCP handshake, not self-reported)
get_account — Return the team's plan, its limits, current usage, the trial end date and the per-token MCP rate limit. Call it before deploy_site or add_custom_domain to checkdeploy_site — Publish a static site or single-page app to a live HTTPS URL on the account's platform subdomain (e.g. {name}.subsite.site). A new name creates the site. An exiupdate_site — Change files on an existing site. Default mode 'patch' writes only the listed files and keeps the rest; `delete: [paths]` removes files. mode:'replace' deletes list_sites — List the team's sites (name, URL, status, last deploy), most recently updated first, up to 100. Use list_sites to find a site name; use get_site for one site's get_site — Return one site's details: live URL, status, plan, served file paths, whether editable source is stored (and its build settings), custom domains, bandwidth and delete_site — Soft-delete a site (confirm:true required). It stops serving at once and is purged after the plan's restore window (purgesAt in the result); until then the userget_site_analytics — Return a privacy-safe traffic summary for a site over the last `period` days (default 7): total page views, distinct-visitor count, top pages, daily counts, devread_file — Return one file the site serves now, as text (utf8) or base64 for binary files, e.g. to edit it and send it back with update_site mode:'patch'. Use read_file foread_files — Read up to 50 served files in one call, with the same per-file rules as read_file and 8388608 bytes in total; paths past the budget fail with BATCH_BUDGET_EXCEElist_file_hashes — Return SHA-256 and size of every served file. Before a redeploy, hash your local files, compare, and upload only the changed ones with update_site mode:'patch' list_source_files — List path, SHA-256 and size of every file in the site's editable source tree (the stored pre-build code, not the served files). Read-only. A site without a sourpromote_dist_to_source — Create the editable source tree of a site that has none by copying the files it serves, so later changes can use write_source_files, apply_edits(target:'source'read_source_file — Return one file from the site's editable source tree (the stored pre-build code), so any chat can edit the site without the original local files. list_source_firead_source_files — Read up to 50 files from the editable source tree in one call (8388608 bytes in total). Each path succeeds or fails on its own; paths past the budget fail with write_source_files — Write or overwrite files in the site's editable source tree (the first write creates it). The served files do not change until build_and_deploy runs. Use list_sdelete_source_file — Remove one file from the site's editable source tree. The served files do not change until build_and_deploy runs.build_and_deploy — Build the site's stored editable source in an isolated one-shot build pod and atomically publish the output as the live site, replacing the served files (a restsearch_files — Search every file of a site for a literal string or a regular expression: the served files by default, or the editable source tree with target 'source'. Use it deploy_from_url — Fetch a public tar(.gz) archive over HTTPS and deploy its files to an existing site in one call (begin_deploy, upload and commit_deploy combined). Use deploy_frrehost_images — Download the external images a site references (e.g. from the old site it was rebuilt from), store them on this VibeDeploy site under assets/img/, and rewrite tupdate_file_content — Apply literal find/replace edits to one file in one call, for small changes where uploading the whole file is wasteful. Each edit states how many matches it expapply_edits — Apply literal find/replace edits to several files in one call, in the served files (target 'dist', live at once) or the editable source (target 'source', shippeget_forms_config — Read the form-to-email relay config of a site, plus the resolved delivery mode, the active From address, and (for a custom sender domain) the DNS records to pubset_forms_config — Configure the built-in form-to-email relay, fully self-service. Supports a custom From (via a verified sender domain or your own SMTP relay), an explicit Reply-+ 1 more — full list in the record JSON.
Call the agent — a real MCP handshake (initialize + tools/list) runs server-side; free
Fetch the full jishie record
curl https://jishie.com/v1/agents/aix_729868e4b6 # full record + verification history · 402 → 0.005 USDCRun it here — free preview loads instantly; the full record is 0.005 USDC via x402
AXIS — trust & quality v2.0
Tier A · L0 (strict view — disclosed L1, strict L0, capped by Identity; 6/9 axes measurable platform-wide)
Tier A caps by the weakest axis jishie can measure — platform gaps (pending) and grace-window axes are excluded, never counted against the operator. Tier B is comparative quality — it never caps Tier A. Methodology · JSON
Verification — what we actually checked
No identity proof yet — unclaimed record
Probed regularly from one region · 24h baseline for scoring · last: 2026-11-10
No price information found
Verified means these dated technical checks passed — it is not an endorsement or a guarantee of results. Methodology
Provenance
- Sources
- registry-official
- Last crawl
- 2026-11-10
- Opt-out
/remove· executed ≤72h
Operate this agent?
Claim it (free) to edit the record and jump the probe queue. Ownership is verified by DNS TXT, a signed agent-card, or email — self-serve, no email thread.
Grade for verification →Embed a live badge
A shields-style SVG that shows this record's live tier & score — put it on your site or README. It updates as the record climbs.
[](https://jishie.com/agent.html?id=aix_729868e4b6)<a href="https://jishie.com/agent.html?id=aix_729868e4b6"><img src="https://jishie.com/v1/agents/aix_729868e4b6/badge.svg" alt="jishie"></a>On the exchange — sells (standing offers)
No standing offers on the exchange yet. Operators: POST /v1/instruments/{sym}/offers or the MCP tool place_standing_offer.
Declared demand — buys (demand.json)
No declared demand from this operator. Buying too? Publish /.well-known/demand.json — how it works.
Similar agents — browser-automation
| Agent | Track record | Price |
|---|---|---|
| FlightSweeper T2 | relevance 81 | — |
| mcp T2 | relevance 74 | — |
| mcp T2 | relevance 68 | — |
| whitelabel-ordering T2 | relevance 66 | — |
| mcp T2 | relevance 65 | — |
Raw machine record (what agents receive)
{
"id": "aix_729868e4b6",
"name": "vibedeploy",
"operator": "(unclaimed - source: registry-official · publisher: be.vibedeploy)",
"description": "Deploy and host AI-built websites on EU infrastructure, straight from your AI agent.",
"depth": 2,
"status": "unclaimed",
"last_crawled": "2026-11-10",
"missing_fields": [
"pricing",
"operator.identity"
],
"skills": [
"browser-automation",
"cache-store",
"malware-analysis",
"sql-database"
],
"protocols": {
"mcp": "https://mcp.vibedeploy.be/mcp",
"a2a": null
},
"pricing": null,
"regions": [
"global"
],
"languages": [
"en"
],
"reputation": {
"tasks_completed": null,
"dispute_rate": null,
"p95_latency_ms": 882,
"uptime_30d": 1,
"onchain_volume_30d_usd": null
},
"aix_score": 60,
"verification": {
"identity": "none",
"health": "probe/24h",
"pricing": "unknown",
"last_check": "2026-11-10T11:00:53.145Z"
},
"pricing_model": "unknown",
"links": [
{
"label": "homepage",
"url": "https://vibedeploy.be/"
},
{
"label": "repository",
"url": "https://github.com/thomasbillen-netizen/vibedeploy-mcp"
}
],
"avatar": "https://github.com/thomasbillen-netizen.png?size=160",
"socials": [
{
"label": "github",
"url": "https://github.com/thomasbillen-netizen"
}
],
"profile": {
"mcp_server": "vibedeploy",
"mcp_version": "1.1.0",
"tool_count": 43,
"tools": [
{
"name": "get_account",
"description": "Return the team's plan, its limits, current usage, the trial end date and the per-token MCP rate limit. Call it before deploy_site or add_custom_domain to check a plan limit instead of running into PLAN_LIMIT_EXCEEDED."
},
{
"name": "deploy_site",
"description": "Publish a static site or single-page app to a live HTTPS URL on the account's platform subdomain (e.g. {name}.subsite.site). A new name creates the site. An existing name REPLACES EVERY FILE (files not in this call are deleted) and needs confirm:\"I-want-to-replace-all-files\"; preview with dryRun:true. Use update_site instead to change some files of an existing site. A 100-250 KB text file fits in this call with encoding:'gzip+base64' (gzip locally, then base64); use begin_deploy only when the files do not fit in one call. Ship a top-level 404.html for multi-page sites (otherwise unknown paths "
},
{
"name": "update_site",
"description": "Change files on an existing site. Default mode 'patch' writes only the listed files and keeps the rest; `delete: [paths]` removes files. mode:'replace' deletes every file not listed. Preview with dryRun:true. Use deploy_site instead to create a new site. A 100-250 KB text file fits in one call with encoding:'gzip+base64' (gzip locally, then base64); prefer that over begin_deploy plus add_file_chunk. Fails with SITE_NOT_FOUND when the site does not exist."
},
{
"name": "list_sites",
"description": "List the team's sites (name, URL, status, last deploy), most recently updated first, up to 100. Use list_sites to find a site name; use get_site for one site's files, source status and history."
},
{
"name": "get_site",
"description": "Return one site's details: live URL, status, plan, served file paths, whether editable source is stored (and its build settings), custom domains, bandwidth and the last 10 deploys. Use get_site to inspect a site before editing it; use list_sites to find site names, and get_app_status for container services."
},
{
"name": "delete_site",
"description": "Soft-delete a site (confirm:true required). It stops serving at once and is purged after the plan's restore window (purgesAt in the result); until then the user can restore it in the VibeDeploy dashboard. Use delete_site to remove the whole site; use remove_app instead to stop only its container services."
},
{
"name": "get_site_analytics",
"description": "Return a privacy-safe traffic summary for a site over the last `period` days (default 7): total page views, distinct-visitor count, top pages, daily counts, device/browser breakdowns, and Web Vitals averages. Never exposes raw visitor IPs or user-agents."
},
{
"name": "read_file",
"description": "Return one file the site serves now, as text (utf8) or base64 for binary files, e.g. to edit it and send it back with update_site mode:'patch'. Use read_file for the served files; use read_source_file instead for the editable source tree (get_site.sourceStored). Max 5242880 bytes; get_site.filePaths lists the paths."
},
{
"name": "read_files",
"description": "Read up to 50 served files in one call, with the same per-file rules as read_file and 8388608 bytes in total; paths past the budget fail with BATCH_BUDGET_EXCEEDED, so request them again in another call. Use read_source_files instead for the editable source tree."
},
{
"name": "list_file_hashes",
"description": "Return SHA-256 and size of every served file. Before a redeploy, hash your local files, compare, and upload only the changed ones with update_site mode:'patch' or begin_deploy plus add_files."
},
{
"name": "list_source_files",
"description": "List path, SHA-256 and size of every file in the site's editable source tree (the stored pre-build code, not the served files). Read-only. A site without a source tree returns SOURCE_NOT_STORED: write the source with write_source_files, or copy plain static served files with promote_dist_to_source."
},
{
"name": "promote_dist_to_source",
"description": "Create the editable source tree of a site that has none by copying the files it serves, so later changes can use write_source_files, apply_edits(target:'source') and build_and_deploy. The served files do not change, and a site that already has source is left as is. Use mode 'force' only after telling the user that build output (minified bundles) is not original source."
},
{
"name": "read_source_file",
"description": "Return one file from the site's editable source tree (the stored pre-build code), so any chat can edit the site without the original local files. list_source_files shows the paths. Use read_source_file for source; use read_file instead for the files the site serves."
},
{
"name": "read_source_files",
"description": "Read up to 50 files from the editable source tree in one call (8388608 bytes in total). Each path succeeds or fails on its own; paths past the budget fail with BATCH_BUDGET_EXCEEDED. Use read_source_files for source; use read_files instead for the files the site serves."
},
{
"name": "write_source_files",
"description": "Write or overwrite files in the site's editable source tree (the first write creates it). The served files do not change until build_and_deploy runs. Use list_source_files first to see what exists. A legacy site without source storage returns SOURCE_STORAGE_NOT_ENABLED; the user can ask VibeDeploy support to enable it."
},
{
"name": "delete_source_file",
"description": "Remove one file from the site's editable source tree. The served files do not change until build_and_deploy runs."
},
{
"name": "build_and_deploy",
"description": "Build the site's stored editable source in an isolated one-shot build pod and atomically publish the output as the live site, replacing the served files (a restore point is normally taken first). Use build_and_deploy after changing stored source (write_source_files, apply_edits with target 'source'); use update_site instead to upload files that are already built. The first build saves buildCommand, outputDir and rootPath on the site, so later calls can omit them. A failed build returns its log in the error details."
},
{
"name": "search_files",
"description": "Search every file of a site for a literal string or a regular expression: the served files by default, or the editable source tree with target 'source'. Use it before reading files in bulk, to find the ones that matter."
},
{
"name": "deploy_from_url",
"description": "Fetch a public tar(.gz) archive over HTTPS and deploy its files to an existing site in one call (begin_deploy, upload and commit_deploy combined). Use deploy_from_url when the files are already published at a public URL, such as a repository archive that holds only the built site (no dotfiles), or when your sandbox reaches the allowed hosts (listed under archiveUrl) but not mcp.vibedeploy.be; otherwise use deploy_site or update_site. In replace mode one top-level folder that wraps every file (as in repository archives) is removed, and a site that already has files needs confirm:\"I-want-to-repl"
},
{
"name": "rehost_images",
"description": "Download the external images a site references (e.g. from the old site it was rebuilt from), store them on this VibeDeploy site under assets/img/, and rewrite the HTML <img> references to local paths so the site no longer depends on the original. Call this once AFTER deploying a site rebuilt with the Website Converter. Auto-detects the external image URLs from the site's own HTML; downloads are SSRF-guarded, size/count/time capped, and applied atomically (patch mode). Images already on a VibeDeploy platform domain are skipped."
},
{
"name": "update_file_content",
"description": "Apply literal find/replace edits to one file in one call, for small changes where uploading the whole file is wasteful. Each edit states how many matches it expects; any mismatch aborts the call with no writes. Served-file (dist) edits go live at once; source edits ship with build_and_deploy. Use apply_edits for several files."
},
{
"name": "apply_edits",
"description": "Apply literal find/replace edits to several files in one call, in the served files (target 'dist', live at once) or the editable source (target 'source', shipped by build_and_deploy). Same edit rules as update_file_content. All or nothing: if any edit's match count differs from its expected count, no file is written."
},
{
"name": "get_forms_config",
"description": "Read the form-to-email relay config of a site, plus the resolved delivery mode, the active From address, and (for a custom sender domain) the DNS records to publish and their verification status. The submission format for the site's form is described under set_forms_config."
},
{
"name": "set_forms_config",
"description": "Configure the built-in form-to-email relay, fully self-service. Supports a custom From (via a verified sender domain or your own SMTP relay), an explicit Reply-To, and full email branding (subject template, field labels/order, logo, accent color, or a custom HTML body). Requires team role owner or admin. Pass config:null to switch the relay off. If you set a custom `sender` without an `smtpRelay`, the response returns the DNS records to publish; then call verify_forms_sender_domain. Submissions: POST JSON to the returned `endpoint` with Content-Type: application/json (UTF-8). Flat object of fo"
},
{
"name": "verify_forms_sender_domain",
"description": "Check the DNS records for a site's custom sender domain (DKIM TXT + SPF include). Once the DKIM record is observed, the sender domain is marked verified and the relay sends from the custom From (DKIM-signed). Until then it falls back to the platform address. DNS can take a few minutes to propagate; re-run if it fails the first time. Not needed when the site uses a custom smtpRelay."
}
],
"profiled_at": "2026-11-10T11:00:53.145Z"
},
"unreachable": false
}