프로토타입 · 미리 보기: 공식 레지스트리의 모든 서버를 담고 있으며 30분마다 동기화해요. Google로 로그인하면 리뷰를 쓸 수 있어요.
PopNx MCPAI를 쓰는 사람을 위한 MCP 서버 · 쉬운 말로 설명해요

tsquare wireframes

제작자: tsquare-js버전 0.14.5i★ 7i클라우드에서 실행
레지스트리 이름dev.tsquare/tsquare

설치 방법

개요

제작자가 쓴 설명(영어 원문)

Draws UI wireframes from a small text language: multi-screen boards with notes and flow arrows.

할 수 있는 일

이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.

  • 연결 방식: 클라우드에서 실행
  • 전송 방식: Streamable HTTP
  • 카테고리: 문서, 시트 및 사무 업무

설치

쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.

검사 5/5 통과 · 내가 묻는 내용은 제작자 서버(tsquare.dev)를 거쳐요

먼저: 어떤 AI를 쓰시나요?

쓰는 앱을 고르면 아래에 단계가 나옵니다.

Claude에 연결할 수 있어요 · 약 2분

키 필요 없음, 설치 필요 없음 · claude.ai나 데스크톱 앱에서 한 번 설정하면 채팅에서 쓸 수 있어요 · 무료 계정은 1개까지

  1. Claude의 Connectors 페이지 열기

    CustomizeConnectors

    CustomizeConnectors1+ Add2https://…3Add4
  2. “+ Add” → “Add custom connector”를 누르고 이 2칸 채우기

    여기서 복사해 Claude의 같은 이름 칸에 붙여 넣고 Continue를 누르세요

    Name · 이름tsquare wireframes
    Remote MCP server URL · 주소https://tsquare.dev/mcp

    Authentication은 Claude가 찾은 그대로 두고 Add를 누르세요

  3. 채팅에서 켜기

    +Connectorstsquare wireframes

  4. 해 보기

    tsquare wireframes을 써서 나에게 무엇을 해 줄 수 있는지 알려 주고, 하나 해 봐

    ✓ Claude가 tsquare wireframes을 쓰고 있다고 하거나 답에 tsquare wireframes 도구 이름이 나오면 연결된 거예요

메뉴 이름은 2026년 11월 11일에 Anthropic 도움말에서 확인 · 앱 버전에 따라 화면이 조금 다를 수 있어요

ChatGPT는 기업용 요금제에서만 연결돼요

웹의 ChatGPT Business, Enterprise, Edu에서 워크스페이스 관리자나 소유자가 추가해요 · Free, Plus, Pro를 쓰면: 내 ChatGPT 요금제로는 아직 MCP를 직접 연결할 수 없어요

  1. 웹 ChatGPT에서 MCP 추가 페이지 열기

    Plugins+Add custom MCP server

    ChatGPTPlugins1+2https://…3Create4
  2. 이름과 주소 입력

    이름을 넣고 Connection에 주소를 붙여 넣은 뒤 경고에 체크하고 Create as a plugin을 누르세요

    Name · 이름tsquare wireframes
    Connection · 주소https://tsquare.dev/mcp
  3. 채팅에서 tsquare wireframes 고르기

    새 채팅을 열고 입력 전에 플러그인 목록에서 tsquare wireframes을 고르세요

  4. 해 보기

    tsquare wireframes을 써서 나에게 무엇을 해 줄 수 있는지 알려 주고, 하나 해 봐

    ✓ ChatGPT가 tsquare wireframes을 쓰고 있다고 하거나 답에 tsquare wireframes 도구 이름이 나오면 연결된 거예요

메뉴 이름은 2026년 11월 11일에 OpenAI 도움말에서 확인 · 앱 버전에 따라 화면이 조금 다를 수 있어요

Claude Code에 연결할 수 있어요 · 약 2분

