Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Generate Compose Multiplatform apps, Unity games and Ktor backends locally from tested templates.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"cmpose": {
"command": "npx",
"args": [
"-y",
"@cmpose/mcp"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add cmpose -- npx -y @cmpose/mcpวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"cmpose": {
"command": "npx",
"args": [
"-y",
"@cmpose/mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"cmpose": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@cmpose/mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ผู้ลงทะเบียน (Keremturker) ไม่ใช่เจ้าของ repo (whinstudio) อาจเป็นคนอื่นที่นำมาลงต่อ
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 0 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (2.4.3) เข้า registry เมื่อวาน
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Zoo MCP
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
An MCP server that provides access to the Zoo API for various CAD operations and tools.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Ask your AI agent for a Compose Multiplatform app and get a real, buildable Android + iOS project on disk, generated locally from a tested template. It also generates Unity mobile games (Android + iOS) and standalone Kotlin/Ktor backends. This is a local stdio MCP server with six tools: cmp_describe, cmp_generate, game_describe, game_generate, backend_describe and backend_generate. It runs on your machine, with no account, no API key and no upload.
"Create a blank Compose Multiplatform app called Habits, package com.acme.habits, in
~/Projects, with Room, light/dark theming and AdMob ads."
Developer guide for generated projects: https://whinstudio.github.io/cmpose/guide.html
Requires Node.js 20+ and git.
Claude Code
claude mcp add -s user cmpose -- npx -y @cmpose/mcp
Claude Desktop, Cursor, Windsurf and other MCP clients (mcpServers config):
{
"mcpServers": { "cmpose": { "command": "npx", "args": ["-y", "@cmpose/mcp"] } } }
VS Code (.vscode/mcp.json):
{
"servers": { "cmpose": { "type": "stdio", "command": "npx", "args": ["-y", "@cmpose/mcp"] } } }
Every project has androidApp, iosApp (Xcode project), a shared module with Koin and Navigation, logging (Kermit), image loading (Coil), in-app review, update check, an About screen, a build-logic with convention plugins, and a README with a release checklist.
showcase (home, onboarding and paywall demo screens) or blank (a start screen that lists your modules and a demo of each option you pick)."Create a 2D Unity game called SkyHopper, package com.acme.skyhopper, in ~/Projects, blank,
with ads and leaderboards"
Every game project is a Unity 6 project (editor 6000.3.25f1, URP) for Android and iOS, with VContainer + UniTask, a uGUI interface, a Boot → Menu → Game scene flow, a settings screen, saving, deep links, and in-app review and update check.
showcase (a sample game with every flag on: a 2D runner, or a 3D track with render: "3d") or blank (an empty game with the flags you pick). render is 2d (default) or 3d.saveSystem, multiLang, network, networkInspector (needs network, added for you), purchases (RevenueCat), ads (AdMob), leaderboards (Google Play Games and Game Center) and insights (Firebase Crashlytics + Analytics; off until you add google-services.json and GoogleService-Info.plist to Assets/Firebase, reported as a warning).ids takes your real AdMob (admob), RevenueCat (revenueCat) and Play Games + Game Center (gameServices) IDs, each group with its flag; game_describe lists the fields. A group you leave out keeps the test IDs / placeholders and is reported as a warning.bright, neon, pastel, bold, nature, clean; palette, shapes, motion and a font pair), listed by game_describe under themes with what each suits. theme: { family, primary, accent, fontPair }, every field optional: primary and accent (#RRGGBB) recolour the family with their lightness shifted until text and buttons keep their contrast; a colour that still cannot pass keeps the family's and is reported as a warning. Without theme the project gets clean, exactly as the template ships it."Create a backend called NotesBackend, service name notes-api, package com.acme.notes, in
~/Projects, with sharing"
Every backend is a Kotlin (JVM 21) Ktor server with PostgreSQL (Exposed, Flyway), Firebase ID tokens verified on the server (no Admin SDK), file uploads, account deletion, one sample feature to copy, a security checklist, a local runner (./gradlew runLocal) and the parts to deploy it as one Docker container behind nginx. sharing adds spaces, roles and invitations.
cmp_describe: the defaults, the options and the rules (name formats, limits, which option needs which). Agents call it first.cmp_generate: creates the project. Required: projectName (letters only, up to 30), appName (up to 30 characters), packageName (e.g. com.acme.habits, up to 50 characters) and an absolute outputDir. Optional: templateType, features (module names up to 20), featuresConfig, minSdk (24 to 36), iosVersion (15.0 to 26.2), ci, templateRef, backendTemplateRef (the backend template tag that server/ comes from; blank with the backend only). It returns the project path, the template version it used, warnings (e.g. test ad IDs to replace) and next steps.game_describe: the Unity game generator's engine and editor version, template types, renders, flags and their dependencies, ID groups, defaults, limits and the pinned template's theme families (themes: default and each family's id, title, suits and fontPairs; the first call downloads the template). Agents call it first.game_generate: creates the game. Required: projectName (1 to 30 letters or digits, starting with a letter), appName (up to 30 characters), packageName (e.g. com.acme.skyhopper, at least 3 segments, up to 50 characters) and an absolute outputDir. Optional: companyName (like projectName; by default the package's second segment, capitalized), templateType, render, flags, features (module names: 1 to 20 lowercase letters or digits, starting with a letter), minSdk (25 to 36), iosVersion (15.0 to 26.2, written as major.minor), ids, theme, templateRef. It never overwrites a non-empty folder. The result names the applied theme (theme) and lists colour fallbacks among the warnings.backend_describe: the backend generator's options, appName rules, the project anatomy and the conventions to follow when adding code (protected routes, the 404 rule, where features go, the security checklist, the quotas, the local runner and the deploy parts). Agents call it first.backend_generate: creates the backend. Required: projectName (letters only, up to 30), appName (the service name: 2 to 31 lowercase letters, digits or -, starting with a letter; not api, health, admin or static), packageName (e.g. com.acme.notes) and an absolute outputDir. Optional: sharing (default false), sample (the sample items feature, default true), templateRef. It never overwrites a non-empty folder. CMPOSE_BACKEND_TEMPLATE_DIR (the absolute path of a backend template checkout) generates from that checkout instead of the pinned tag.Generation runs entirely on your machine. The first call downloads the pinned template (whinstudio/cmpose-template) into $XDG_CACHE_HOME/cmpose (else ~/.cache/cmpose; override with CMPOSE_CACHE_DIR), and later calls reuse it. Games come the same way from the pinned game template (whinstudio/cmpose-game-template); Unity never runs during generation. Backends come from the pinned backend template (whinstudio/cmpose-backend-template). Each release pins one tag of each template, so @cmpose/mcp@x.y.z always generates the same project.
Source and issues: github.com/whinstudio/cmpose. MIT licensed. The projects you generate are yours.