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

sketch/design — System Design Interview Board

โดย tGhattasรุ่น 0.1.2i★ –iรันบนเครื่อง
ชื่อใน registryio.github.tGhattas/sysdesign-board

ติดตั้ง

ภาพรวม

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

Hand-drawn whiteboard for system design mock interviews; your AI watches, asks and gives feedback.

สามเสาของ PopNx MCP

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

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

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

  • การเชื่อมต่อ: รันบนเครื่อง
  • ช่องทาง (transport): stdio
  • หมวด: ออกแบบ ภาพ และเสียง

ติดตั้ง

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

ก่อนติดตั้ง

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

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

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

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

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

{
  "mcpServers": {
    "sysdesign-board": {
      "command": "npx",
      "args": [
        "-y",
        "sysdesign-board"
      ],
      "env": {
        "SYSDESIGN_PORT": "ใส่ค่าของคุณ"
      }
    }
  }
}

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

claude mcp add sysdesign-board --env SYSDESIGN_PORT='ใส่ค่าของคุณ' -- npx -y sysdesign-board

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

เปิดใน Cursor

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

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

{
  "mcpServers": {
    "sysdesign-board": {
      "command": "npx",
      "args": [
        "-y",
        "sysdesign-board"
      ],
      "env": {
        "SYSDESIGN_PORT": "ใส่ค่าของคุณ"
      }
    }
  }
}

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

เปิดใน VS Code

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

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

{
  "servers": {
    "sysdesign-board": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "sysdesign-board"
      ],
      "env": {
        "SYSDESIGN_PORT": "ใส่ค่าของคุณ"
      }
    }
  }
}

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

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

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

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

  • SYSDESIGN_PORT env
    Local port for the whiteboard page (http://localhost: ). Defaults to 4321.

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

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

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

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

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

  • ✓ ผ่าน

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

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

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

    ยังมีคนดูแล

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

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

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

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

  • – ไม่เกี่ยว

    endpoint ตอบ

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

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

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

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

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

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

เทียบกับตัวอื่นในหมวด ออกแบบ ภาพ และเสียงi

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

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

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

sketch/design — System Design Interview Board ปลอดภัยไหม?

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

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

registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก

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

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

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

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.2) เข้า registry 16 วันที่ผ่านมา

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

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

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

ในหมวดเดียวกันมี Figma Context MCP, Claude Real Video, Figma MCP Server

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

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

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

Figma Context MCP

โดย GLips

Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.

รันบนเครื่อง★ 16,165MITอัปเดต 5 เดือนที่ผ่านมา
ติดตั้ง

Claude Real Video

โดย HUANGCHIHHUNGLeo

Let any LLM watch a video locally — and search everything it has ever watched.

รันบนเครื่อง★ 2,284MITอัปเดต 2 เดือนที่ผ่านมา
ติดตั้ง

Figma MCP Server

โดย figma

server ทางการของ Figma ส่งข้อมูลงานออกแบบให้ AI อ่าน เพื่อเปลี่ยนแบบเป็นโค้ดหรืออธิบายแบบได้ตรงขึ้น ต่อผ่านคลาวด์ของ Figma

รันบนคลาวด์★ 2,152อัปเดต 13 เดือนที่ผ่านมา
ติดตั้ง

README จากผู้ทำ

เปิดอ่าน README

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

sketch/design — the system design interview board