키 필요 없음, 설치 필요 없음

  1. 터미널 열기

    Mac: Command+스페이스를 누르고 Terminal 입력 · Windows: PowerShell 열기

  2. 이 명령을 붙여 넣고 Enter

    claude mcp add --transport http tsquare https://tsquare.dev/mcp
  3. Claude Code에서 /mcp 입력

    tsquare wireframes이 목록에 있고 연결됨으로 보이면 돼요

  4. 해 보기

    tsquare wireframes을 써서 나에게 무엇을 해 줄 수 있는지 알려 주고, 하나 해 봐

    ✓ Claude Code가 tsquare wireframes을 쓰고 있다고 하거나 답에 tsquare wireframes 도구 이름이 나오면 연결된 거예요

메뉴 이름은 2026년 11월 11일에 Anthropic 도움말에서 확인 · 앱 버전에 따라 화면이 조금 다를 수 있어요

Cursor에 연결할 수 있어요 · 약 2분

키 필요 없음, 설치 필요 없음

  1. 이 버튼으로 Cursor 열기

    Cursor에서 열기

    Cursor가 설치를 확인하면 Install을 누르세요

  2. Cursor에서 AI 채팅을 Agent 모드로 열기

  3. 해 보기

    tsquare wireframes을 써서 나에게 무엇을 해 줄 수 있는지 알려 주고, 하나 해 봐

    ✓ Cursor가 tsquare wireframes을 쓰고 있다고 하거나 답에 tsquare wireframes 도구 이름이 나오면 연결된 거예요

메뉴 이름은 2026년 11월 11일에 Cursor 도움말에서 확인 · 앱 버전에 따라 화면이 조금 다를 수 있어요

VS Code에 연결할 수 있어요 · 약 2분

키 필요 없음, 설치 필요 없음

  1. 이 버튼으로 VS Code 열기

    VS Code에서 열기

    VS Code가 설치를 확인하면 Install을 누르세요

  2. VS Code에서 AI 채팅을 Agent 모드로 열기

  3. 해 보기

    tsquare wireframes을 써서 나에게 무엇을 해 줄 수 있는지 알려 주고, 하나 해 봐

    ✓ VS Code가 tsquare wireframes을 쓰고 있다고 하거나 답에 tsquare wireframes 도구 이름이 나오면 연결된 거예요

메뉴 이름은 2026년 11월 11일에 VS Code 도움말에서 확인 · 앱 버전에 따라 화면이 조금 다를 수 있어요

Windsurf, Zed, Gemini CLI 같은 다른 MCP 앱은 추가 방법이 저마다 달라요. 앱 목록에서 확인하세요

MCP를 쓰는 앱 모두 보기 →

웹으로 연결하는 앱용 주소

주소https://tsquare.dev/mcp

JSON 설정은 아래 “개발자용”에 있어요

막혔나요? tsquare wireframes을 쓰는 사람에게 물어보세요💬 토론 →
개발자용: 터미널 명령과 JSON 설정

웹으로 연결

Claude Code

claude mcp add --transport http tsquare https://tsquare.dev/mcp

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "tsquare": {
      "url": "https://tsquare.dev/mcp"
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "tsquare": {
      "type": "http",
      "url": "https://tsquare.dev/mcp"
    }
  }
}

이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.

한눈에 보기

주간 다운로드i
npm/PyPI에 없음
확인된 도메인
✓ tsquare.dev
연결 방식
클라우드에서 실행
전송 방식
streamable-http
최신 버전i
0.14.5
레지스트리 공개i
2026년 11월 11일
코드 마지막 변경i
2026년 11월 11일
제작자
tsquare-js
웹사이트
tsquare.dev
레지스트리 상태
활성

어떤 앱에서 쓸 수 있나요

이 서버의 연결 방식과 각 앱의 공식 문서를 바탕으로 했어요. 2026년 11월 10일 확인.

인터넷으로 연결하는 앱

ClaudeChatGPTGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast

모든 앱과 장단점 →

할 수 있는 일

도구 이름과 설명은 서버가 2026년 11월 11일에 알려 준 그대로예요. 우리가 아니라 제작자가 쓴 글이고, 일반 텍스트로만 보여 드려요.

  • wireframe_guide

    The tsquare language reference: the text format, the rules, a worked example and every component with its props. Meant to be read once, before the first wireframe; it returns the same text every time.

  • render_wireframe

    Checks tsquare wireframe text and renders it. Returns a PNG of the board, or, if the text isn't valid, each problem with its line number and the valid options.

  • share_wireframe

    Links for valid tsquare wireframe text, the same kinds as the playground's Copy link menu: a share link that opens it in the playground for editing, SVG and PNG image links, Markdown and HTML. Returns an SVG image link and the share link unless `links` asks for others. Each link

