run.zero

de.run-zero由 run-zero.de 發布官方發布者v1.0.2更新於 Nov 4, 2026

Deploy apps, APIs and Postgres from your AI agent. EU PaaS hosted in Germany, OAuth sign-in.

已驗證Streamable HTTP可網頁執行資料庫雲端與基礎設施開發者工具

概覽

AI 產生的概覽

管理 run.zero 歐洲 PaaS 上的應用程式:建立應用程式、推送程式碼、部署、查看日誌、發布版本並管理應用程式使用者。

可以做什麼
  • 建立、列出、檢視與刪除應用程式,並可套用現成範本作為起點
  • 以單次原子提交把 UTF-8 檔案推入託管 Git 儲存庫,列出與讀取儲存庫檔案,並取得二進位素材的上傳連結
  • 部署、預覽部署差異、重建服務、等待建置、讀取建置日誌並列出歷史版本
  • 讀取執行期日誌與 CPU/記憶體指標,新增、擴縮或刪除服務
  • 設定、列出與刪除密鑰,並查詢應用程式託管的 Postgres
  • 發布變更、列出與還原已發布版本,並管理應用程式 Keycloak 登入領域中的終端使用者
適用情境
適合讓助理在對話中直接建置、部署與維運託管於德國的網頁應用程式、API 或搭配 Postgres 的服務,包括查看線上頁面截圖並把變更發布給訪客。
執行需求
遠端 Streamable HTTP 端點 api.run-zero.de/mcp,無需安裝套件。登入採用 OAuth 2.1(PKCE 與動態用戶端註冊),不需複製 API 金鑰;未登入可查看工具清單,但呼叫工具必須登入。需要 run.zero 帳號,依定價頁可能還需付費方案。
安裝前請注意
多個工具會變更或銷毀線上狀態:刪除應用程式、服務、密鑰與終端使用者無法復原;帶 prune 的部署、縮容到 0、發布、還原版本與啟用舊版本都會改變訪客看到的內容。設定密鑰或推送檔案會自動重新部署服務。產生的終端使用者密碼只回傳一次。呼叫破壞性操作前請明確確認。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 run.zero,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/de.run-zero%2Fmcp/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "run-zero": {
      "type": "http",
      "url": "https://api.run-zero.de/mcp"
    }
  }
}

README

run.zero MCP server

Deploy web apps, APIs and Postgres databases straight from your AI agent. run.zero is a platform as a service by Get IT Done GmbH, hosted in Germany on European infrastructure.

  • Endpoint: https://api.run-zero.de/mcp (Streamable HTTP)
  • Sign-in: OAuth 2.1 with PKCE and dynamic client registration. No API key to copy.
  • Discovery: initialize and tools/list answer without sign-in, so you can see every tool first. Tool calls need sign-in.
  • Registry name: de.run-zero/mcp in the official MCP Registry

What your agent can do

AreaTools
Appsrunzero_create_app, runzero_list_apps, runzero_get_app, runzero_delete_app
Coderunzero_push_files (one atomic commit into a managed Git repo), runzero_list_files, runzero_read_file, runzero_upload_assets
Deployrunzero_deploy, runzero_wait_for_build, runzero_list_builds, runzero_get_build_logs, runzero_rebuild_service, runzero_deploy_preview
Runrunzero_get_logs, runzero_get_metrics, runzero_scale_service, runzero_add_service, runzero_delete_service
Configrunzero_set_secrets, runzero_list_secrets, runzero_delete_secret, runzero_describe_addon
Datarunzero_db_query against the app's managed Postgres
Releasesrunzero_list_releases, runzero_restore_release, runzero_list_versions, runzero_activate_version, runzero_publish
Login for your apprunzero_create_user, runzero_list_users, runzero_set_user_enabled, runzero_create_identity_provider and more (managed Keycloak realm per app)
Helprunzero_get_help (workflow, files, addons, procfile, domains)

The platform builds with buildpacks (Node.js, Python, Go, PHP, Java). The web process listens on $PORT. A run-zero.yaml declares several services and the addons postgres and keycloak. Every service gets https://<service>-<app>.run-zero.de with TLS, and custom domains get a Let's Encrypt certificate.

Connect

Claude Code

sh
claude mcp add --transport http run-zero https://api.run-zero.de/mcp

Then run /mcp in Claude Code and sign in.

Claude Desktop and claude.ai

Settings, Connectors, Add custom connector, URL https://api.run-zero.de/mcp.

Cursor

~/.cursor/mcp.json:

json
{  "mcpServers": {    "run-zero": { "url": "https://api.run-zero.de/mcp" }  }}

VS Code

sh
code --add-mcp '{"name":"run-zero","type":"http","url":"https://api.run-zero.de/mcp"}'

