Skip to main content
Glama

Bedengan Apps MCP

지금 Bedengan App Hub(https://apps.wisatabedengan.com)에 앱을 게시하거나 업데이트하는 유일한 방법 — 웹 페이지가 아니라 AI 코딩 도구(예: Antigravity)를 통해서입니다.

일상적인 사용 방법, 간단히: 설치(한 번만, 아래 참조) 후 AI에게 "이 폴더를 새 앱으로 업로드해 줘" 또는 *"최신 코드로 앱 X를 업데이트해 줘"*라고 요청하기만 하면 됩니다. 나머지 — 프로젝트 확인, 부족한 부분 수정, 전송 — 은 자동으로 처리됩니다. 더 이상 수동으로 승인하는 관리자가 없습니다. 검사를 통과하면 앱이 즉시 라이브가 됩니다.

이것은 VPS로 가는 새로운 경로가 아닙니다. 이 서버는 자체 계정 토큰을 통해 동일한 허브 API를 호출할 뿐이며, Docker나 서버를 직접 건드리지 않습니다.

노트북에 한 번 설치

  1. 이 폴더를 다운로드하세요. git clone에 익숙하지 않다면 이 GitHub 저장소 페이지에서 녹색 "Code" → "Download ZIP" 버튼을 클릭한 다음 노트북의 아무 폴더(예: Documents/bedengan-apps-mcp)에 압축을 풀면 됩니다.

  2. 관리자에게 API 토큰을 요청하거나, 이미 계정이 있다면 직접 만들 수 있습니다: https://apps.wisatabedengan.com에 로그인 → "API 토큰" 버튼 → API 토큰 생성 / 갱신. 표시되는 코드는 한 번만 표시됩니다 — 창을 닫기 전에 기록해 두세요.

  3. 압축을 푼 폴더에서 터미널을 열고 다음을 실행하세요:

npm install
npm run build
npm run init

npm run init은 허브 URL(기본값을 사용하려면 Enter, https://apps.wisatabedengan.com)과 2단계의 토큰을 묻습니다. ~/.bedengan-apps/config.json에 저장되며, 이는 노트북 자체에만 저장됩니다 — 어떤 프로젝트에도 절대 함께 압축되지 않으며, 다른 사람과 공유해서는 안 됩니다.

Related MCP server: Deploy MCP

Antigravity에 연결

Antigravity의 MCP 서버 설정에 추가하세요(설정에서 "MCP Servers" 메뉴를 찾으세요):

{
  "mcpServers": {
    "bedengan-apps": {
      "command": "node",
      "args": ["/path/absolut/ke/folder-hasil-ekstrak/dist/index.js"]
    }
  }
}

위의 경로를 위에서 압축을 풀거나 설치한 폴더(위 1단계) 안의 dist/index.js 위치로 바꾸세요 — 상대 경로가 아닌 전체 경로로. 저장한 후 Antigravity를 다시 시작하면 AI가 아래 도구를 사용할 수 있습니다.

"이 폴더를 업로드해 줘"라고 요청하면 일어나는 일

  1. AI가 프로젝트를 검사합니다(validate_project) — 앱 유형이 감지되는지, 비밀 파일(.env, API 키)이 함께 압축되지 않는지, 구조가 완전한지 확인합니다.

  2. 수정해야 할 부분이 있으면 AI가 코드에서 해당 부분만 수정한 다음 다시 검사합니다 — 깨끗해질 때까지 반복합니다. AI가 정말 혼란스러워하지 않는 한 직접 개입할 필요가 없습니다.

  3. 깨끗해지면 실제로 전송합니다(submit_app은 새 앱, update_app은 이미 라이브인 앱 업데이트).

  4. 승인할 사람이 없습니다. 잠시 후 앱은 https://<선택한-서브도메인>.apps.wisatabedengan.com에서 열 수 있습니다.

사용 가능한 도구

도구

기능

validate_project

로컬 폴더 확인(아무것도 전송하지 않음) — 앱 유형 감지, 구조 경고, 그리고 먼저 수정하지 않으면 거부될 "오류"를 확인합니다. 항상 먼저 호출되며, 아래 두 도구 전에 자동으로 호출됩니다.

submit_app

새 앱을 게시합니다. 검사 통과 = 요청한 서브도메인에서 즉시 라이브.

update_app

자체 계정의 이미 라이브인 앱을 최신 코드로 업데이트합니다. 이전 버전은 자동으로 저장됩니다(새 버전에 문제가 있으면 웹 대시보드를 통해 복원 가능).

check_status

제출 상태와 빌드 진행 상황을 확인합니다.

list_my_apps

자체 계정의 모든 앱 및 제출 상태를 확인합니다 — update_app에 필요한 appId도 포함됩니다.

사용 중인 AI 코딩 도구가 "MCP 프롬프트"를 지원한다면, 위 1-4단계를 하나의 명령으로 묶은 **siapkan_dan_terbitkan**이라는 바로 사용 가능한 흐름도 있습니다. 지원하지 않아도 문제없습니다 — AI는 각 도구의 설명에서 올바른 순서를 알고 있습니다.

거부된 경우

거부 메시지에는 항상 수정해야 할 사항이 명시되어 있습니다. 예:

  • "비밀 정보가 함께 업로드된 것으로 감지되어 자동 거부됨: .env 파일이 함께 압축됨" → 전송하는 프로젝트에서 .env를 삭제/제외하고(아래 "자동 제외 항목" 섹션 참조) 다시 시도하세요.

  • "앱 유형을 인식할 수 없음" → 일반적으로 기본 파일이 예상 위치에 없거나(예: index.html/app.py/package.json이 최상위 폴더에 없음) start 스크립트가 없는 경우입니다. AI에게 구조를 수정하도록 요청하세요: 정적 웹은 루트에 index.html이 필요하고, Python은 app.py + requirements.txt가 필요하며, Node는 process.env.PORT를 읽고 0.0.0.0에서 수신 대기하는 "start" 스크립트가 있는 package.json이 필요합니다.

  • "Python/Node 앱 할당량이 가득 찼습니다" → 먼저 웹 대시보드에서 더 이상 사용하지 않는 이전 앱 중 하나를 삭제한 다음 다시 시도하세요.

유지해야 하는 데이터 저장(데이터베이스, 사용자 업로드 등)

앱이 자체 데이터를 저장하고(예: 급여 데이터베이스, 사용자 업로드, 입력 결과) update_app으로 나중에 앱을 업데이트해도 데이터가 유지되어야 한다면, 프로젝트 루트의 ./data/ 폴더에 모두 저장하세요(package.json/app.py/index.html이 있는 폴더 기준). 이 폴더는 코드가 업데이트될 때 교체되지 않는 유일한 부분입니다 — 다른 부분(코드, node_modules 등)은 submit_app/update_app이 성공할 때마다 전체가 교체됩니다.

프로젝트에 처음 업로드할 때 ./data/ 폴더에 실제 데이터가 이미 있는 경우(예: 동료가 이미 사용 중인 앱을 내용물과 함께 자신의 노트북에서 옮긴 경우) — 해당 데이터는 처음부터 서버에 함께 전달되어 유지되므로 수동으로 옮길 필요가 없습니다.

ZIP으로 묶을 때 자동 제외 항목

node_modules, .git, __pycache__, .venv/venv, .DS_Store, .next, .cache. 다른 항목을 제외하려면 프로젝트 폴더 루트에 .bedenganignore 파일을 만드세요 — 줄당 상대 폴더/파일 이름 하나씩(.gitignore와 같은 전체 glob이 아니라 정확한 이름만).

토큰이 유출된 경우

웹 대시보드에서 직접 취소하거나("API 토큰" 버튼 → "API 토큰 취소") 관리자에게 관리자 패널에서 취소하도록 요청하세요 — 로그인 비밀번호와 웹 세션은 영향을 받지 않습니다. 새 토큰을 만들고 npm run init을 다시 실행하세요.

Available Tools

5 tools
check_statusCek status pengajuanA

Lihat status sebuah pengajuan (menunggu/disetujui/ditolak) dan progres build-nya kalau sudah disetujui.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestIdYesID pengajuan, didapat dari balasan submit_app.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the behavioral burden. It discloses that the tool is a read-only status lookup, enumerates the possible statuses, and notes the conditional build-progress behavior for approved requests. This is adequate for a low-risk check operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One concise, front-loaded sentence with no filler. Every part adds useful information: what is checked, the possible statuses, and the conditional progress detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter status-check tool, the description covers the core behavior and expected result categories. There is no output schema, but the description's mention of statuses and build progress provides sufficient guidance for an agent to call and interpret the tool without missing critical context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the single parameter requestId is already documented as coming from submit_app's reply. The tool description adds no additional parameter-level meaning, so the baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Lihat') and resource ('sebuah pengajuan'), and clarifies the exact scope: status values (menunggu/disetujui/ditolak) plus build progress when approved. This clearly separates it from sibling tools like submit_app or update_app, which are about creating or modifying submissions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The tool is clearly positioned as the status lookup after a submission exists, and the requestId parameter description says it comes from submit_app's reply. It does not explicitly name alternatives or exclusions, but the context is clear enough for an agent to know when to call it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_my_appsDaftar aplikasi & pengajuan sayaA

Lihat semua aplikasi yang sudah tayang dan pengajuan yang masih berjalan milik akun ini.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden of behavioral disclosure. 'Lihat' signals a read-only listing and the status qualifiers ('sudah tayang', 'masih berjalan') add filter semantics. However, it does not mention pagination, sorting, authorization, or what happens when there are no results.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence with no filler. Every phrase adds scope or status information, and the list-like structure matches the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple zero-parameter design and no output schema, the description sufficiently states what the tool returns conceptually: the account's published apps and ongoing submissions. It could be more complete by noting read-only guarantees or result set behavior, but nothing critical is missing for basic invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and schema coverage is 100%, so there are no parameter semantics to document. The baseline for a zero-parameter tool is 4, and the description does not need to compensate for any schema gaps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'Lihat' (view) and names the resource precisely: all published apps ('aplikasi yang sudah tayang') and ongoing submissions ('pengajuan yang masih berjalan') belonging to the current account. This separates it from the sibling tools, which validate, submit, check status, or update rather than list.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It clearly implies the appropriate context: use when the agent needs an overview of the current account's published apps and in-progress submissions. It does not explicitly name sibling alternatives or exclusions, so it stops short of full routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

submit_appTerbitkan aplikasi baru ke Bedengan App HubA

Panggil validate_project LEBIH DULU dan pastikan hasilnya "ok": true. Kirim folder proyek lokal sebagai aplikasi BARU. Tidak ada admin yang meninjau lagi -- kalau lolos pemeriksaan (struktur & pemindaian rahasia), aplikasinya LANGSUNG LIVE di subdomain yang diminta dalam beberapa saat, bukan menunggu persetujuan. Kalau ditolak, pesan errornya selalu menyebutkan apa yang harus diperbaiki -- perbaiki lalu panggil validate_project lagi sebelum mencoba submit_app lagi. Untuk aplikasi yang SUDAH live sebelumnya, pakai update_app, BUKAN submit_app lagi (subdomain yang sudah dipakai akan ditolak).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesNama aplikasi.
pathYesFolder proyek lokal, path absolut.
notesNoCatatan tambahan, opsional (tidak dibaca admin -- tidak ada lagi).
subdomainYesSubdomain yang diinginkan (huruf kecil, angka, tanda hubung saja), mis. "kalkulator-tenda".
departmentNoDepartemen/tim pengaju, opsional.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Since no annotations are provided, the description carries the full burden of behavioral disclosure. It reveals that publication is immediate with no admin review, that apps pass through structure and secret scanning, that rejection errors always explain what to fix, and that duplicate subdomains are rejected. It does not mention authentication or the exact success response, but the core behavior is clearly disclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Every sentence earns its place: the first gives the prerequisite, the second clarifies new-app-only submission, the third explains rejection handling, and the fourth distinguishes update_app. There is no filler, and the information is logically ordered.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 5 parameters, no output schema, and no annotations, this description covers the prerequisite, validation flow, immediate publication behavior, error recovery, and sibling distinction. The main gap is that it does not describe what a successful submit_app call returns, which would be useful given there is no output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides 100% parameter description coverage, so the baseline is 3. The description adds some contextual meaning—such as treating 'path' as the local project folder and 'subdomain' as the requested, unused subdomain—but it does not substantially improve on the schema's parameter explanations.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that submit_app publishes a new local project as a brand-new app to Bedengan App Hub, using a specific verb and resource. It also distinguishes itself from update_app by explicitly saying already-live apps must use update_app instead, so there is no confusion with siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit usage guidance: call validate_project first and ensure its result is 'ok': true, use submit_app only for new apps, and use update_app for apps that are already live. It also warns that an already-used subdomain will be rejected, preventing an obvious misuse.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_appPerbarui aplikasi yang sudah liveA

Panggil validate_project LEBIH DULU dan pastikan hasilnya "ok": true. Timpa aplikasi yang SUDAH live milik akun ini sendiri dengan kode terbaru di folder lokal. Lolos pemeriksaan = LANGSUNG live menggantikan versi lama, tanpa siapa pun meninjau. Versi lama otomatis tersimpan (bisa dikembalikan lewat dashboard web kalau versi baru ternyata bermasalah). Dapatkan appId dari list_my_apps.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesFolder proyek lokal, path absolut.
appIdYesID aplikasi yang akan diperbarui, didapat dari list_my_apps.

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

There are no annotations, so the description carries the full disclosure burden. It reveals that passing validation immediately replaces the live version with no review, that the old version is automatically saved, and that rollback is possible via the web dashboard. This gives the agent a clear picture of the destructive yet recoverable behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the mandatory prerequisite, then states the core action, and then explains the deployment and rollback consequences. Every sentence contributes useful information, though the phrasing is slightly dense.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter tool with no output schema, the description covers the required prerequisite, the effect, and the recovery path. It does not describe the return value of update_app itself, but that is not essential for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with both path and appId already described. The description reinforces that appId comes from list_my_apps and that path refers to the local folder, but it adds no substantially new semantic detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: it overwrites an already-live app owned by this account with new code from a local folder. It clearly distinguishes this from a new submission by emphasizing 'SUDAH live' and by tying prerequisites to validate_project and list_my_apps.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly instructs that validate_project must be called first and its result must be 'ok': true, and that appId comes from list_my_apps. It does not explicitly name submit_app as an alternative or state when not to use this tool, but the 'already live' scope strongly implies the boundary.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validate_projectValidasi proyek Bedengan AppsA

WAJIB dipanggil LEBIH DULU, setiap kali, sebelum submit_app atau update_app -- tidak ada admin yang meninjau lagi, jadi ini satu-satunya kesempatan menangkap kesalahan sebelum aplikasinya live. Bungkus folder proyek lokal jadi ZIP dan validasi lewat Bedengan App Hub, TANPA mengajukan apa pun (tidak masuk antrean, tidak tercatat di database). Balasannya berisi jenis aplikasi yang terdeteksi (static/python/node/spa), peringatan struktur (mis. node_modules ikut ter-zip -- boleh diabaikan), dan "kesalahan" keras (mis. .env atau pola rahasia ikut ter-zip, entry point tidak ditemukan -- ini yang akan membuat submit_app/update_app DITOLAK). Kalau ada "kesalahan", perbaiki HANYA hal yang disebutkan di proyek lokal (jangan mengubah bagian lain yang tidak terkait), panggil tool ini lagi sampai "ok": true, baru lanjut ke submit_app/update_app.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesFolder proyek lokal, path absolut.

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden and does it well. It discloses that the tool does not submit, queue, or record anything, and it describes the response contents: detected app type, ignorable warnings, and hard errors that cause rejection. It also clarifies the consequences of errors on later submit/update calls.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Although the description is long, every sentence earns its place: mandatory call order, side-effect transparency, response schema, error handling, and the retry loop. The critical instruction is front-loaded ('WAJIB dipanggil LEBIH DULU'), and examples are used efficiently to clarify warning versus error severity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given there is no output schema, the description compensates by describing exactly what the response will contain and how to interpret it. It also explains the tool's non-mutating behavior, the consequences of hard errors, and the exact follow-up path. Nothing essential for correctly invoking and acting on this tool is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already fully describes the only parameter, `path`, as an absolute local project folder path. The description adds context that this folder will be zipped and validated, but it does not introduce new parameter-specific constraints or format details. Baseline 3 is appropriate given 100% schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action: zip a local project folder and validate it through Bedengan App Hub without submitting anything. It also clearly distinguishes this from submit_app/update_app by saying it never queues or records anything, so the agent knows exactly what the tool is for.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly mandates when to use the tool: always before submit_app or update_app, and even explains why ('tidak ada admin yang meninjau lagi'). It also gives the retry workflow: fix only mentioned issues, revalidate until 'ok': true, only then proceed. This is strong, actionable usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updatesv0.1.0
    • First observedcheck_status
    • First observedlist_my_apps
    • First observedsubmit_app
    • First observedupdate_app
    • First observedvalidate_project

TDQS

A4.4/5.0

Scored across 5 tools

Disambiguation4/5

Each tool has a reasonably distinct role: validation, creation, updating, status lookup, and listing. The only mild overlap is between check_status and list_my_apps, since both expose submission/app state, but one is single-item-oriented and the other is an overview.

Naming Consistency5/5

Tool names consistently follow a verb_noun pattern: validate_project, submit_app, check_status, update_app, list_my_apps. The style is uniform and predictable, making it easy to anticipate what each tool does.

Tool Count5/5

Five tools is well-scoped for an app deployment workflow: validate, create, update, check status, and list apps. Each tool earns its place and there is no unnecessary redundancy or bloat.

Completeness4/5

The core lifecycle is covered: validate before deploy, submit new apps, update existing apps, check status, and list owned apps. A delete or rollback tool is missing, but rollback is explicitly handled through the web dashboard, so the gap is minor.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI agents to deploy code to any hosting provider by creating PRs, building, and verifying health checks, all from a single natural language command.
    378 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI coding assistants to deploy websites directly to Vercel from the IDE, automating framework detection, build validation, and secure environment variable synchronization, with live status updates.
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to build, deploy, and inspect apps through a hosted backend service, including reading platform docs, deploying raw source, inspecting logs, verifying live pages in browsers, and managing project tasks.
    MIT