기본 점검i

누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 12일 점검

  • ✓ 통과

    제작자와 저장소 일치

    레지스트리 이름이 도메인 tsquare.dev 기준으로 확인되었어요(레지스트리가 도메인 소유를 확인해요)

  • ✓ 통과

    계속 관리되고 있음

    코드 마지막 변경: 어제

  • ✓ 통과

    라이선스 있음

    MIT 사용

  • ✓ 통과

    엔드포인트 응답

    408ms 만에 응답(HTTP 200)

  • – 해당 없음

    OAuth로 로그인

    로그인 필요 없음

  • ✓ 통과

    도구 설명에 숨겨진 지시 없음

    도구 설명 3개를 읽었고, AI에게 보내는 숨겨진 지시는 없었어요

토론

질문하고, 팁을 나누고, 안 되는 점을 알려 주세요. "도움이 됨"이 많은 순서예요.

아직 글이 없어요. 처음으로 질문하거나 공유해 보세요.

이곳의 글은 사용자가 쓴 것으로, PopNx 팀의 글이 아니에요.

Google로 로그인하고 글쓰기

사용자 리뷰

아직 리뷰가 없어요

Google로 로그인하고 리뷰 쓰기

문서, 시트 및 사무 업무 카테고리의 다른 서버와 비교i

  • 이 카테고리의 다른 서버 3767개 중 93%보다 스타가 많아요
  • 이 카테고리의 다른 서버 3767개 중 98%보다 최근에 레지스트리에 공개됐어요
  • 기본 점검 결과가 이 카테고리의 다른 서버 3767개 중 100%와 같거나 더 좋아요

레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.

자주 묻는 질문

tsquare wireframes, 안전한가요?

해당하는 기본 점검 5개 중 5개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.

어떤 키나 코드가 필요한가요?

레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.

내 컴퓨터에서 실행되나요, 클라우드에서 실행되나요?

제작자의 클라우드에서 실행돼요. 설치 없이 인터넷으로 연결하지만, 보내는 내용은 제작자의 서버를 거쳐요.

아직 관리되고 있나요?

GitHub 저장소는 마지막으로 어제 변경됐고, 최신 버전(0.14.5)은 어제 레지스트리에 올라왔어요.

어떤 앱에서 쓸 수 있나요?

Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. URL로 연결되므로 원격 MCP를 지원하는 앱에서도 쓸 수 있어요. 예: ChatGPT Business 이상.

대신 쓸 수 있는 건 뭐가 있나요?

같은 카테고리에는: Puter MCP, XcodeBuildMCP, XcodeBuildMCP

대안

같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.

카드 보는 법:↓ 주간 다운로드i★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i

Puter MCP

Puter MCP enables AI tools to interact with Puter: manage files, websites, workers, and more

제작자: HeyPuter널리 사용됨★ 4.4만5개월 전 업데이트

클라우드에서 실행✓ puter.com

XcodeBuildMCP

XcodeBuildMCP provides tools for Xcode project management, simulator management, and app utilities.

제작자: getsentry널리 사용됨↓ 13만/주★ 6.6천4개월 전 업데이트

내 컴퓨터에서 실행✓ xcodebuildmcp.com

XcodeBuildMCP

XcodeBuildMCP provides tools for Xcode project management, simulator management, and app utilities.

제작자: cameroncooke널리 사용됨↓ 13만/주★ 6.6천14개월 전 업데이트

내 컴퓨터에서 실행

제작자의 README

README 열기

제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.

tsquare

Wireframes in plain text: easy for LLMs to write, fast to render as SVG or PNG. A small text language for low-fidelity screens, with several devices side by side and notes beside them. Built for LLMs to write: the prompt comes from the component catalog, and errors come back with line numbers so a model can fix its own output.

board "Login"

screen phone "Sign in" heading "Welcome back" input "Email" placeholder="you@example.com" input password "Password" checkbox "Remember me" checked button primary "Sign in" fullWidth