Try it

Ask your agent:

Create a run.zero app called hello, push a small Express server that listens on $PORT, deploy it and give me the URL.

Links

This repository only describes the hosted server. It does not contain its source code.

來源:README.md,提交 4c7417f

工具

47

runzero_get_help

Platform help

Look up structured guidance on platform concepts and conventions. Topics: workflow, files, addons, procfile, domains. Call this whenever you need to understand addons, the Procfile/PORT convention, or the typical workflow for a new app. Returns markdown.

輸入參數topic

runzero_list_apps

List apps

List the apps the authenticated user has access to (own + collaborated), newest first — one compact row each (name, slug, url, kind, status, flags). Details of one app: runzero_get_app.

無需輸入參數。

runzero_get_app

Get app details

Get one app: slug, status, publish mode, services (URL, replicas, health, env var NAMES), addons, domains. Secret values are never returned.

輸入參數name必填

runzero_create_app

Create app

Create a new app. Optionally links to a Git repository — if no repo is given, you can attach one later.

輸入參數name必填repobranchcompanionOf

runzero_list_templates

List templates

List the curated template library: finished, deployed page designs (landing pages, shops, portfolios …) that can be adopted as the starting point of a NEW app instead of building from scratch. Each entry has a live URL and a screenshot URL plus kind/industries/tags for matching. Adopting a matching template is far cheaper and better-looking than writing a page from zero — check here FIRST on any first build.

無需輸入參數。

runzero_adopt_template

Create app from template

Create a NEW app as a full copy of a template from runzero_list_templates: app + repo + running instance, owned by the caller. Use this INSTEAD of runzero_create_app when a template matches the request, then adapt the copy (texts, colors, images — placeholder assets keep their paths and get overwritten). The copy provisions asynchronously; follow with runzero_wait_for_build as usual.

輸入參數namesourceSlug必填

runzero_list_services

List services

List the services (runtime processes) of an app with their build source, port, replicas and status.

輸入參數app必填

runzero_get_logs

Get service logs

Get the runtime log output of one service (stdout/stderr of its running containers), last N lines.

輸入參數app必填tailservice必填

runzero_get_metrics

Get service metrics

CPU and memory usage of a service over a time window (default last hour). Returns per-pod current/min/max/avg — CPU in millicores, memory in MiB — not raw time series, to stay compact.

輸入參數app必填rangeservice必填

runzero_screenshot

Screenshot live page

SEE the deployed page with your own eyes: renders the live URL in a real browser and returns fresh screenshots as images — desktop (1280×800) and/or mobile (390×844). Use it after runzero_wait_for_build to review the visual result like a designer would (spacing, contrast, overlaps, broken mobile layout) and fix what you SEE, not what you assume. Never cached; but the rollout of a fresh build lands ~30-90s after build success, so a screenshot taken too early shows the previous version — if it looks unchanged, wait briefly and call again.

輸入參數app必填pathservicefullPageviewport

runzero_rebuild_service

Rebuild service

Rebuild a service from the latest commit of its repo branch; on success the new version rolls out to the live URL. Use after an external repo changed; pushes via runzero_push_files rebuild on their own.

輸入參數app必填service必填

runzero_delete_app

Delete app

Permanently delete an app with all its services, addons (including database data), secrets and domains. Irreversible: only on an explicit request, and name the app back to the user before calling.

輸入參數name必填

runzero_deploy

Deploy app

Deploy an app. Fetches the repo and checks for run-zero.yaml (or the older itdone.yaml). If found, syncs all services + addons + domains from config. If not, deploys the repo as a single service. Services missing from the config are scaled to 0; with prune=true they are DELETED. Run runzero_deploy_preview first to see the diff.

輸入參數app必填prune

runzero_deploy_preview

Preview deploy changes

Preview what a deploy would change without making any changes. Use this before runzero_deploy to verify the diff.

輸入參數app必填

runzero_add_service

Add service

Add a new service to an app. Clones the repo, builds with buildpacks, and deploys. The web process must listen on $PORT.

輸入參數app必填name必填pathportrepo必填branchreplicasgit_token

runzero_delete_service

Delete service

Permanently delete one service of an app: its running containers, its public URL and its configuration. Irreversible; to only stop it, scale it to 0 with runzero_scale_service.

輸入參數app必填service必填

runzero_scale_service

Scale service

Set the replica count of a service (0-10). Scaling to 0 takes the service offline (its URL stops answering) without deleting it; scale up again to bring it back.

輸入參數app必填service必填replicas必填

runzero_set_secrets

Set secrets

Set one or more environment variables for an app or a specific service. Existing keys are overwritten; other keys are preserved. Affected services are redeployed automatically.

輸入參數app必填secrets必填service

