Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Self-hosted MCP for controlled AI development and staging without a general-purpose remote shell.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"runner": {
"command": "uvx",
"args": [
"aifordable-runner-mcp",
"serve"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add runner -- uvx aifordable-runner-mcp serveวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"runner": {
"command": "uvx",
"args": [
"aifordable-runner-mcp",
"serve"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"runner": {
"type": "stdio",
"command": "uvx",
"args": [
"aifordable-runner-mcp",
"serve"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub Blacksp1d3r ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.3) เข้า registry 36 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv) ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Starreel
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.
Turn a script into a finished, downloadable short-drama episode — via MCP or REST.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Confirmed cross-product role (2026-10-20): Runner-MCP is the bounded authenticated execution and MCP access boundary, not the company cockpit or a second technical orchestrator. AIfordable owns the company-wide business cockpit and customer/product/registration/desired-state data; Runner-Fabric owns the technical F10/F17 Cockpit and is the sole technical coordinator. Existing Agent Bus relay code is retained as a transport, not a duplicate scheduler. Runner-MCP's optional Fabric bridge remains narrow, with no automatic expansion of authority. Cross-product role contract.
Let an AI run tests and controlled staging operations on your own server without giving it a general-purpose remote shell.
Runner MCP is a security-first, self-hosted Model Context Protocol service. You configure the projects and operations that exist; the AI selects from those bounded capabilities instead of supplying arbitrary shell commands, executables, filesystem paths or service names.
_An AIfordable project — secure software. Built with AI. Fairly priced._
Runner MCP is currently alpha and in maintenance mode. The canonical public release is v0.1.3, available on PyPI, the official MCP Registry and GitHub Releases. The core alpha scope is complete; new work is limited to security fixes, bugs, compatibility, and concrete operational needs rather than speculative feature growth.
Start here: 5-minute demo · Quickstart · Security model · Threat model
One-time new-host staging (local operator only): Source-pinned host bootstrap. This does not activate a service or confer remote authority.
| Approach | AI can inspect/run configured work | Arbitrary shell is the normal interface | Explicit audit/safety boundary |
|---|---|---|---|
| SSH / broad remote-control tool | Yes | Yes | Depends on the surrounding setup |
| Runner MCP | Yes | No | Yes — allow-lists, bounded output, emergency stop and approval gates |
Runner MCP is intentionally not a sandbox for untrusted code and does not claim to replace every operator maintenance tool. Its goal is narrower: routine AI-assisted development and staging operations should not require handing the AI an unrestricted shell.
AI-assisted development becomes much more useful when the assistant can verify changes against real projects. But routine tasks such as reading a safe file, running a known test suite or checking a staging service do not require the authority of a general-purpose remote shell.
Runner MCP turns those routine operations into explicit capabilities. The operator configures projects and named actions locally; the AI client selects from those capabilities instead of supplying arbitrary commands, executable paths or private infrastructure values.
The original motivation was practical: reduce the day-to-day dependency on broad remote-control tooling while keeping useful development and staging automation.
flowchart LR
A[AI client] -->|private MCP transport| R[Runner MCP] A -->|optional bounded requests| G[GitHub mailbox] G -->|strict allow-listed bridge| R H[Human operator] -->|approval / emergency stop| R R --> P[Configured projects] R --> T[Predefined test profiles] R --> O[Controlled staging operations]
Runner MCP is the local safety boundary. GitHub can be used for source collaboration and, optionally, as a bounded mailbox transport; it is not turned into a mechanism for sending arbitrary shell commands.
The normal authority model is deliberately asymmetric: read-only inspection is easier, mutating staging actions are narrower, higher-risk actions require short-lived local approval, and production mutations remain disabled.
Runner Fabric remains a separate product and orchestration/control-plane owner. When both products run on the same host, Runner MCP can optionally expose a loopback-only transport bridge with three coarse tools — run, inspect and cancel a bounded Fabric work-unit. This lets an AI hand off a whole repository-change workflow without receiving generic GitHub/Git/shell primitives.
The bridge is disabled by default and does not change Runner MCP's authority model. See Optional Runner Fabric bridge.
For ChatGPT/Codex clients, Runner MCP can also render a private first-party plugin package that reuses this existing MCP boundary without embedding bearer-token values or adding another control plane. See First-party ChatGPT/Codex control path.
You do not need to understand the Python source code for the basic workflow.
Starting with v0.1.1, the shortest persistent install is:
uv tool install aifordable-runner-mcp
runner-mcp setup runner-mcp doctor runner-mcp guide runner-mcp status
uvx aifordable-runner-mcp ... is also suitable for package discovery and short-lived evaluation, but a persistent tool install is the clearer choice for a self-hosted service with private configuration and autostart.
To install directly from source instead:
git clone https://github.com/Blacksp1d3r/runner-mcp.git
cd runner-mcp ./install.sh
Start with QUICKSTART.md for the guided installation.
Connectivity remains loopback-first. runner-mcp setup in public mode records an external HTTPS resource/auth identity only; it does not expose a bind address, install TLS, edit DNS/firewalls, configure a reverse proxy or create a tunnel. runner-mcp guide reports only a generic connectivity category without printing the configured hostname or private URL. For supported OpenAI products, private access can use Secure MCP Tunnel; an external HTTPS reverse proxy remains an operator-managed alternative.
If Runner MCP runs under a dedicated service account while you log in with a separate operator account, install a local operator wrapper. Skip this step when Runner MCP runs under the same account you use interactively:
./install-operator.sh SERVICE_USER
runner-mcp guide
The wrapper keeps the private configuration with the service account and delegates through sudo; it does not copy credentials into the operator account.
For a user-to-developer path, see docs/USING_AND_EXTENDING.md. Contributors can start with CONTRIBUTING.md.
For the zero-additional-service-cost GitHub mailbox pattern, see docs/GITHUB_MAILBOX_BRIDGE.md. The public package now includes both a transport-neutral processor and a fixed-host GitHub transport; completion feedback and watcher resilience are documented in docs/COMPLETION_FEEDBACK.md and docs/WATCHER_RESILIENCE.md. Bounded multi-project scheduling and capacity controls are documented in docs/CONCURRENCY.md.
Dependency/build/interpreter contract changes are deliberately refused by self-update and require a local bootstrap/manual upgrade; see self-update compatibility.
Runner MCP is developed as an AIfordable project. Public launch readiness is tracked in docs/LAUNCH_READINESS.md. See also the changelog, release checklist and prepared launch copy.
Useful commands:
runner-mcp setup
runner-mcp doctor runner-mcp guide runner-mcp status runner-mcp emergency-stop on runner-mcp emergency-stop status runner-mcp emergency-stop off runner-mcp autostart preflight runner-mcp autostart status runner-mcp project list runner-mcp project add ... runner-mcp test-profile list PROJECT runner-mcp test-profile add PROJECT NAME --preset pytest runner-mcp service-config list PROJECT runner-mcp service-config add PROJECT ALIAS --unit UNIT runner-mcp database-config list runner-mcp database-config add PROJECT runner-mcp retention preview PROJECT runner-mcp database restore-plan PROJECT BACKUP_ID runner-mcp migration-config add PROJECT --preset alembic runner-mcp deployment-config list runner-mcp deployment-config add PROJECT --release-root PATH --service ALIAS runner-mcp github-mailbox status runner-mcp github-watcher once runner-mcp plugin-package registered-app --app-id APP_ID --output PRIVATE_DIR runner-mcp plugin-package http --url MCP_URL --output PRIVATE_DIR runner-mcp serve
The emergency stop is intentionally easy to activate and harder to clear.
Current implemented foundations include:
ตัดมาแค่ช่วงต้น อ่านต่อใน repo