Save that as login.tsq, then:

npx tsquare render login.tsq -o login.png --scale 2

Requires Node 20 or newer. To work on tsquare itself, clone the repo, run npm install, and use npm run render -- examples/notes-mobile.tsq -o notes.png --scale 2.

Docs

Getting started · The language · Components · Icons · Colors · Using it with AI

Playground

Online at tsquare.dev/playground, or locally:

npx tsquare playground   # http://localhost:4321
  • Editor: syntax highlighting, autocomplete for components, options, props, icons and colors, and problems underlined by line. Paste a whole model reply and it keeps just the code block.
  • Preview: renders as you type. Zoom and pan (⌘/Ctrl + scroll or pinch), jump to a single screen, or go full screen.
  • Links: copy a share link that reopens the wireframe in the playground, or an image link (SVG, PNG, Markdown, HTML) to embed it anywhere.
  • Examples with thumbnails, light and dark themes, a resizable split, and SVG/PNG export.
  • Components: every component with its props and a rendered example. Prompt: the system prompt for models, with a copy button.

The local playground uses the same renderer as the CLI; its links point to tsquare.dev. In this repo, npm run playground runs it from source.

Image links

A wireframe can be embedded anywhere an image works (Notion, GitHub, docs sites) with a link that contains the wireframe itself:

