Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Sourcery security findings: MCP server, CLI, and fix-prompt builder over the Sourcery API.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
SOURCERY_API_KEYค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"sourcery": {
"command": "npx",
"args": [
"-y",
"@abyssbugg/sourcery"
],
"env": {
"SOURCERY_API_KEY": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add sourcery --env SOURCERY_API_KEY='ใส่ค่าของคุณ' -- npx -y @abyssbugg/sourceryเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"sourcery": {
"command": "npx",
"args": [
"-y",
"@abyssbugg/sourcery"
],
"env": {
"SOURCERY_API_KEY": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"sourcery": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@abyssbugg/sourcery"
],
"env": {
"SOURCERY_API_KEY": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub abyssbugg-labs ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: SOURCERY_API_KEY
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.2.4) เข้า registry 38 วันที่ผ่านมา
โปรแกรมที่รองรับ 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 รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
A hybrid plugin bundle for agent-driven Sourcery security workflows: an MCP server (12 tools over Sourcery's public security API, pinned OpenAPI snapshot), two Agent Skills, and adapters for Claude Code, Cursor, Codex/ChatGPT, VS Code, Devin, Grok (CLI + Bot), Amp, Hermes, OpenClaw, and Rovo Dev CLI. The server ships as the npm package @abyssbugg/sourcery — most hosts just register npx -y @abyssbugg/sourcery@latest. See docs/COMPATIBILITY.md for per-host install steps.
Sourcery's current docs say the only public API is a Team-plan REST API for security findings. The documented API base is https://api.sourcery.ai/api, and the first documented request is:
curl https://api.sourcery.ai/api/v1/security-issues \
-H "Authorization: Bearer $SOURCERY_API_KEY"
Verified and pinned. The live OpenAPI document (https://api.sourcery.ai/api/openapi.json) is committed as a snapshot at openapi/sourcery-openapi.json:
Sourcery API 0.1.0 (OpenAPI 3.1.0)9fdb45e657a6406c86ea0d0def2963d534e20bec1a9c88f7d62dbc2e6807f877Every tool and the client allow-list are wired from that snapshot. The verified surface is exactly eight operations:
| Method | Path | Purpose |
|---|---|---|
| GET | /v1/security-issues | List issues (filters + cursor pagination) |
| GET | /v1/security-issues/stats | Counts by status and severity |
| GET | /v1/security-issues/{id} | Fetch one issue |
| PATCH | /v1/security-issues | Bulk update (max 100 ids) |
| GET | /v1/security-issue-groups | List groups (same filters) |
| GET | /v1/security-issue-groups/stats | Counts by status and severity |
| GET | /v1/security-issue-groups/{id} | Fetch one group including its issues |
| PATCH | /v1/security-issue-groups | Bulk update groups (max 100 ids) |
Sourcery's PR review controls are currently documented as GitHub/GitLab comment or label commands (review, summary, guide, title, resolve, dismiss, create issue) rather than public REST endpoints. Those actions are therefore best implemented through your GitHub/GitLab connector, while Sourcery is used for security findings.
Repo root = plugin root. The portable core (plugin.json + skills/ + mcp.json) follows the Agent Plugins 1.0.0 standard, which Cursor and OpenAI (Codex, ChatGPT desktop) load natively; the other files are thin per-host adapters.
sourcery-agent-bundle/
plugin.json # Agent Plugins core manifest mcp.json # portable stdio wiring -> bin/sourcery skills/ sourcery-triage/SKILL.md # findings triage workflow sourcery-remediate/SKILL.md # minimal-change fix workflow bin/ sourcery # launcher: dist/cli.js when built, else npx @abyssbugg/sourcery agents/ sourcery-triager.md # read-only triage sub-agent (Claude format) .claude-plugin/plugin.json # Claude Code manifest + userConfig API key .mcp.json # Claude Code MCP wiring (npx) .agents/plugins/marketplace.json # Codex/ChatGPT local marketplace entry scripts/ install-rovodev.sh # Rovo Dev CLI wiring (mcp.json + skills) install-local-hosts.sh # grok, amp, hermes, openclaw, VS Code, Devin examples/ mcp.http.json # remote deployment template hooks/ # optional hooks example (SessionStart echo; not enabled) docs/ COMPATIBILITY.md # per-host setup matrix grok-bot-skill.md # paste-in skill for Grok Bot openapi/ sourcery-openapi.json # pinned spec snapshot (SHA-256 above) src/ # TypeScript: MCP server + findings CLI (@abyssbugg/sourcery) constants.ts # pinned facts: operations, enums, spec hash tests/ # TypeScript tests (constants drift pin, tools, client) python/ # Python reference implementation (server, client, prompts) src/sourcery_agent/ tests/ package.json # npm package manifest (@abyssbugg/sourcery) .env.example README.md
sourcery_security_snapshot: counts by status/severity plus the first page of active issues — start here for a triage overview.sourcery_list_findings: list issues with repository_ids, issue_types, statuses, search, limit, cursor.sourcery_get_finding: fetch one issue (full record incl. source snippet and dependency graph).sourcery_get_security_counts: aggregate counts by status and severity.sourcery_bulk_update_findings: bulk status/severity changes (≤100 ids; SOLVED is scanner-owned and rejected).sourcery_list_groups, sourcery_get_group, sourcery_get_group_counts, sourcery_bulk_update_groups: the same capabilities for issue groups.sourcery_build_fix_prompt: builds the Sourcery-style minimal-change agent prompt from a finding; the DEPENDENCY path uses fixed_versions + manifest_file_path and renders the dependency chain.sourcery_capabilities: describes the verified surface, spec pin, and enum values.sourcery_api_request: compatibility bridge restricted to the eight verified operations.npx -y @abyssbugg/sourcery@latest snapshot # counts + first page of active findings
npx -y @abyssbugg/sourcery@latest list --status ACTIVE --limit 50 # filterable list npx -y @abyssbugg/sourcery@latest get 1234 # one finding in full npx -y @abyssbugg/sourcery@latest fix-prompt 1234 # minimal-change agent prompt
Inside an enabled plugin host, bin/sourcery runs the same CLI (it prefers a locally built dist/cli.js and otherwise falls back to npx). Add --json to any query command for scripting.
Requirements: Node 20+. Most hosts register the MCP server directly:
export SOURCERY_API_KEY='...'
npx -y @abyssbugg/sourcery@latest # stdio MCP server (no args) npx -y @abyssbugg/sourcery@latest http # Streamable HTTP (127.0.0.1:8765/mcp)
Or install it as a plugin bundle — one step per host (details in docs/COMPATIBILITY.md):
| Host | Quick start |
|---|---|
| Claude Code | claude --plugin-dir . — prompts for the API key on enable |
| Cursor | symlink the repo into ~/.cursor/plugins/local/, reload |
| Codex CLI / ChatGPT desktop | codex plugin marketplace add ./ |
| ChatGPT web | run npx -y @abyssbugg/sourcery@latest http behind HTTPS, add via developer mode |
| VS Code / Grok / Amp / Hermes / OpenClaw | scripts/install-local-hosts.sh (idempotent; registers plugin, MCP, and skills) |
| Devin | skill links via the installer; devin plugins install --local . for the full plugin |
| Grok Bot | paste-in skill from docs/grok-bot-skill.md |
| Rovo Dev CLI | scripts/install-rovodev.sh |
For development and tests, see the Python reference implementation (its suite doubles as the bundle-packaging checker) and run npm test for the TypeScript suite. The server is built on the official MCP TypeScript SDK (@modelcontextprotocol/sdk).
When Sourcery publishes a spec change:
curl -sS --fail -o openapi/sourcery-openapi.json https://api.sourcery.ai/api/openapi.json
shasum -a 256 openapi/sourcery-openapi.json # update SPEC_SHA256 in src/constants.ts (+ python/src/sourcery_agent/constants.py, README/docs) npm test # tests/constants.spec.ts fails on drift
Sourcery's PR review commands (review, summary, guide, title, resolve, dismiss, create issue) remain GitHub/GitLab comment or label commands — implement those through your Git provider connector, not the Sourcery REST API.