runzero_list_secrets

List secret names

List the secret keys for an app (values are never returned). Includes both app-wide and per-service secrets.

輸入參數app必填

runzero_delete_secret

Delete secret

Delete a single secret from an app or a service. Affected services are redeployed automatically.

輸入參數app必填key必填service

runzero_list_builds

List builds

List recent build records for an app. Returns kpack Build status (success/failed/running) per service. To WAIT for a build to finish, use runzero_wait_for_build instead of calling this in a loop.

輸入參數app必填

runzero_list_versions

List versions

Earlier versions of a service that can be put back online, newest first. Each entry has an `image` (pass it to runzero_activate_version or runzero_preview_version), when it was built, and `summary` — the commit message, i.e. what changed. `active: true` marks what is online now. Use this when the user refers to an earlier state ("wie gestern", "vor der Umgestaltung"). Omit `service` when the app has only one.

輸入參數app必填service

runzero_preview_version

Preview earlier version

Show an earlier version under a SECOND address without touching the live site — use this whenever the user wants to look before deciding. Returns a url; the pod needs a few seconds, so a first request may fail — retry once. Pass `stop: true` (without `image`) to tear the preview down again; it costs nothing once stopped.

輸入參數app必填stopimageservice

runzero_work_url

Get preview link

The URL where this app's UNPUBLISHED changes can be looked at, and a link that opens it (the plain hostname refuses without one). Call this after EVERY change to an app that publishes on request, and give the user the link with a plain sentence: their change is on the preview, their real site is untouched, and it goes live when they say so. Without that sentence they look at their own website, see nothing, and conclude the change was lost.

輸入參數app必填

runzero_list_releases

List releases

What the user has PUBLISHED, newest first, with the sentence they described each change with, and which one visitors see right now. This is the list to use when someone says "wie letzte Woche" or "vor der Umgestaltung" — not runzero_list_versions, which lists every build including the platform's own bookkeeping commits and is unreadable for a person. Also reports whether something is built and waiting.

輸入參數app必填

runzero_publish

Publish changes

Put the waiting changes on the real site — this is what VISITORS see, so only ever on an explicit request ("mach das live", "veröffentliche das"), never on your own initiative after finishing a change. Write `description` in the user's own words and in their language ("Tag der offenen Tür angekündigt"), because that sentence is what they will read next month when they want to go back. Only for apps that publish on request; an app that publishes automatically has nothing to publish.

輸入參數app必填description必填

runzero_restore_release

Restore release

Put an earlier published state back on the real site. Use the id from runzero_list_releases. This CHANGES what visitors see. It does not touch the code: anything changed since is still there and still waiting, so this undoes what is published, not the work. If the user wants an announcement removed rather than the whole site rolled back, edit the page instead — going back also removes every other change made since.

輸入參數app必填release必填

runzero_set_publish_mode

Set publish mode

Switch between publishing every change immediately (auto) and collecting changes on a preview until the user releases them (manual). Explain the consequence before switching to manual: from then on nothing reaches their visitors until they say so, which is the point but also a way to wonder for days why a change never appeared. Switching back to auto publishes whatever was waiting, immediately.

輸入參數app必填mode必填

runzero_activate_version

Activate version

Put an earlier version back online — this CHANGES what visitors see. Only do this when the user explicitly asks to go back; never on your own initiative after a failed build (fix the code instead). While an older version is active, new builds are built but NOT published, until you call this again with image "latest". If the service has a database, the container goes back but the data does not — say so and pass acknowledge_data only after the user confirms.

輸入參數app必填image必填serviceacknowledge_data

runzero_wait_for_build

Wait for build

Wait server-side until the newest build of an app is finished AND the new version is serving traffic — use this INSTEAD of polling runzero_list_builds, sleeping, or re-checking the site in a loop. Blocks up to 45 seconds per call and returns {status: "success" | "failed" | "running", phase, rollout, builds}. "running" with phase "building" or "rolling-out" means: call it again. A rollout follows every successful build by 30-90 s, and until it lands the live URL, curl and screenshots still show the OLD version — do not push a fix for what you see in that window. "success" with phase "live" means every pod serves the new build; phase "done" means built but not live for a reason named in `hint` (the app publishes on request, an older version is pinned, not deployed yet). On "failed", read runzero_get_build_logs with the failed build id.

輸入參數app必填service

runzero_get_build_logs

Get build logs

Get the full log stream for a specific build (all kpack steps concatenated). Use runzero_list_builds first to find the build id.

輸入參數app必填tailbuild_id必填

runzero_push_files

Push files

