Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Quadruple consensus MCP server for code validation using Codex, Gemini, and Qwen
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"tetrad": {
"command": "npx",
"args": [
"-y",
"@samoradc/tetrad"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add tetrad -- npx -y @samoradc/tetradวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"tetrad": {
"command": "npx",
"args": [
"-y",
"@samoradc/tetrad"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"tetrad": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@samoradc/tetrad"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub SamoraDC ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.12) เข้า registry 9 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, FactLot
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.
Cited CRE facts and deterministic calculators for agents: rent, CAM, debt sizing, IRR, parcel IDs.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Quadruple Consensus MCP Server for Claude Code
Tetrad is a high-performance MCP (Model Context Protocol) server written in Rust that orchestrates three AI-powered CLI code evaluation tools (Codex, Gemini CLI, Qwen) to validate all code produced by Claude Code.
The system implements a quadruple consensus protocol where no code or plan is accepted without approval from four intelligences: the three external evaluators + Claude Code itself.
init, serve, status, doctor, config, etc.)# Via npm (recommended - works seamlessly with Claude Code)
npm install -g @samoradc/tetrad
cargo install tetrad sudo cp ~/.cargo/bin/tetrad /usr/local/bin/
npx @samoradc/tetrad init
This will:
tetrad.toml configuration file.tetrad/ directory for the database.tetrad/ to your .gitignoreTetrad requires at least one of the following AI CLI tools. Good news: you don't need separate API keys if you have existing subscriptions!
npm install -g @openai/codex
Authentication options:
| Method | Requirements | API Key Needed? |
|---|---|---|
| ChatGPT Login | ChatGPT Plus, Pro, Business, Edu, or Enterprise subscription | No |
| API Key | OpenAI API account with credits | Yes |
# Option 1: Login with your ChatGPT subscription (recommended)
codex login
export OPENAI_API_KEY="your-openai-key"
Note: For headless/remote servers, use
codex login --device-authand follow the device code flow.
📖 Codex CLI Authentication Docs
npm install -g @google/gemini-cli
Authentication options:
| Method | Requirements | API Key Needed? | Free Tier |
|---|---|---|---|
| Google Login | Personal Google account | No | 60 req/min, 1,000 req/day |
| API Key | Google AI Studio account | Yes | Same limits |
# Option 1: Login with Google account (recommended)
gemini auth login
export GEMINI_API_KEY="your-gemini-key"
Free Tier: With a personal Google account, you get access to Gemini 2.5 Pro with 1M token context window at no cost!
📖 Gemini CLI Authentication Docs
npm install -g qwen-code
Authentication options:
| Method | Requirements | API Key Needed? | Free Tier |
|---|---|---|---|
| DashScope API | Alibaba Cloud account | Yes | 2,000 req/day |
| Coding Plan | Qwen Coding subscription | Yes (different format) | Included |
# Get your API key from DashScope console
export DASHSCOPE_API_KEY="your-dashscope-key"
export OPENAI_BASE_URL="https://dashscope-intl.aliyuncs.com/compatible-mode/v1"
Regional Endpoints:
- Singapore:
dashscope-intl.aliyuncs.com
- Virginia:
dashscope-us.aliyuncs.com
- Beijing:
dashscope.aliyuncs.com
# Check Tetrad version
tetrad version
tetrad status
tetrad doctor
# Add Tetrad as MCP server (all projects)
claude mcp add --scope user tetrad -- npx @samoradc/tetrad serve
claude mcp list
Alternative installation methods
# Current project only
claude mcp add tetrad -- npx @samoradc/tetrad serve
claude mcp add --scope user tetrad -- tetrad serve
Note: Tetrad is published on the MCP Registry for discoverability and documentation.
Create or edit .mcp.json in your project root:
{
"mcpServers": { "tetrad": { "type": "stdio", "command": "npx", "args": ["@samoradc/tetrad", "serve"], "env": { "OPENAI_API_KEY": "${OPENAI_API_KEY}", "GOOGLE_API_KEY": "${GOOGLE_API_KEY}", "DASHSCOPE_API_KEY": "${DASHSCOPE_API_KEY}" } } } }
Or for global user configuration in ~/.claude.json (mcpServers section):
{
"mcpServers": { "tetrad": { "type": "stdio", "command": "npx", "args": ["@samoradc/tetrad", "serve"] } } }
When you ask Claude Code to write code, Tetrad automatically validates it:
You: "Create a function in Rust that calculates the average of a vector"
Claude Code:
Tetrad Response: ┌─────────────────────────────────────────────┐ │ DECISION: PASS ✓ │ │ Score: 92/100 │ │ Consensus: Yes (3/3 approved) │ │ │ │ Votes: │ │ • Codex: Pass (95) │ │ • Gemini: Pass (90) │ │ • Qwen: Pass (92) │ │ │ │ Suggestions: │ │ - Consider handling empty vector case │ └─────────────────────────────────────────────┘
Claude Code: Saves the approved code
Tetrad Response:
┌─────────────────────────────────────────────┐ │ DECISION: BLOCK ✗ │ │ Score: 26/100 │ │ Consensus: Yes (3/3 rejected) │ │ │ │ Votes: │ │ • Codex: Fail (30) - division by zero │ │ • Gemini: Fail (25) - no error handling │ │ • Qwen: Fail (25) - unsafe operation │ │ │ │ Issues: │ │ - Division by zero not handled │ │ - Missing input validation │ │ - No Result/Option return type │ └─────────────────────────────────────────────┘
Claude Code: Fixes the code and resubmits
tetrad - Quadruple Consensus CLI for Claude Code
COMMANDS: init Initialize configuration in current directory serve Start the MCP server (used by Claude Code) status Show CLI status (codex, gemini, qwen) config Configure options interactively doctor Diagnose configuration issues version Show version evaluate Evaluate code manually (without MCP) history Show evaluation history from ReasoningBank export Export patterns from ReasoningBank import Import patterns into ReasoningBank
OPTIONS: -c, --config Configuration file (default: tetrad.toml) -v, --verbose Verbose mode -q, --quiet Quiet mode -h, --help Show help
When running as MCP server, Tetrad exposes 6 tools:
| Tool | Description |
|---|---|
tetrad_review_plan | Review implementation plans before coding |
tetrad_review_code | Review code before saving |
tetrad_review_tests | Review tests before finalizing |
tetrad_confirm | Confirm agreement with received feedback |
tetrad_final_check | Final verification before commit |
tetrad_status | Check health of evaluators |
1. Claude Code generates plan → tetrad_review_plan → Feedback
Claude Code → MCP Protocol (stdio) → Tetrad Server (Rust)
│ ┌─────────────────────┼─────────────────────┐ ▼ ▼ ▼ Codex CLI Gemini CLI Qwen CLI (syntax) (architecture) (logic) │ │ │ └─────────────────────┼─────────────────────┘ ▼ Consensus Engine │ ┌─────────────┴─────────────┐ ▼ ▼ LRU Cache ReasoningBank (results) (SQLite) RETRIEVE→JUDGE→DISTILL→CONSOLIDATE
| Executor | CLI | Specialization |
|---|---|---|
| Codex | codex exec --json | Syntax and code conventions |
| Gemini | gemini -o json | Architecture and design |
| Qwen | qwen | Logic bugs and correctness |
| Rule | Requirement | Use Case |
|---|---|---|
| Golden | Unanimity (3/3) | Critical code, security |
| Strong | 3/3 or 2/3 with high confidence | Default |
| Weak | Simple majority (2/3) | Rapid prototyping |
The ReasoningBank is a continuous learning system that stores and consolidates code patterns:
RETRIEVE → JUDGE → DISTILL → CONSOLIDATE
│ │ │ │ │ │ │ └─ Merge similar patterns │ │ └─ Extract new patterns │ └─ Evaluate code with context └─ Search for relevant patterns
ตัดมาแค่ช่วงต้น อ่านต่อใน repo