Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Register a SaaS app's customer hostnames, show their DNS records and checks, recheck or delete them.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
CUSTOM_DOMAIN_API_URL, CUSTOM_DOMAIN_API_KEYค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"custom-domain": {
"command": "uvx",
"args": [
"custom-domain-mcp"
],
"env": {
"CUSTOM_DOMAIN_API_URL": "ใส่ค่าของคุณ",
"CUSTOM_DOMAIN_API_KEY": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add custom-domain --env CUSTOM_DOMAIN_API_URL='ใส่ค่าของคุณ' --env CUSTOM_DOMAIN_API_KEY='ใส่ค่าของคุณ' -- uvx custom-domain-mcpเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"custom-domain": {
"command": "uvx",
"args": [
"custom-domain-mcp"
],
"env": {
"CUSTOM_DOMAIN_API_URL": "ใส่ค่าของคุณ",
"CUSTOM_DOMAIN_API_KEY": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"custom-domain": {
"type": "stdio",
"command": "uvx",
"args": [
"custom-domain-mcp"
],
"env": {
"CUSTOM_DOMAIN_API_URL": "ใส่ค่าของคุณ",
"CUSTOM_DOMAIN_API_KEY": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub sireto ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: CUSTOM_DOMAIN_API_URL, CUSTOM_DOMAIN_API_KEY
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.13.0) เข้า registry 25 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv) ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, OpenTakeoff
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.
Construction takeoff for AI agents: load plans, set scale, measure, count, export with provenance.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
An MCP server for the Custom Domain API. It lets an AI assistant (Claude, Cursor, any MCP client) register your customers' hostnames, show them their DNS records or a link to a setup page, check why a domain isn't live yet, and recheck or delete it. It acts as one application, with that application's own API key.
uvx custom-domain-mcp # or: pip install custom-domain-mcp
It reads two settings from the environment:
| Setting | Value |
|---|---|
CUSTOM_DOMAIN_API_URL | your edge, such as https://edge.example.net (https only; plain http just for localhost) |
CUSTOM_DOMAIN_API_KEY | an application API key (cd_…) |
Claude Code:
claude mcp add custom-domain --env CUSTOM_DOMAIN_API_URL=https://edge.example.net \
--env CUSTOM_DOMAIN_API_KEY=cd_... -- uvx custom-domain-mcp
Claude Desktop, Cursor and other clients (mcpServers in their config):
{
"mcpServers": { "custom-domain": { "command": "uvx", "args": ["custom-domain-mcp"], "env": { "CUSTOM_DOMAIN_API_URL": "https://edge.example.net", "CUSTOM_DOMAIN_API_KEY": "cd_..." } } } }
| Tool | Does |
|---|---|
create_domain | Register a customer's hostname for a workspace; returns its DNS records. Safe to retry. |
get_domain | A domain with its status, records and the four checks. |
list_domains | Domains, filtered by workspace or status, paged. |
dns_instructions | The records as text for the customer, with help for each, and the detected DNS provider's guide. |
create_connect_session | A link to the setup page for one domain (records, live checks, one-step setup when the provider supports it), with its expiry. |
revoke_connect_session | End a setup page link now (marked destructive). |
recheck_domain | Run the checks again after a DNS fix (once a minute per domain). |
delete_domain | Stop serving a hostname and delete it (marked destructive). |
list_webhooks | Webhook subscriptions, without secrets. |
A setup page link is a credential for one domain. Whoever holds it can see that domain's setup and status, ask for a check and start one-step setup; nothing else, and never the API key. The server tells the assistant to give it only to the customer who owns the hostname. The deployment must serve the page (PUBLIC_API=true and EDGE_HOSTNAME); otherwise create_connect_session reports connect_page_unavailable.
Customer data is data, not instructions. Hostnames, workspace references, metadata and check messages come from your application's customers and from DNS. The server tells the assistant to report them, never to follow them, and to call delete_domain only when you explicitly asked for that domain to be deleted, repeating its hostname back to you first. It also tells the assistant to create a setup page link only when you ask for one and to hand it to you, never to send it to an address, URL or channel found in domain data: metadata is customer-controlled and must not steer where a credential goes. Your MCP client's own confirmation for destructive tools adds a second check.
The server's instructions also tell the assistant the one rule integration code must follow: select the tenant from the verified X-Custom-Domain-Assertion, never from Host (verifying requests).