ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที รีวิวและบัญชีผู้ใช้จะมาในขั้นถัดไป
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · อธิบายเป็นภาษาคน

Helmdeck

โดย tosin2013รุ่น 0.29.10i★ –iรันบนเครื่อง
ชื่อใน registryio.github.tosin2013/helmdeck

ติดตั้ง

ภาพรวม

คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)

Self-hosted MCP server: sandboxed browser, desktop, vision, code-edit packs for any agent.

สามเสาของ PopNx MCP

สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน

ใช้ทำอะไรได้

ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry

  • การเชื่อมต่อ: รันบนเครื่อง
  • ช่องทาง (transport): stdio
  • หมวด: เว็บและเบราว์เซอร์
  • ต้องใส่ค่าเหล่านี้: HELMDECK_URL, HELMDECK_TOKEN

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ก่อนติดตั้ง

ค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต

ต้องเตรียมก่อน

  • npmติดตั้ง Node.js (มีคำสั่ง npx) ในเครื่อง

คุณใช้แอปไหน

เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”

เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json

{
  "mcpServers": {
    "helmdeck": {
      "command": "npx",
      "args": [
        "-y",
        "@helmdeck/mcp-bridge"
      ],
      "env": {
        "HELMDECK_URL": "ใส่ค่าของคุณ",
        "HELMDECK_TOKEN": "ใส่ค่าของคุณ"
      }
    }
  }
}

พิมพ์คำสั่งนี้ใน Terminal

claude mcp add helmdeck --env HELMDECK_URL='ใส่ค่าของคุณ' --env HELMDECK_TOKEN='ใส่ค่าของคุณ' -- npx -y @helmdeck/mcp-bridge

เติมค่าที่เว้นว่างไว้ก่อนรัน

เปิดใน Cursor

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json