![Login](https://tsquare.dev/svg/zNYwxDsIwEAT7vGJ…)

The playground's Copy link menu makes these; Embedding has the steps for Notion, GitHub and your own site. The text is compressed into the URL, not encrypted, so anyone with the link can read it; see privacy. encodeWireframe and decodeWireframe in the library produce and read the same links.

Use it with

With AI

  • Claude: the tsquare skill teaches Claude the language and how to check its own wireframes.
  • Any model: the system prompt, or the hosted MCP server for Claude, ChatGPT, Cursor, VS Code and other tools that take a remote MCP URL.

In your docs

  • Docusaurus, Astro, MDX: remark-tsquare draws ```tsquare code blocks when the site is built.
  • VitePress, Eleventy: markdown-it-tsquare, the same for sites built on markdown-it.
  • Any web page: one script tag draws the code blocks in the reader's browser, with no build step.
  • Notion, GitHub and anywhere an image works: image links.

In your app

  • React: @tsquare-js/react shows boards, a zoomable viewer, an editor and a playground, including boards in a model's reply while it's still streaming in.
  • Node or the browser: the library itself.

In your editor and notes

  • VS Code (and Cursor, VSCodium, Windsurf): the tsquare extension gives .tsq files a live preview, problems as you type, highlighting and autocomplete. Also on Open VSX.
  • Obsidian: the tsquare plugin draws ```tsquare code blocks in your notes, on desktop and mobile. See the Obsidian page.

The language

One element per line; children are indented two spaces under their parent. The first line is the board.

You writeIt means
button "Sign in"a quoted string sets the main text (label, title, text…)
button primary lgbare words set options: phone, desktop, primary, ghost, row, sm, left, bottom, password…
checkbox checked, toggle offa prop name turns a boolean on; off / unchecked / no- turn it off
stack width=240 gap=8key=value sets any prop
tabs items=[All notes, Pinned]lists in [ ], items separated by commas; an item can contain spaces
data=[["$1,200", "Smith, J"]]quote an item that contains a comma (\" for a quote inside quotes)
tabbar items=[{label=Home icon=home}]objects in { }
# note to selfa comment, on its own line only; elsewhere # is text ([#1001, #1002])

If a bare word could mean two props (for example start, which is both an align and a justify value), write it as key=value. Code fences ( ``` ) are ignored, so a model's reply can be rendered as-is.

Structure

  • The top element is a board. Its children are screens, plus optional notes beside them.
  • A screen stacks its children vertically. A navbar is pinned to the top and a tabbar to the bottom.
  • modal and drawer are overlays and must be direct children of a screen.

Colors

Wireframes are grayscale. There are three deliberate exceptions in the UI itself:

You writeIt colors
board "App" accent=blueprimary buttons, solid badges, checked checkboxes and radios, toggles that are on, the active tab and tab-bar item, ghost button text
badge "Failed" tone=dangerone badge: success, warning or danger
input "Email" error helper="Required"the field's border and helper text, in red

accent takes blue, indigo, violet, pink, red, orange, green or teal, or a hex color like #1a73e8. With a light hex color, text on it switches to dark and accent-colored text is darkened so it stays readable. There are no other UI color props, on purpose.

Sticky notes beside the wireframe have their own colors, since they're annotations rather than part of the UI: note "TBD" color=pink (yellow is the default, plus blue, pink and green). See Colors for more.

Components

GroupComponents
Canvasboard, screen (phone 390×844, tablet 820×1180, desktop 1280×800, custom), note
Layoutstack, grid, card, divider, spacer
Contentheading, text (lines=3 draws placeholder lines), image (X-box placeholder), icon (any Lucide name or a brand logo such as brand-google, see Icons), avatar, badge
Controlsbutton, input (multiline=4 for a textarea), checkbox, radio, toggle, select
Navigation & datanavbar, tabbar, tabs, list, listitem, table
Overlaysmodal, drawer (left, right, bottom sheet)

Each component has its own page with a rendered example and its props: see Components.

CLI

tsquare render <file.tsq|-> [-o out.svg|out.png] [--scale 2]

tsquare check # problems by line number tsquare fmt [-w] # canonical formatting (drops comments) tsquare prompt # system prompt for models tsquare playground [--port 4321] # live editor, component reference, prompt

Run them with npx tsquare … (nothing to install), or install the tsquare command with npm install -g tsquare. Use - to read from stdin. In this repo, run them through npm: npm run check -- file.tsq. Files use the .tsq extension; the CLI reads any text file.

Library

npm install tsquare
import { renderWireframe, compileWireframe, formatIssues } from "tsquare";

const { issues } = compileWireframe(source); // problems by line, empty when valid const png = await renderWireframe(source, { format: "png", scale: 2 });

tsquare/playground exports the playground's request handler, for hosting it inside your own Node server. tsquare/viewer is the playground's zoomable board (zoom, pan, pinch, a chip per screen) for your own page: pass it the elements, then show() the SVG from renderWireframeSvg with the size and screens from measureBoardLayout (exact; boardLayout is a synchronous estimate that can be off by a line or more on boards with notes). It sets the styles its zoom math needs itself; give the stage a size, and optionally style the classes it toggles on the stage: panning (while dragging), animate (while fitting or zooming to a screen, e.g. .animate > * { transition: transform .25s }) and stale (from setStale, e.g. .stale img { opacity: .35 }). Call destroy() when you remove it. Give it the board's measureElements entries (setElements) and it reports clicks and hovers on elements, outlines them (highlight) and zooms to them (zoomTo): see Element positions. languageData() lists every component, prop, option word, icon and accent, for editor highlighting and autocomplete. In a browser bundle (esbuild, Vite, webpack) the same imports render SVG with no setup; PNG and share links need Node. On a page without a build step, draws every ```tsquare code block on the page (see Embedding). See Using it with AI for the prompt and the repair loop. measureElements gives each element's box on the board and its line in the text, and elementsAt what's under a click, for making a board clickable (see Element positions).

The editor: tsquare/editor

The playground's code editor for your own page: highlighting, autocomplete for components, props, option words, icons and accents, problems underlined on their lines, Enter keeping the indentation, and pasting a whole model reply keeps just its code block. CodeMirror is bundled inside (about 125 KB compressed once your bundler minifies it), so it imports nothing and can't clash with a CodeMirror your page already has.

import { createEditor } from "tsquare/editor";

import { compileWireframe, languageData } from "tsquare";

const editor = createEditor(document.getElementById("code")!, { doc: "board\n screen phone", data: languageData(), // autocomplete; leave it out for none onChange: (text) => editor.setIssues(compileWireframe(text).issues), });

Give the element a height; the editor fills it. Options: doc, data, onChange, onCursorLine (the caret's line, when it moves to another), lineNumbers (default true), lineWrapping (default false: wrap long lines instead of scrolling sideways, continuation rows indented 4 spaces past their line's indentation, so they don't look like a child element) and ariaLabel (default "Wireframe text"). The editor has getText(), setText(text) (one

앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요