A hand-drawn whiteboard for system design mock interviews, plus an MCP server that turns Claude or ChatGPT into your interviewer. It sees your board, listens to you, talks back, pins questions on your components, and ends with scored feedback.

  • Pencil-style canvas: a paper or chalkboard theme, with shapes that look drawn by hand (rough.js + perfect-freehand)
  • 27 system design components: load balancer, API gateway, CDN, cache, SQL and NoSQL databases, object store, queue, Kafka-style stream, pub/sub, workers, serverless functions, auth, monitoring, ML and more
  • Arrows that stay attached to components, with labels, curved or elbow routes, and dashed lines for async flows. Hover a component and drag its blue dot to connect it.
  • Interview panel: the problem, a timer, a phase tracker, chat, voice in (speech-to-text) and voice out (the interviewer's replies are read aloud)
  • The interviewer can read your diagram as structured data, look at a picture of it, pin comments on components, highlight things, sketch reference designs, and grade you at the end
  • Runs entirely on your machine. The AI runs in your own Claude or ChatGPT app, on your existing subscription, with no API keys.

Install

Requires Node.js 18+.

Your AI appHow to connectBilled to
Claude DesktopDouble-click sysdesign-board-x.y.z.mcpb from Releases, or run npx -y sysdesign-board installClaude Pro / Max
Claude Codeclaude mcp add sysdesign-board -- npx -y sysdesign-boardClaude Pro / Max
Codex CLIAdd it to ~/.codex/config.toml (below)ChatGPT Plus / Pro
ChatGPT (desktop / web)Developer Mode connector through a tunnel (below)ChatGPT Plus / Pro
Cursor, Windsurf, VS Code, othersThe standard MCP JSON (below)Your plan there

The .mcpb one-click file is Claude Desktop only. Every other app runs the same npm package.

Claude Desktop

Option A: one-click. Download the .mcpb file from Releases and double-click it. Claude Desktop shows an install dialog.

Option B: command line. First quit Claude Desktop completely (macOS: ⌘Q; Windows: tray icon → Quit). Claude rewrites its config file from memory when it quits, which would drop the new entry. Then run:

npx -y sysdesign-board install

Reopen Claude Desktop.

Option C: edit the config yourself (again, with Claude Desktop quit). The file is at:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux (unofficial builds): ~/.config/Claude/claude_desktop_config.json
{

"mcpServers": { "sysdesign-board": { "command": "npx", "args": ["-y", "sysdesign-board"] } } }

On Windows, use "command": "cmd", "args": ["/c", "npx", "-y", "sysdesign-board"]. If Claude can't find npx (common with nvm, Volta or asdf), use the absolute path from which npx (macOS/Linux) or where npx (Windows).

Claude Code

Either add the server directly:

claude mcp add sysdesign-board -- npx -y sysdesign-board

Or install the plugin, which also adds an interview skill, from this repo's marketplace. Run these inside Claude Code:

/plugin marketplace add tGhattas/sysdesign-board

/plugin install sysdesign-board@sysdesign-board

Codex CLI

Add this to ~/.codex/config.toml (Windows: %USERPROFILE%\.codex\config.toml):

[mcp_servers.sysdesign-board]

command = "npx" args = ["-y", "sysdesign-board"] tool_timeout_sec = 120

ChatGPT app

ChatGPT connects to MCP servers over public HTTPS, so you run the board locally and expose only its /mcp endpoint through a tunnel. The board itself, its API and its WebSocket refuse any request that doesn't come from localhost.

  1. Start the board, and keep this running:
   npx -y sysdesign-board serve
  1. In another terminal, open a tunnel (here with cloudflared):
   cloudflared tunnel --url http://localhost:4321
  1. Get your private connector token:
   npx -y sysdesign-board token
  1. In ChatGPT, go to Settings → Apps & Connectors → Advanced, enable Developer Mode, then Create a connector with the URL https:// .trycloudflare.com/mcp?token= and no authentication.

Treat that URL like a password. To change the token, delete ~/.sysdesign-board/token, or set SYSDESIGN_TOKEN yourself.

Any other MCP client
{ "command": "npx", "args": ["-y", "sysdesign-board"] }

Use it

Start a new chat and say:

Start a system design interview with me on my sketch board.

Or use the interview prompt from your app's prompt or slash menu. The board opens at http://localhost:4321.

  • Draw your design. Talk with the 🎤 mic (your message is sent when you pause) or type in the panel.
  • The interviewer keeps listening between replies. It is woken by what you say, and when you stop drawing for a few seconds.
  • Click I'm done when you're finished to get a feedback card with scores.

The board also works without any AI: run npx -y sysdesign-board serve and open http://localhost:4321.

Tools the interviewer gets
ToolWhat it does
start_interviewSets the problem, level and duration, opens the board, and speaks the opening line
wait_for_candidateWaits for your speech or messages, or for board changes once you stop drawing
saySends a chat message, read aloud
get_boardStructured diagram: components, connections (with labels; dashed means async), zones, notes, and what changed
get_board_imageA PNG of the whole board (for handwriting and sketches)
annotate / clear_annotationsPin or remove "INTERVIEWER" comment bubbles on components
highlightMakes components glow, optionally zooming to them
draw_on_boardAdds components, connections, notes and zones in the same sketchy style
set_phaseRequirements → Estimation → API & Data → High-level → Deep dive → Wrap-up
end_interviewFeedback card with 1–5 scores, strengths and improvements
get_transcript, open_boardHousekeeping

Voice

  • Speech-to-text uses the browser's Web Speech API. Use Chrome, Edge or Safari; Firefox doesn't support it.
  • Text-to-speech uses your system voices. Toggle it with "Voice replies" in the panel. The mic pauses while the interviewer speaks, so it doesn't transcribe itself.
  • The native voice modes inside the ChatGPT and Claude apps can't be piped into another page. Those voice models are only available through paid APIs.

Keyboard

V select · H hand / hold Space · R rect · D diamond · O ellipse · A arrow · L line · P pen · T text · N sticky note · F zone · E eraser · K laser · C components · I interview panel · Q tool lock · G grid snap · ⌘/Ctrl Z undo · ⌘/Ctrl D duplicate · ⇧1 fit · ? all shortcuts

Privacy Policy

The full policy is in PRIVACY.md. In short:

  • What it handles: your board, the interview chat and voice transcripts, your settings, and a local access token.
  • Where it's stored: only on your machine, in the browser's local storage for the board page and in ~/.sysdesign-board/. The author runs no server, and there are no accounts, analytics or telemetry.
  • What leaves your computer:
  • When the AI interviewer calls a tool, the AI app you connected receives the board description, a picture of the board, your messages and your transcripts, under that provider's privacy policy.
  • The mic uses your browser's speech recognition. Chrome sends the audio to Google; Safari uses Apple's speech service.
  • npx downloads the package from npm.
  • With the optional tunnel, /mcp requests pass through the tunnel provider.
  • Security:
  • The board, its API and its WebSocket only answer localhost requests from localhost pages. Other websites and tunnels are refused, which also blocks DNS-rebinding attacks.
  • The HTTP endpoint (/mcp) always requires the token.
  • Sharing and retention: nothing is sold or shared. Data stays until you clear the board or delete ~/.sysdesign-board/.
  • Contact: open an issue.

Troubleshooting

  • The server doesn't appear in Claude Desktop. Claude was probably running when the config was edited and saved over it. Quit it fully, run npx -y sysdesign-board install, then reopen.
  • "npx: command not found" in Claude's logs. Use an absolute path to npx (see Option C), or run npx -y sysdesign-board install, which writes absolute paths for you.
  • Port 4321 is taken. Set SYSDESIGN_PORT (or --port=5000). In the .mcpb extension it's a setting.
  • The mic does nothing. Open the board in Chrome, Edge or Safari and allow microphone access.
  • Several apps connected at once? That's fine. The first one hosts the board and the others share it.

CLI

sysdesign-board            MCP server over stdio (what AI apps launch)

sysdesign-board serve Board + HTTP MCP endpoint only sysdesign-board install Add to Claude Desktop (quit it first) [--npx | --local] sysdesign-board token Print the HTTP MCP token / URL

Development

git clone <this repo> && cd sysdesign-board

npm install npm run dev

npm run dev starts the hub on :4321 with reload, and Vite on :5173. Other scripts:

CommandWhat it does
npm run buildBuilds the board UI and bundles the server into one file
npm run build:mcpbPacks build/sysdesign-board- .mcpb
npm run typecheckType-checks the web and server code
node scripts/mcp-smoke.mjsDrives every MCP tool against a running board
npm run lock:pluginRefreshes the Claude plugin's package-lock.json (run after the new version is on npm)

Releasing a new version:

  1. Run npm version --no-git-tag-version. This also updates server.json and the plugin's version and pinned dependency.
  2. Run npm publish.
  3. Run npm run lock:plugin. The lockfile needs the published package's checksum, so this comes after publishing.
  4. Commit, then tag and push.
  5. Make a GitHub release with npm run build:mcpb.
  6. Run mcp-publisher publish for the MCP Registry.

The code lives in three folders:

  • web/: the board (React UI plus the canvas engine in web/src/engine.ts; renderer and component glyphs in web/src/render/)
  • server/: the hub (HTTP, WebSocket and persistence), the MCP tools and the CLI
  • shared/: the data model, component catalog and geometry

License

MIT

ถาม PopNx