Push changes into the app's Git repository as ONE atomic commit (create, patch, and delete in a single push). CHANGING an existing file? Use `edits` — an exact-snippet replacement, like your editor's edit tool. Use `files` only to create a NEW file or to genuinely rewrite one end to end: it resends the whole document, so a twelve-line change costs you the entire file. Both may appear in the same push (different paths). If the app has no repository yet, a platform-managed repo is created automatically on the first push. Text files only (UTF-8) — for binary assets (icons, images, fonts) NEVER attempt to inline the bytes; models cannot generate valid binary data. Instead use runzero_upload_assets (the user uploads via the dashboard) or set sourceUrl on a file entry (the server downloads it from the web). IMPORTANT: after the FIRST push on a fresh app, run runzero_deploy once — it creates the service(s) from the repo (single service from the root, or several from a run-zero.yaml). Later pushes rebuild existing services automatically. See runzero_get_help topic 'files' for the full flow, code layout rules and the run-zero.yaml format. Only works with platform-managed repositories, not external repos. `deletions` and `files` overwrite or remove files in the repo; earlier content stays in the Git history.

輸入參數app必填editsfilesmessagedeletionstrigger_build

runzero_list_files

List files

List all files in the app's Git repository (platform-managed repos only). Optionally filter by path prefix.

輸入參數app必填path

runzero_read_file

Read file

Read a file from the app's Git repository (platform-managed repos only), UTF-8. Returns at most 250 lines per call (a note at the end says how to continue) — read the part you need with startLine/endLine instead of the whole file; every returned line is paid for on every later step.

輸入參數app必填path必填endLinestartLine

runzero_upload_assets

Get asset upload link

Get the dashboard upload link for an app so the USER can upload binary assets (icons, images, fonts) via drag & drop — real bytes, nothing travels through the model. Give the returned URL to the user, wait until they confirm the upload, then call runzero_list_files with path 'assets/' and reference the files in the code.

輸入參數app必填

runzero_list_users

List app users

List the end-users of an app's login realm (requires the app's keycloak addon). Returns id, username, email and enabled state.

輸入參數app必填

runzero_create_user

Create app user

Create an end-user in the app's login realm. Returns the generated password ONCE if none is given — relay it to the user, it cannot be retrieved later.

輸入參數app必填emailpasswordusername必填

runzero_delete_user

Delete app user

Permanently delete an end-user (account, sessions, login data) from the app's login realm. Irreversible; to only block the login use runzero_set_user_enabled.

輸入參數app必填user_id必填

runzero_reset_user_password

Reset app user password

Replace an end-user's password in the app's login realm; the old one stops working at once. Returns the new password ONCE (generated if none given).

輸入參數app必填user_id必填password

runzero_set_user_enabled

Enable or block app user

Enable or disable (block) an end-user in the app's login realm. A disabled user cannot log in but is not deleted.

輸入參數app必填enabled必填user_id必填

runzero_list_identity_providers

List login providers

List external login providers (Google, GitHub, …) configured on the app's login realm. Secrets are never returned.

輸入參數app必填

runzero_create_identity_provider

Add login provider

Add an external login provider (Google, GitHub, Microsoft, generic OIDC/SAML) to the app's login realm, so end-users can sign in with it. You need an OAuth client id/secret from the provider first. IMPORTANT: the response contains a redirect URI that the user must register in the provider's OAuth app — surface it to them. For generic 'oidc' also pass authorization_url and token_url.

輸入參數app必填alias必填client_id必填token_urlprovider_id必填display_nameclient_secret必填authorization_url

runzero_generate_image

Generate image

Generate an image with AI (FLUX) and commit it into the app's repo. Costs credits. Use for hero images, backgrounds, illustrations. The file is committed at the given path (e.g. assets/hero.jpg), replacing a file already there, and a rebuild is triggered; reference it in the code afterwards. The prompt is sent to Black Forest Labs (EU endpoint).

輸入參數app必填path必填prompt必填aspect_ratio

runzero_db_query

Run SQL query

Run one SQL statement against an app's PostgreSQL addon (owner/admin only). Read-only by default: the statement runs in a READ ONLY transaction that is rolled back. With allow_write=true it CAN WRITE: INSERT/UPDATE/DELETE and DDL (DROP, ALTER, TRUNCATE) are committed immediately and cannot be undone. Before setting allow_write, show the user the exact SQL and get their explicit confirmation. Results are capped at 1000 rows; statements time out after 15s.

輸入參數app必填sql必填allow_write

runzero_describe_addon

Describe addon

Show exactly which environment variables an addon injects into an attached service, straight from the platform (the source of truth — use this instead of guessing env var names). Call it BEFORE writing code that reads addon credentials.

輸入參數type必填

版本歷史

1
  1. v1.0.2最新Nov 4, 2026

評分

已滿足適用檢查項的 90%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。

其他 Run-Zero 整合