Server providing Argo CD integration for MCP clients.
Vibedeploy is installed from its publisher's own source and answers where it runs, so this marketplace is not in the path of a single call. There is no address here to send one to, and a panel that pretended otherwise would be showing you an answer we made up. Install it and call it from your own client — the Installation tab has the entry for each one.
What it does
Deploy and host AI-built websites on EU infrastructure, straight from your AI agent.
Quickstart
# 1 — add it to Claude Code
claude mcp add --scope user --transport http vibedeploy-mcp https://mcp.vibedeploy.be/mcp
# 2 — ask your agent for something these tools do
# get_account, deploy_site, update_site and 36 more
Vibedeploy costs nothing on mcprush: there is no plan to choose here, no cap to set and nothing mcprush can bill you for.
Collected from a public index. Nobody has claimed this account, so nothing here was written by its author — claim it if it is yours.
Where are you running it?
Every route below installs the same thing and ends at the same approval screen. Nothing here runs on your machine and nothing runs on ours: this server answers at its publisher’s own address, and what you install is the connection straight to it.
This is a public server: it answers at its publisher’s own address and this marketplace is not in the path. Claude Code registers it in one command; --scope user makes it available in every project. The transport below is http, as the publisher's own manifest declares it.
claude mcp add --scope user --transport http vibedeploy-mcp https://mcp.vibedeploy.be/mcpReconnect, or start a new session, and the tools appear in the model’s tool list.
One config entry pointing straight at the publisher’s own address — this marketplace is not in the path, and nothing from this listing executes on your machine.
39 tools, with what each one reads, writes and reaches shown before you agree — the same list on every route above. Read the tool surface.
Tool surface
What the model actually sees. Descriptions are diffed on every release — see version history.
Return the team's plan, its limits, and current usage. Use this BEFORE deploy_site or add_custom_domain to know whether a deploy would trip a plan limit, instead of provoking PLAN_LIMIT_EXCEEDED. Also returns the per-token MCP rate-limit ceiling (live remaining is in X-RateLimit-Remaining response header).
No parameter schema on file.
Publish a website to a live URL. Deploy a static site or single-page app you built (with AI or by hand) to your platform subdomain (e.g. {name}.vibedeploy.be or {name}.vibedeploy.eu) with automatic SSL, and optionally a custom domain. The fastest way to get a localhost project or an AI-generated site online. DESTRUCTIVE on existing sites: replaces every file on the named site with the supplied set
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | yes | Site subdomain. Lowercase, 3-63 chars, alphanumeric + hyphens. Must not start or end with a hyphen. |
| files | yes | Either an array of {path, content, encoding?} entries OR a path->content map. Total payload <= 500 MB. | |
| confirm | string | no | Required when the named site already exists. Pass exactly "I-want-to-replace-all-files" to acknowledge that every existing file will be deleted and replaced with this new fileset. Omit on first deploy |
| dryRun | boolean | no | If true, validate input + introspect what would change but don't write or delete. Returns the same shape with dryRun: true and deletedFiles showing what *would* be removed. Strongly recommended be |
Patch or replace files on an existing site. Defaults to patch mode: only the listed files change; everything else stays. Pass mode:'replace' to wipe-and-replace the whole site (the legacy behaviour, surfaced explicitly so it can't happen by accident). Use delete: [paths] in patch mode to remove specific files without wiping the rest. Use dryRun: true to preview the diff before committing. LARG
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | Site name (preferred). |
| siteId | string | no | Site id (alternative to name). |
| files | no | Files to write. Array form [{path, content, encoding?}] (preferred) supports binary via encoding:'base64'; map form {path: content} is utf8-only. <= 500 MB total. Optional when delete is provide | |
| mode | string | no | patch (default): write only the listed files; everything else stays. replace: delete all existing files and write only the listed ones. Use replace only when you genuinely want to throw away the rest |
| delete | array | no | Patch-mode only: site-relative paths to remove from the pod. Files not in this list are kept. Reported back in deletedFiles listing only entries that actually existed. Combine with files to atomic |
| dryRun | boolean | no | If true, validate input + introspect what would change but don't write or delete. Returns the same shape with dryRun: true and deletedFiles showing what *would* be removed. Use this before any des |
List sites for the team this connection belongs to.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| includeDeleted | boolean | no | If true, include soft-deleted sites still in their plan-specific recovery window (status: 'deleted'). Defaults to false: deleted sites can't accept deploys, so an agent rarely wants them in a working |
Return name, url, plan, last deploy time, and recent deploy history.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | — |
| siteId | string | no | — |
Soft-delete a site. confirm=true is required. The site moves to status 'deleted' immediately (its hostname is freed and it stops serving), and is fully purged after the team's recovery window by a sweeper. Use this for the normal 'remove this from my dashboard' flow. The response field 'accepted' is true when the soft-delete is recorded; the response also includes 'purgesAt' so you can tell the us
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | — |
| siteId | string | no | — |
| confirm | boolean | yes | Must be exactly true to actually delete the site. |
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.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | Site name. Provide this or siteId. |
| siteId | string | no | Site id. Provide this or name. |
| period | integer | no | Number of days to aggregate over (1-90). Defaults to 7. |
Return the bytes of one file currently served by the site. Use this to inspect or edit existing content (call read_file → modify → update_site mode:'patch') so a new chat can iterate on a site without re-uploading. Files larger than 5242880 bytes can't be read in one call. Use list of paths from get_site.filePaths to discover what's available.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | Site name (subdomain) or custom domain. Same lookup rules as get_site. |
| siteId | string | no | Alternative to name. One of name|siteId is required. |
| path | string | yes | Site-relative path of the file to read (e.g. 'index.html', 'assets/main.css'). No leading slash, no '..'. |
| maxBytes | integer | no | Per-file size cap. Default 1048576, hard max 5242880. If the file is larger, the call fails with FILE_TOO_LARGE rather than returning truncated bytes — splitting source mid-token would corrupt downstr |
Batched version of read_file. Pass up to 50 paths; each is fetched independently with the same per-file rules as read_file. The whole batch is capped at 8388608 bytes total — once that's exhausted, remaining paths fail with BATCH_BUDGET_EXCEEDED so the agent can re-request them in another call.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | — |
| siteId | string | no | — |
| paths | array | yes | Site-relative paths to read (1..50). Order is preserved in the response. |
| maxBytesPerFile | integer | no | Per-file cap. Default 1048576, hard max 5242880. |
Return SHA-256 + size for every file currently served. Use BEFORE re-deploying to skip files whose content hasn't changed: hash your local files, diff against this list, and only ship the differences via update_site mode:'patch' or begin_deploy → add_files. For SPAs with content-hashed bundle names this typically reduces a full-site redeploy to a handful of files.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | Site name or custom domain. Same lookup rules as get_site. |
| siteId | string | no | — |
Return SHA-256 + size for every file in the site's editable source tree (the platform's copy of the pre-build code, not the served dist). Use BEFORE editing so you know which paths exist and which haven't changed since the last build. autoPromote:true will mirror the served dist into source for static-only sites whose source tree is empty (does nothing if the dist looks built).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | — |
| siteId | string | no | — |
| autoPromote | boolean | no | If true and the site has no source tree yet but its dist looks static, copy dist → source on the fly. Default: false. |
| forcePromote | boolean | no | If true, mirror dist → source EVEN when dist looks built (e.g. minified Vite output). Use when the original source isn't recoverable and you're willing to edit the build artefact directly. Sets manife |
Return the bytes of one source file (the platform's editable copy of the pre-build code), letting an AI in any future chat fetch and edit content without needing the original local files. Use list_source_files first to discover paths. For the served dist, use read_file instead.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | — |
| siteId | string | no | — |
| path | string | yes | Site-relative path inside the source tree, e.g. 'src/App.tsx'. |
| maxBytes | integer | no | Per-file size cap. Default 1048576, hard max 5242880. |
Batched read across the editable source tree (up to 50 paths). Each entry is independent: a missing/oversized file fails its own slot but doesn't abort the batch. Cumulative cap 8388608 bytes; remainder fails with BATCH_BUDGET_EXCEEDED.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | — |
| siteId | string | no | — |
| paths | array | yes | — |
| maxBytesPerFile | integer | no | — |
Stage edits to a site's editable source tree (not the live dist). Use list_source_files first to discover what's there. The dist is unchanged until you re-deploy via update_site or run build_and_deploy. Sites have source storage enabled by default; if a legacy site doesn't, the call fails with SOURCE_STORAGE_NOT_ENABLED and the user should contact VibeDeploy support to enable it.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | — |
| siteId | string | no | — |
| files | array | yes | Files to write into the source tree. Same wire shape as add_files. Re-writing a path overwrites the previous source. Per-file cap 5 MB; per-call cap 50 MB; max 200 files per call. |
Remove one file from the site's editable source tree. The served dist is unchanged.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | — |
| siteId | string | no | — |
| path | string | yes | Source-relative path to delete. |
Run a build inside a hardened one-shot pod against the site's editable source tree (write source first via write_source_files / list_source_files autoPromote), then atomically swap the build output into the live dist. Reuses the same build pod the GitProject git-deploy flow uses, so the same isolation guarantees apply: no SA token, no DB/Vault reach, NetworkPolicy-restricted egress. The first run
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | — |
| siteId | string | no | — |
| buildCommand | string | no | Override for the build script's npm run build step (e.g. 'npm run build:prod' or 'pnpm vite build'). If omitted, uses the manifest stored on the site, then falls back to 'npm run build'. |
| outputDir | string | no | Override for which directory to ship as the new dist. If omitted, uses the manifest, then auto-detects (dist > build > out > public). |
| rootPath | string | no | Subdirectory inside the source tree where package.json lives. Empty string = source root. Useful for monorepos. |
| saveManifest | boolean | no | If true (default), persists the merged manifest back onto the site so future builds default to these settings. Set false to do a one-off build without changing the saved manifest. |
Search for a literal string or basic regex across all files in either the served dist or the editable source tree. Use this BEFORE batch-reading files to find candidates — saves the 'read 14 batches just to find which 3 files matter' round trip. Pass target: "source" to search the editable tree (requires Site.sourceStored=true).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | — |
| siteId | string | no | — |
| pattern | string | yes | Pattern to search for. Treated literal by default; pass regex:true to use as a basic regex (BusyBox grep BRE — no PCRE features). |
| target | string | no | Where to search. 'dist' (default) searches the served files. 'source' searches the editable source tree (requires Site.sourceStored=true). |
| regex | boolean | no | When true, the pattern is interpreted as a basic regular expression. Default: false (literal substring match). |
| caseInsensitive | boolean | no | Default: false. When true, adds -i to grep. |
| glob | string | no | Filename glob filter, e.g. '*.js' or '*.{js,html}'. Applied via find before grep so we don't read non-matching files. |
| maxMatches | integer | no | Cap on returned matches. Default 200, hard max 1000. Truncation is reported via budgetExceeded. |
Publish a website to a live URL from a public archive link. Point this at a tar(.gz) archive on github / gist / S3 and the server fetches and deploys it, no upload from your side. Server-side fetch of a tar(.gz) archive from a public HTTPS URL, then deploy its contents. Sidesteps the case where your code-execution sandbox can reach github / gist / S3 etc. but not mcp.vibedeploy.be's upload endpoin
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | yes | Site name to deploy to. |
| archiveUrl | string | yes | Public HTTPS URL of a tar(.gz) archive. The server fetches it (max 100 MB, 60s timeout), parses the tarball, and deploys its files. Allowed hosts: github.com / raw.githubusercontent.com / gist.github. |
| mode | string | yes | How the archive's files apply: replace wipes the live dist; patch merges them in. |
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 SS
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | yes | Site name (subdomain) whose external images should be downloaded and rehosted locally. |
Apply one or more literal find/replace edits to a single file on the site, in one tool call. Designed for tiny edits where uploading the full file would be wasteful (one nav-button reference, one encoding fix, one env var bump). Each edit must specify how many matches it expects; mismatches abort the whole call with NO writes. For dist edits the change goes live immediately; for source edits you s
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | yes | Site name. |
| path | string | yes | File-relative path inside the chosen target tree. |
| target | string | no | Which tree to edit. 'dist' (default) edits the served file directly — visitors see the change immediately. 'source' edits the editable source tree; you'll need build_and_deploy (or it short-circuits v |
| edits | array | yes | Ordered list of edits to apply atomically. Each is {find, replace, count?}. If any edit's match count doesn't equal its expected count, the whole call aborts with no writes. |
Apply find/replace edits across MANY files in one tool call. Batch sibling of update_file_content. Per-file edit semantics identical (count: 1 default, -1 = all, positive int asserts exact count). Whole call is atomic across files: validation runs first, writes only proceed if every edit's count check passes.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | yes | — |
| target | string | no | Tree to edit, dist (default) or source. Same tree applies to every file in this call. |
| files | array | yes | Files + edits to apply. Up to 25 files / 200 total edits per call. All-or-nothing: if any edit's match count differs from its expected count, NOTHING is written. |
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. Submissions: POST JSON to the returned endpoint with Content-Type: application/json (UTF-8). Flat object of form fields (strings/numbers/booleans; checkbox groups may be arrays of strings, joined with '
| Parameter | Type | Required | Notes |
|---|---|---|---|
| siteName | string | yes | The site whose forms-relay config to read. |
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,
| Parameter | Type | Required | Notes |
|---|---|---|---|
| siteName | string | yes | The site to configure. |
| config | yes | Full config to store (replaces existing). Pass null to disable and clear. |
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.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| siteName | string | yes | The site whose custom sender domain to (re)check. |
Start attaching a user-owned domain to an existing site. Returns a TXT record the user must add at their DNS provider. Idempotent: calling twice with the same (siteName, domain) returns the existing record instead of creating a duplicate. After the TXT is published (typically within minutes; up to 24h), call verify_custom_domain with the returned recordId. The site itself must already exist on a p
| Parameter | Type | Required | Notes |
|---|---|---|---|
| siteName | string | yes | The VibeDeploy site name to attach the domain to (e.g. 'tester'). |
| domain | string | yes | The user-owned hostname to attach (e.g. 'tester.subsite.site'). Must be a valid FQDN. |
Check the TXT record the user added at step 1 and, if found, attach the domain to the site's ingress. If verification fails, the most common cause is DNS propagation delay; wait a few minutes and try again. Once verified, the domain serves the site immediately (HTTPS issues automatically within ~30s).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| siteName | string | yes | The site the domain was attached to. |
| recordId | string | yes | The recordId returned by add_custom_domain. |
Remove a custom domain from a site. The site itself is unaffected; only the custom hostname is detached. The {name}.vibedeploy.be subdomain keeps serving the site.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| siteName | string | yes | The site to detach the domain from. |
| domain | string | no | The custom domain to remove (e.g. 'tester.subsite.site'). Provide this OR recordId. |
| recordId | string | no | The recordId returned by add_custom_domain. Provide this OR domain. |
Return all custom domains attached to a site. Each entry has a recordId you can pass to verify_custom_domain or remove_custom_domain.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| siteName | string | yes | The site whose custom domains to list. |
Read the DNS records VibeDeploy tracks for a site (the records it created/manages on your behalf), oldest first. Returns each record's host, type, and value. Any team member, including viewers, can read DNS records. This tool is read-only and does NOT create, change, or delete any DNS record.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | Site name to look up DNS records for. |
| siteId | string | no | Site id to look up DNS records for. Provide name or siteId. |
Check whether a domain can be registered and get an INDICATIVE retail price. IMPORTANT: this is a read-only lookup — it does NOT buy, register, reserve, or pay for any domain, and it changes nothing. The returned price is GROSS (includes 21% VAT) and indicative only. Set alternatives:true to also check the same name across other common TLDs (be, com, net, eu, nl, io, dev, app). Requires a valid te
| Parameter | Type | Required | Notes |
|---|---|---|---|
| domain | string | yes | The domain to check, e.g. "example.com". |
| alternatives | boolean | no | When true, also check the same second-level name across a canonical TLD set (be, com, net, eu, nl, io, dev, app) and return each one's availability + indicative price. |
Opens a staging session for a multi-call deploy. Use when the site is too large to fit in a single deploy_site/update_site call. Pair with add_files (one or more times) OR a single tarball upload to the returned uploadUrl, then commit_deploy. Active session limit per token: 5. Default TTL: 1 hour.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | yes | Site name to deploy to. Must already exist; multi-call sessions don't auto-create sites — use deploy_site for that, or call this against an existing site. |
| mode | string | yes | How commit_deploy will apply the staged files. 'replace' wipes the live site and atomic-renames the staged set into place. 'patch' layers staged files on top of the live site (kept files = live + stag |
Append files to an open staging session. Call as many times as needed; commit_deploy applies them all at once. Validates path/extension/encoding on every call so a bad file fails fast. Same 500 MB cap as single-call deploys, but cumulative across the session. LARGE TEXT FILES: a file that looks too big to inline (100-250 KB of HTML/CSS/JS) usually still fits in ONE call — gzip it locally, base64 t
| Parameter | Type | Required | Notes |
|---|---|---|---|
| deployId | string | yes | Session id returned by begin_deploy. |
| files | yes | Files to append to the staging scratch dir. Same wire shape as deploy_site/update_site — array form supports binary via encoding:'base64'; map form is utf8-only. Re-adding a path overwrites the previo |
Stream a single file across multiple calls when its content exceeds the per-MCP-call output budget. LAST RESORT — try these first: (1) add_files with encoding:'gzip+base64' fits ~250 KB of text source in ONE call (gzip locally, base64, send — no chunking, no ordering hazards); (2) begin_deploy's uploadUrl takes a 100 MB tarball in one HTTP POST if your sandbox can reach mcp.vibedeploy.be; (3) depl
| Parameter | Type | Required | Notes |
|---|---|---|---|
| deployId | string | yes | Session id returned by begin_deploy. |
| path | string | yes | Target path inside the site root, e.g. 'portaal-admin.html'. Same path validation as add_files. |
| content | string | yes | This chunk's bytes. Either raw UTF-8 (default) or base64-encoded — set encoding accordingly. PRACTICAL CHUNK SIZE: bounded by your LLM client's tool-output token budget, NOT by VibeDeploy's server. Em |
| encoding | string | no | utf8 (default), base64 (binary files), or gzip+base64 (compress this chunk's bytes locally first; server gunzips before append). Encoding is per-chunk — you can mix across chunks of the same file (e.g |
| isFirst | boolean | yes | True on the FIRST chunk of a file. Truncates any existing scratch entry at this path and creates parent directories. Subsequent chunks must set false. |
| isLast | boolean | yes | True on the FINAL chunk. Triggers an assembled-size stat and refreshes session file count. Mid-stream chunks set false. |
| expectedByteOffset | integer | no | Optional alignment check. The byte offset where THIS chunk should start in the assembled file: 0 for isFirst, otherwise the sum of all prior chunks' decoded bytes for this path. If the server's actual |
Atomically apply a staging session's files to the live site. Runs preflight + secret/malware scan against the complete staged set; on failure the session stays open and can be re-attempted or aborted. For replace-mode against a site with existing files, requires confirm:"I-want-to-replace-all-files".
| Parameter | Type | Required | Notes |
|---|---|---|---|
| deployId | string | yes | Session id returned by begin_deploy. |
| confirm | string | no | Required only for replace-mode commits against a site that already has files. Pass exactly "I-want-to-replace-all-files" to acknowledge that the live files will be deleted and replaced with the staged |
| delete | array | no | Patch-mode only: site-relative paths to remove from the live site as part of this commit. Useful for renames (write new path via add_files, delete old path here). |
| dryRun | boolean | no | If true, preview what commit would do without touching the live site or scratch dir. Returns the diff (filesDeployed, deletedFiles) plus would-be confirmation gate / preflight outcomes. Skips the secr |
Discard a staging session and its scratch dir. Live site is untouched. Returns immediately; cleanup is best-effort and the sweeper will retry if it fails.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| deployId | string | yes | Session id to abort. |
Return staging sessions for the team this token belongs to. Defaults to currently-active ones (open + committing). Up to 50 rows.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| status | string | no | Filter by status. Default lists 'open' and 'committing' (the actionable ones). Pass an explicit status to inspect history. |
Return the most recent 50 deploy and snapshot history entries for a site, newest first. Includes the source (how it was triggered), an optional label, the associated Longhorn snapshot name (if any), the file count, and the number of secrets detected. Any team member can read history.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | — |
| siteId | string | no | — |
List the Longhorn volume snapshots for a site. Snapshots are point-in-time backups of the site's served files. Any team member can list snapshots. Returns NO_VOLUME if the site has no volume yet (it has never been deployed).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | — |
| siteId | string | no | — |
Take a point-in-time Longhorn snapshot of a site's served files. This is an additive backup — it does not change anything served. It records a manual-snapshot history entry and runs retention cleanup. Viewers cannot create snapshots. Returns NO_VOLUME if the site has no volume yet (it has never been deployed).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | — |
| siteId | string | no | — |
| label | string | no | Optional human-readable label for this backup. |
- Every tool — any call limit is its publisher’s, not ours
- No card, and mcprush charges nothing for it
- Runs at its publisher’s own address — this marketplace is not in the path
- Nothing to cap, because mcprush bills nothing
What counts against your monthly calls
| Tool | Unit | Calls used | Out of the allowance |
|---|
Nothing here is billable: mcprush charges nothing to install Vibedeploy or to call it, at any volume.
Two independent axes, because powerful and malicious are different questions. The grade is threat only. The capability level is blast radius, and it is never a penalty on the grade — it is priced as one subtract-only term in the score, where you can see it.
This listing is an address its publisher runs, and you connect to it directly — this marketplace is not in the path. The scanner reads packages and public source, and an address is neither. So there is no grade — not a withheld one, an unmeasured one.
Release history
This is an address its publisher runs: which release it serves is theirs to choose, so there is nothing here to pin. The history below is for reading; the current release on file is 1.0.1.
No release note was published with this version.
One review per account, from a signed-in account that does not publish this listing. Nothing else is asked — you can say what you think before you install it. Publishers can reply once per review, and a review can be edited or deleted by whoever wrote it.
Any signed-in account that does not publish Vibedeploy can review it, once — before installing it or after. A review from an account that has installed it is marked as one.
Nobody has reviewed this listing. The rating on the card is the mean of the reviews written here and nothing else, so there is no rating until somebody writes the first — which takes a signed-in account that does not publish it, and nothing else.