Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Tailscale tailnet admin via one router tool: devices, keys, ACL, DNS, and users.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"tailnetport": {
"command": "npx",
"args": [
"-y",
"@reneturcios/tailnetport",
"mcp"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add tailnetport -- npx -y @reneturcios/tailnetport mcpวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"tailnetport": {
"command": "npx",
"args": [
"-y",
"@reneturcios/tailnetport",
"mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"tailnetport": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@reneturcios/tailnetport",
"mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub CloudCorpRecords ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.0) เข้า registry 4 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js, Docker ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, topo^alpin
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.
Avalanche bulletins and mountain weather forecasts for any place in the Alps.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
tailnetport administers a Tailscale tailnet through a single action-router tool. One call names an action — list devices, inspect one device or its routes, read keys, the ACL policy, DNS settings or users, authorize a device, or delete one — and the router maps it to the Tailscale API v2. One binary serves a command-line interface and a stdio MCP server.
An API key is required. Set TAILSCALE_API_KEY in the environment; without it, every network action fails before a request is made. TAILSCALE_TAILNET selects the tailnet and defaults to - (the tailnet the key belongs to).
Deletion is double-gated: the delete_device action only runs when the call carries confirm: true and the environment sets TAILSCALE_ALLOW_DESTRUCTIVE=true. Either gate missing refuses the delete before any request.
npx @reneturcios/tailnetport devices
Or run the container image:
docker run -i -e TAILSCALE_API_KEY=... ghcr.io/cloudcorprecords/tailnetport
The container defaults to the MCP server (see below). Pass CLI arguments to use it as a CLI instead.
tailnetport devices
tailnetport device 12345 tailnetport device-routes 12345 tailnetport keys tailnetport acl tailnetport dns tailnetport users tailnetport help tailnetport authorize-device 12345 tailnetport delete-device 12345 --confirm # also needs TAILSCALE_ALLOW_DESTRUCTIVE=true
tailnetport --version
Commands print the upstream JSON payload; help prints the local action list and makes no request. Exit codes: 0 on success, 1 when a call fails (including an upstream API error or a refused gate), 2 for usage errors.
One bin serves both faces. The mcp subcommand starts a stdio MCP server:
npx -y @reneturcios/tailnetport mcp
MCP client configuration:
{
"mcpServers": { "tailnetport": { "command": "npx", "args": ["-y", "@reneturcios/tailnetport", "mcp"], "env": { "TAILSCALE_API_KEY": "tskey-...", "TAILSCALE_TAILNET": "-" } } } }
Add TAILSCALE_ALLOW_DESTRUCTIVE: "true" to that env only if you want the server to be able to delete devices (each delete still needs confirm: true in the call).
One tool, tailscale, routes on its action argument:
| Action | Extra input | What it does |
|---|---|---|
devices | — | List devices in the tailnet. |
device | id (required) | Get one device. |
device_routes | id (required) | Get the routes advertised by one device. |
keys | — | List API keys for the tailnet. |
acl | — | Get the tailnet ACL policy. |
dns | — | Get DNS nameservers and preferences for the tailnet. |
users | — | List users in the tailnet. |
help | — | Return the local action documentation; no API request. |
authorize_device | id (required) | Authorize one device. |
delete_device | id and confirm: true (both required) | Delete one device. Also requires TAILSCALE_ALLOW_DESTRUCTIVE=true. |
npm install
npm run build # tsc -> dist/ npm test # node test runner over test/*.test.ts, no network (fake fetch fixtures) npm run dev # run the CLI from source via tsx
MIT — see LICENSE.