Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Run visual regression tests, review diffs, and manage baselines on a Lastest instance.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"lastest": {
"command": "npx",
"args": [
"-y",
"@lastest/mcp-server"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add lastest -- npx -y @lastest/mcp-serverวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"lastest": {
"command": "npx",
"args": [
"-y",
"@lastest/mcp-server"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"lastest": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@lastest/mcp-server"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub las-team ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.3.7) เข้า registry 5 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, sync. labs
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.
Lipsync videos, dub them into other languages, make talking videos and open sync. Studio.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
MCP server for Claude Code, Cursor, Windsurf, Cline, and Claude Desktop. Lets AI agents run visual regression tests, review screenshot diffs, and approve baselines on a Lastest instance through the Model Context Protocol.
npx -y @lastest/mcp-server@latest --url https://your-lastest-instance --api-key YOUR_API_KEY
Generate an API key in the Lastest UI: Settings → Runners & API Access → Create API Key (shown only once). The server speaks MCP over stdio — wire it into any compatible client below.
| Client | Status | Install method |
|---|---|---|
| Claude Code | Verified | claude mcp add (see below) |
| Claude Desktop | Verified | claude_desktop_config.json |
| Cursor | Verified | ~/.cursor/mcp.json |
| Windsurf | Verified | MCP config (generic JSON) |
| Cline | Verified | MCP config (generic JSON) |
Any MCP-compliant client that can launch a stdio server with arguments works.
claude mcp add lastest -- npx -y @lastest/mcp-server@latest \
--url https://your-lastest-instance \ --api-key YOUR_API_KEY
Verify with claude mcp list.
Add to claude_desktop_config.json, ~/.cursor/mcp.json, or your client's MCP config:
{
"mcpServers": { "lastest": { "command": "npx", "args": [ "-y", "@lastest/mcp-server@latest", "--url", "https://your-lastest-instance", "--api-key", "YOUR_API_KEY" ] } } }
Restart the client.
playwrightOverrides, diffOverrides, stabilizationOverrides, viewport, setup wiringstorageState() blobs) and reusable setup scriptsforceVideoRecording) and read run resultsThe server registers 20 MCP tools (all prefixed lastest_). Every tool returns a structured { status, summary, actionRequired?, details } payload.
Pure CRUD operations are consolidated into resource tools that take an action (or scope) discriminator; workflow verbs stay as standalone tools.
| Tool | action (or scope) values | Purpose | |
|---|---|---|---|
lastest_status | health, jobs, job | Instance connectivity + background-job status | |
lastest_repo | list, get, create, update, get_settings, update_settings | Repositories + repo-level Playwright settings | |
lastest_area | list, create, update, delete, list_tests | Functional areas (test groupings) | |
lastest_test | list (`filter: all\ | failing), get, update, delete` | Read/update/delete tests |
lastest_storage_state | list, create, delete | Saved Playwright storageState() blobs | |
lastest_setup_script | list, get, create, update, delete | Reusable Playwright/API setup blocks | |
lastest_get_diffs | `scope: single\ | build` | Read visual diffs (one, or all for a build) |
lastest_decide_diff | approve, reject (via diffIds batch or buildId approve-all) | Approve/reject visual diffs & baselines | |
lastest_build | list, get, review | Builds: list, status, comprehensive QA review | |
lastest_share | list, revoke | List/revoke existing public shares | |
lastest_verify | view, change_map | Verify-phase view + build-level Change Map | |
lastest_insights | coverage, qa | Repo coverage stats + QA summary |
| Tool | Purpose |
|---|---|
lastest_run_tests | Trigger a test build (repo / area / specific tests) |
lastest_create_test | Create a test (direct/AI, browser/API modes) |
lastest_heal_test | AI healer agent auto-fixes a failing test |
lastest_validate_diff | Diff-scoped validation: run only affected tests, return a verdict |
lastest_suggest_app_fix | Advisory application-code fix for a real regression |
lastest_approve_layer | Per-layer approve/reject/snooze on a step comparison |
lastest_publish_share | Publish a /r/ public share for a build/test |
lastest_quickstart | Spin up the productized 2-test demo (returns sessionId) |
lastest_quickstart_status | Poll a QuickStart session |
lastest_test (action: "update") accepts a full override surface so an agent can shape a test without touching the UI:
setupTestId (use another test as setup, takes precedence) or setupScriptId, plus setupOverrides / teardownOverrides blocks to inject/skip default steps (test | script | storage_state).playwrightOverrides (browser, navigation/action/selector timeouts, error modes, baseUrl, cursor speed), viewportOverride, diffOverrides, stabilizationOverrides.quarantined, executionMode (procedural | agent).Pass null to any override block to clear it. The API validates each referenced id is in the same repo before persisting.
The tool surface was consolidated from ~56 discrete tools to ~21 by folding pure CRUD into the resource tools above. This is a breaking change for scripts that called the old per-operation tool names. The workflow verbs and the QuickStart chain (lastest_quickstart → lastest_quickstart_status → lastest_publish_share) kept their names and signatures. Map any removed names as follows:
| Removed tool(s) | Now call | ||
|---|---|---|---|
lastest_health, lastest_list_jobs, lastest_get_job | `lastest_status { health \ | jobs \ | job }` |
lastest_list_repos, lastest_get_repo, lastest_create_repo, lastest_update_repo, lastest_get_repo_settings, lastest_update_repo_settings | lastest_repo { action } | ||
lastest_list_areas, lastest_create_area, lastest_update_area, lastest_delete_area, lastest_list_area_tests | lastest_area { action } | ||
lastest_list_tests, lastest_get_test, lastest_update_test, lastest_delete_test, lastest_list_failing_tests | lastest_test { action } | ||
lastest_list_storage_states, lastest_create_storage_state, lastest_delete_storage_state | lastest_storage_state { action } | ||
lastest_list_setup_scripts, lastest_get_setup_script, lastest_create_setup_script, lastest_update_setup_script, lastest_delete_setup_script | lastest_setup_script { action } | ||
lastest_get_diff, lastest_get_build_diffs | lastest_get_diffs { scope } | ||
lastest_approve_diff, lastest_reject_diff, lastest_approve_build_diffs | `lastest_decide_diff { approve \ | reject }` | |
lastest_list_builds, lastest_get_build_status, lastest_review_build, lastest_get_test_run | `lastest_build { list \ | get \ | review }` |
lastest_list_build_shares, lastest_list_test_shares, lastest_revoke_share | `lastest_share { list \ | revoke }` | |
lastest_get_coverage, lastest_get_qa_summary | `lastest_insights { coverage \ | qa }` | |
lastest_verify_view, lastest_get_change_map | `lastest_verify { view \ | change_map }` |
If you need the old names temporarily, pin a 0.2.x release of this package while you migrate.
lastest-mcp --url <url> --api-key <key>
The process communicates with the host client over stdio.
| Flag | Default | Meaning |
|---|---|---|
--url | _(required)_ | Lastest instance the tools call. |
--api-key | — | API key. Required for stdio; in http mode it is the fallback for requests that arrive without an Authorization header. |
--transport | stdio | stdio for a local agent, http for a remote Streamable HTTP endpoint. |
--port / --host | 9700 / 127.0.0.1 | Where to listen in http mode. |
--access-level | full | read, write or full — how much of the tool surface to expose. |
Requirements: Node.js 18+ and a reachable Lastest instance.
Most people want the endpoint your Lastest instance already serves:
https://your-lastest-instance/api/mcp
It speaks Streamable HTTP and accepts either an API key or an OAuth 2.1 connection, so an agent platform that only
ตัดมาแค่ช่วงต้น อ่านต่อใน repo