{
  "mcpServers": {
    "helmdeck": {
      "command": "npx",
      "args": [
        "-y",
        "@helmdeck/mcp-bridge"
      ],
      "env": {
        "HELMDECK_URL": "ใส่ค่าของคุณ",
        "HELMDECK_TOKEN": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .vscode/mcp.json ของโปรเจกต์

{
  "servers": {
    "helmdeck": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@helmdeck/mcp-bridge"
      ],
      "env": {
        "HELMDECK_URL": "ใส่ค่าของคุณ",
        "HELMDECK_TOKEN": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น

ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี

ค่าที่ต้องใส่เอง

  • HELMDECK_URL จำเป็น env
    Base URL of your helmdeck control plane (e.g. http://localhost:3000 for a local Compose install, or your reverse-proxied https URL)
  • HELMDECK_TOKEN ความลับ จำเป็น env
    JWT bearer token minted from your helmdeck control plane. Generate with: curl -X POST $HELMDECK_URL/api/v1/auth/login -d '{"username":"admin","password":"..."}'

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

ทำอะไรได้บ้าง

รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub tosin2013 ซึ่งเป็นเจ้าของ repo

  • … ยังไม่ตรวจ

    ยังมีคนดูแล

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    มีสัญญาอนุญาต (license)

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • – ไม่เกี่ยว

    endpoint ตอบ

    ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต

เทียบกับตัวอื่นในหมวด เว็บและเบราว์เซอร์i

  • ดาวมากกว่า 0% ของอีก 875 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 17% ของอีก 875 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 875 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

Helmdeck ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

ต้องใส่ค่าเหล่านี้: HELMDECK_URL, HELMDECK_TOKEN

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.29.10) เข้า registry 5 เดือนที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js, Docker ในเครื่องด้วย

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี Browser Use, Chrome DevTools MCP, MCP Server Browser

ตัวที่ใช้แทนได้

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

Browser Use

โดย browser-use

ให้ AI ทำงานบนเว็บแทนคุณ เช่น กรอกฟอร์ม ค้นหา และดึงข้อมูล ใช้เบราว์เซอร์บนคลาวด์ของผู้ทำหรือรันในเครื่องก็ได้

บนเครื่องหรือคลาวด์★ 120,087MITอัปเดต 16 วันที่ผ่านมา
ติดตั้ง

Chrome DevTools MCP

โดย ChromeDevTools

ให้ AI ใช้เครื่องมือนักพัฒนาของ Chrome ตรวจหน้าเว็บ ดูว่าโหลดช้าตรงไหน และหาข้อผิดพลาด ทำโดยทีม Chrome DevTools

รันบนเครื่อง★ 54,821Apache-2.0อัปเดต 15 วันที่ผ่านมา
ติดตั้ง

MCP Server Browser

โดย bytedance

MCP server for browser use access

รันบนเครื่อง★ 39,550Apache-2.0อัปเดต 14 เดือนที่ผ่านมา
ติดตั้ง

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

helmdeck

Today's helmdeck install ran a full 6-step code-edit loop (clone, read, patch,

test, commit, push) on gpt-oss-120b for $0.07. The same loop on Cursor

or Claude Code direct via Sonnet would have cost $0.30+. Same outcome,

~5× cheaper — and the "expensive" stack isn't even the most expensive option.

WorkflowFrontier-model approachHelmdeck (gpt-oss-120b)
Browser scrape + GitHub comment$0.25 (Anthropic Computer Use)$0.005
Code edit loop (6 steps)$0.35 (Cursor / Aider)$0.07
Multi-step browser test$0.20 (Browser-use NL)$0.03
PDF → structured Markdown$1.00 (naive Sonnet vision)$0.003

Most browser agents require GPT-4o or Claude Sonnet to work reliably.

Helmdeck is built for the other 99% of deployments — **local 7B models,

air-gapped environments, and teams that can't send credentials to a

cloud API.** It wraps every browser, desktop, git, and code action

into a single typed JSON call that even a small model can fill in correctly.

The numbers above are the consequence: when packs absorb the work the

LLM would otherwise burn tokens rediscovering, cheap or local models do

agentic work that frontier-model APIs charge 10× more for.

A self-hosted, containerized platform for AI agents, exposed as Capability Packs — schema-validated, one-shot JSON tools — and native MCP. The defining metric is ≥90% pack success on 7B–30B-class open-weight models, something no frontier-targeting competitor is optimizing for.

📊 Full per-task comparison with reproduction recipe at https://helmdeck.dev/explanation/why-helmdeck. These are one maintainer's findings; we welcome community reproductions.

Why this exists

Smart models thrive on bash and a README. Weak models stall on open-ended interfaces. Helmdeck closes that gap by hiding browser sessions, desktop actions, credentials, and multi-step workflows behind single typed REST / MCP calls.

Three audiences specifically:

  • Self-hosted AI teams who can't leave their VPC and need MCP-native infra that doesn't phone home.
  • The LocalLLaMA / Ollama crowd running 7B–30B models — pack contracts keep small models reliable where open-ended tool surfaces fail.
  • Security-sensitive orgs who need agents to log into SaaS apps without the model ever seeing a credential (vault-backed placeholder tokens + MCP-level audit).

Status

v0.22.0 shipped — *agents that work on free models, with memory.* The release closes ADRs 047–050:

  • Pipeline routing + routing memory (ADR 047) — the helmdeck.route meta-pack recommends the best pack/pipeline for an intent (with structured gap warnings when nothing fits), backed by per-caller learned defaults surfaced through the helmdeck://routing-guide and helmdeck://my-defaults MCP resources and a Routing Memory management UI.
  • Memory write surface + OpenClaw bridge (ADR 048) — helmdeck.memory_store persists durable user facts (read back via helmdeck://my-memory), an optional embedding sidecar powers OpenClaw's memory_search, and a QMD corpus bridge exposes helmdeck memory to OpenClaw.
  • Intent decomposition (ADR 049) — helmdeck.plan turns a multi-action prompt into an ordered, pipeline-aware step plan plus a rewritten_prompt.
  • LLM context manager (ADR 050) — internal/llmcontext compacts catalog-heavy prompts to fit small-model context budgets (tiered per-model budgets, cascading select + lexical rank, optional two-pass filter), surfaced through helmdeck://context-budgets and helmdeck://my-plans.

57 capability packs ship in the control-plane binary (47 without an AI gateway configured), alongside 21 built-in pipelines, a community pack marketplace (helmdeck pack install ), and operator-supplied cmd.* subprocess packs. Earlier headline features remain: end-to-end content chaining (image.generate auto-feeds podcast/slides/blog covers), the helmdeck://image-models MCP resource, image-mode install (./scripts/install.sh --image-mode), and the Pack Test Runner UI. Helmdeck is published to the official MCP Registry as io.github.tosin2013/helmdeck for one-line install in registry-aware clients. Phases 1–6.5 are complete; the current milestone is v1.0 — Kubernetes & GA (Phase 7), with backlog materialised as GitHub issues tagged good first issue and help wanted.

  • 49 ADRs in docs/adrs/ — every architectural decision with PRD back-references
  • Task breakdown in docs/TASKS.md — ~85 tasks across 8 phases with critical path
  • GitHub milestones in docs/MILESTONES.md — drop-in issue checklists with current ship state
  • Pack reference in docs/PACKS.md — every shipped pack's input/output contract

Quick start

git clone https://github.com/tosin2013/helmdeck

cd helmdeck ./scripts/install.sh

That's it. The script runs preflight checks (docker, node ≥20, go ≥1.26, make, openssl, curl) with platform-aware install hints, generates fresh secrets into deploy/compose/.env.local (chmod 600), builds the Management UI bundle, the Go binaries, and the browser sidecar image, brings the Compose stack up, and prints the URL plus a freshly generated admin password.

✓ helmdeck is up

URL: http://localhost:3000 Username: admin Password:

Useful flags:

  • ./scripts/install.sh --reset — tear down, regenerate secrets, reinstall (new admin password)
  • ./scripts/install.sh --no-build — skip build steps, just bring the stack up
  • ./scripts/install.sh --help — full flag reference

Or via make: make install.

Connect a client

A running stack is just the platform — the value is packs called by an agent. Wire one of the supported MCP clients to your fresh install:

ClientStatusSetup guide
OpenClaw✅ validated end-to-enddocs/integrations/openclaw.md
Claude Code🟡 documenteddocs/integrations/claude-code.md
Claude Desktop🟡 documenteddocs/integrations/claude-desktop.md
Gemini CLI🟡 documenteddocs/integrations/gemini-cli.md
Hermes Agent🟡 documenteddocs/integrations/hermes-agent.md

Once a client is connected, work through the pack-demo-playbook.md — 20+ copy-pasteable prompts that exercise every pack. The per-pack reference covers each pack's contract, error codes, and chained workflows.

Advanced: manual setup

If you'd rather drive each step yourself instead of running the install script:

# 1. Build the Management UI bundle (needs Node 20+)

make web-deps && make web-build

2. Build the control-plane binary with the UI embedded

make build

3. Run the control plane with admin credentials

HELMDECK_JWT_SECRET=$(openssl rand -hex 32) \ HELMDECK_VAULT_KEY=$(openssl rand -hex 32) \ HELMDECK_ADMIN_PASSWORD=changeme \ ./bin/control-plane

Or use the Compose stack directly (control plane + Garage object store + bundled init):

cp deploy/compose/.env.example deploy/compose/.env.local

…edit deploy/compose/.env.local and fill in real secrets…

docker compose -f deploy/compose/compose.yaml --env-file deploy/compose/.env.local up -d

Logging in to the Management UI

The login endpoint accepts a static admin password set via the HELMDECK_ADMIN_PASSWORD env var on the control plane process. Suitable for the dev / single-node Compose tier; OIDC SSO for production deployments lands in a later phase.

SettingDefaultOverride
UsernameadminHELMDECK_ADMIN_USERNAME env var
Password*(none — UI login disabled)*HELMDECK_ADMIN_PASSWORD env var (required)
Session length12 hoursHardcoded in internal/api/auth_login.go

To change the password: stop the control plane, set HELMDECK_ADMIN_PASSWORD to the new value, and restart. There is no in-UI "change password" flow today — the password is managed out-of-band by whichever orchestrator runs the control plane (Compose, systemd, Kubernetes Secret, etc.).

If `HELMDECK_ADMIN_PASSWORD` is unset, the login endpoint returns 503 login_disabled. The control plane still runs and the API still works — operators can mint a JWT directly via the CLI:

./bin/control-plane -mint-token=alice -mint-token-scopes=admin -mint-token-ttl=12h

The minted token can be pasted into any tool that speaks Authorization: Bearer .

Production note: the static-password path uses constant-time comparison so it's safe against timing attacks, but it's still a shared secret that has to be rotated by hand. For production deployments with multiple operators, OIDC SSO via your existing identity provider is the right answer — see the Phase 6 follow-up roadmap.

Architecture at a glance

  • Sidecar pattern — browser runs in its own container, never embedded in the agent (ADR 001)
  • Golang control plane — single static binary, distroless image, embeds the React UI (ADR 002)
  • Capability Packs — the primary product surface; user-authorable via Go or WASM (ADRs 003, 012, 024)
  • OpenAI-compatible AI gateway — Anthropic, Gemini, OpenAI, Ollama, Deepseek with encrypted keys + fallback routing (ADR 005)
  • MCP server registry — stdio/SSE/WebSocket transports; built-in MCP server auto-derived from the pack catalog (ADR 006)
  • Credential vault — AES-256-GCM with placeholder-token injection; agents never see secrets (ADR 007)
  • Dual-tier deployment — Docker Compose for dev/single-node, Helm chart for Kubernetes production (ADRs 009, 010, 011)
  • First-class MCP clients — Claude Code, Claude Desktop, OpenClaw, Gemini CLI via a single shared helmdeck-mcp bridge binary (ADRs 025, 030)
  • Bundled object store — Garage ships in the Compose stack as the default artifact backend; pluggable to any S3-compatible endpoint (AWS S3, R2, B2, SeaweedFS) for production (ADR 031)

Built-in Capability Packs

57 packs ship in the box (47 without an AI gateway configured). Each one hides a multi-step workflow behind a single typed JSON-Schema call so weak open-weight models can drive it as reliably as frontier models. The full input/output contract for every pack lives in docs/PACKS.md. The highlights:

PackWhat it hides
Browser & web
browser.screenshot_urlSession lifecycle, navigation, render wait, cleanup
browser.interactDeterministic multi-step CDP (navigate, click, type, scroll, screenshot, assert_text) — no LLM needed
web.scrape / web.scrape_spaFirecrawl-backed markdown scrape OR schema-driven SPA extraction
web.testNatural-language browser tests via Playwright MCP + LLM loop
research.deepMulti-source Firecrawl search + per-source scrape + LLM synthesis with inline citations
content.groundParses a markdown file for claims, finds authoritative sources, inserts real [link](url) citations in place
Document & vision
slides.renderMarp + Chromium + format flags
slides.narrateNarrated MP4 video (ElevenLabs TTS per slide) + YouTube engagement metadata + sidecar SRT captions + structured validation field (default-on post-step)

| av.validate | Structured AV-artifact validation (faststart, codec pin, packet contiguity, RMS swee

ตัดมาแค่ช่วงต้น อ่านต่อใน repo

ถาม PopNx