Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Deterministic HVAC duct sizing at a fixed or Manual D friction rate; grades existing ducts.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"openmep": {
"command": "npx",
"args": [
"-y",
"@openmep/mcp"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add openmep -- npx -y @openmep/mcpวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"openmep": {
"command": "npx",
"args": [
"-y",
"@openmep/mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"openmep": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@openmep/mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub samarmstrong ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.2.0) เข้า registry 30 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, zanadir
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.
Find what a repository's CI is missing, and which security checks cannot fail the build.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
An MCP server that gives any agent OpenMEP's deterministic HVAC duct sizing. No editor, CAD host, account, or network access: the agent describes the ducts, the engine sizes them.
{
"mcpServers": { "openmep": { "command": "npx", "args": ["-y", "-p", "@openmep/mcp", "openmep-mcp"] } } }
Claude Code: claude mcp add openmep -- npx -y -p @openmep/mcp openmep-mcp. Requires Node.js 24+. Transport: stdio.
| Tool | Input | Returns | |
|---|---|---|---|
size_duct | cfm, optional role (main/branch/runout), airflowType (supply/return/exhaust/outside-air), existing section ({diameterIn} or `{shape: rect\ | oval, widthIn, heightIn}`) | Recommended standard round diameter, velocity, friction; for an existing section its circular equivalent and ok/undersized/oversized |
size_duct_network | items: terminals with requiredCfm, segments (optionally with existing and lengthFt), fittings (optionally equivalentLengthFt), equipment, linked by connectedItemRefs; optional fan (externalStaticInWg, componentLossesInWg) | Every loaded segment's CFM, role, recommendation, and grade; with fan, the Manual D design (available static, total effective length, friction rate, governing paths); findings for missing CFM, disconnected terminals, dangling references, mixed systems, undersized and oversized runs, friction rate outside 0.06–0.18 |
Both tools are read-only and idempotent. Invalid input comes back as a tool error naming the field (NetworkInputError [invalid-item]: items[2].requiredCfm: ...) so the model can correct it.
Example prompt that works in a fresh Claude Code session with only this server:
I have a furnace feeding a supply trunk that tees into two runouts: bedroom 1
needs 120 CFM, bedroom 2 needs 90 CFM, and the living room is fed off the trunk
end at 200 CFM. All drawn as 6 inch round. One return grille in the hall at
410 CFM on a 10 inch drop. Is anything undersized?
The agent builds the network in one size_duct_network call and reports 7, 6, and 8 in runouts, an 11 in trunk, and a return drop just under size at 10 in.
Equal friction at 0.08 in. w.g./100 ft, or at the Manual D rate derived from the blower's available static pressure when fan and lengths are given, with role-based velocity caps per system, rounded up to standard round diameters; see @openmep/hvac-domain for the formula, sources, and what is excluded (fitting losses, static pressure summation, fan selection). Airflow is a design input the server never estimates. Treat results as preliminary sizing for an engineer to review.
The server uses the official MCP TypeScript SDK and speaks the initialize-handshake protocol revisions (through 2025-11-25), which current clients support.
import { createOpenMepServer } from "@openmep/mcp";
await createOpenMepServer().connect(transport); // any MCP server transport