Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Read-only-first Sonatype Nexus Repository 3 inspection, audit and documentation.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
NEXUS_URL, NEXUS_USERNAME, NEXUS_PASSWORD, NEXUS_VERIFY_TLS, NEXUS_MCP_MODE, NEXUS_MCP_ENABLE_WRITE_TOOLS, NEXUS_MCP_ENABLE_RAW_APIค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"nexus": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"NEXUS_URL",
"-e",
"NEXUS_USERNAME",
"-e",
"NEXUS_PASSWORD",
"-e",
"NEXUS_VERIFY_TLS",
"-e",
"NEXUS_MCP_MODE",
"-e",
"NEXUS_MCP_ENABLE_WRITE_TOOLS",
"-e",
"NEXUS_MCP_ENABLE_RAW_API",
"ghcr.io/oomchiller/nexus-mcp-server:0.2.1"
],
"env": {
"NEXUS_URL": "ใส่ค่าของคุณ",
"NEXUS_USERNAME": "ใส่ค่าของคุณ",
"NEXUS_PASSWORD": "ใส่ค่าของคุณ",
"NEXUS_VERIFY_TLS": "ใส่ค่าของคุณ",
"NEXUS_MCP_MODE": "ใส่ค่าของคุณ",
"NEXUS_MCP_ENABLE_WRITE_TOOLS": "ใส่ค่าของคุณ",
"NEXUS_MCP_ENABLE_RAW_API": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add nexus --env NEXUS_URL='ใส่ค่าของคุณ' --env NEXUS_USERNAME='ใส่ค่าของคุณ' --env NEXUS_PASSWORD='ใส่ค่าของคุณ' --env NEXUS_VERIFY_TLS='ใส่ค่าของคุณ' --env NEXUS_MCP_MODE='ใส่ค่าของคุณ' --env NEXUS_MCP_ENABLE_WRITE_TOOLS='ใส่ค่าของคุณ' --env NEXUS_MCP_ENABLE_RAW_API='ใส่ค่าของคุณ' -- docker run -i --rm -e NEXUS_URL -e NEXUS_USERNAME -e NEXUS_PASSWORD -e NEXUS_VERIFY_TLS -e NEXUS_MCP_MODE -e NEXUS_MCP_ENABLE_WRITE_TOOLS -e NEXUS_MCP_ENABLE_RAW_API ghcr.io/oomchiller/nexus-mcp-server:0.2.1เติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"nexus": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"NEXUS_URL",
"-e",
"NEXUS_USERNAME",
"-e",
"NEXUS_PASSWORD",
"-e",
"NEXUS_VERIFY_TLS",
"-e",
"NEXUS_MCP_MODE",
"-e",
"NEXUS_MCP_ENABLE_WRITE_TOOLS",
"-e",
"NEXUS_MCP_ENABLE_RAW_API",
"ghcr.io/oomchiller/nexus-mcp-server:0.2.1"
],
"env": {
"NEXUS_URL": "ใส่ค่าของคุณ",
"NEXUS_USERNAME": "ใส่ค่าของคุณ",
"NEXUS_PASSWORD": "ใส่ค่าของคุณ",
"NEXUS_VERIFY_TLS": "ใส่ค่าของคุณ",
"NEXUS_MCP_MODE": "ใส่ค่าของคุณ",
"NEXUS_MCP_ENABLE_WRITE_TOOLS": "ใส่ค่าของคุณ",
"NEXUS_MCP_ENABLE_RAW_API": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"nexus": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"NEXUS_URL",
"-e",
"NEXUS_USERNAME",
"-e",
"NEXUS_PASSWORD",
"-e",
"NEXUS_VERIFY_TLS",
"-e",
"NEXUS_MCP_MODE",
"-e",
"NEXUS_MCP_ENABLE_WRITE_TOOLS",
"-e",
"NEXUS_MCP_ENABLE_RAW_API",
"ghcr.io/oomchiller/nexus-mcp-server:0.2.1"
],
"env": {
"NEXUS_URL": "ใส่ค่าของคุณ",
"NEXUS_USERNAME": "ใส่ค่าของคุณ",
"NEXUS_PASSWORD": "ใส่ค่าของคุณ",
"NEXUS_VERIFY_TLS": "ใส่ค่าของคุณ",
"NEXUS_MCP_MODE": "ใส่ค่าของคุณ",
"NEXUS_MCP_ENABLE_WRITE_TOOLS": "ใส่ค่าของคุณ",
"NEXUS_MCP_ENABLE_RAW_API": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
NEXUS_USERNAME envNEXUS_VERIFY_TLS envNEXUS_MCP_MODE envNEXUS_MCP_ENABLE_WRITE_TOOLS envNEXUS_MCP_ENABLE_RAW_API envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub oomchiller ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: NEXUS_URL, NEXUS_PASSWORD
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.2.1) เข้า registry 3 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Docker ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, MCP Server Autocad Lisp Helper
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.
High-precision static analysis and debug server for AutoCAD AutoLISP (.lsp) files.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
A Model Context Protocol server that lets AI assistants inspect, audit and document a Sonatype Nexus Repository Manager 3.x instance. It is read-only by default; administrative tools are not even listed unless you enable them.
flowchart LR
AI[MCP client] <-->|stdio / Streamable HTTP| Server[nexus-mcp-server] Server <-->|REST API| Nexus[Nexus Repository 3.x]
readOnlyHint, destructiveHint, idempotentHint and openWorldHint; outputs and logs redact the configured password and secret-looking keys.Used in production in read-only mode on Nexus Pro 3.96.1-01; partially verified on OSS 3.70. See docs/COMPATIBILITY.md.
The server is listed in the MCP Registry as io.github.oomchiller/nexus-mcp-server; registry-aware clients can install it from there. Manual setup:
docker run --rm -i \
-e NEXUS_URL=https://nexus.example.com \ -e NEXUS_USERNAME=readonly-user \ -e NEXUS_PASSWORD \ ghcr.io/oomchiller/nexus-mcp-server:0.2.1
Images are published for linux/amd64 and linux/arm64, run as an unprivileged user over stdio, and are configured through the environment only. Release digests are listed on the releases page.
{
"mcpServers": { "nexus": { "command": "uvx", "args": ["--from", "git+https://github.com/oomchiller/nexus-mcp-server@v0.2.1", "nexus-mcp-server"], "env": { "NEXUS_URL": "https://nexus.example.com", "NEXUS_USERNAME": "readonly-user", "NEXUS_PASSWORD": "change-me" } } } }
More client examples (Claude Desktop, Codex CLI, Gemini CLI) are in examples/.
Settings come from the environment or a .env file in the working directory.
| Variable | Default | Meaning |
|---|---|---|
NEXUS_URL | unset | Nexus base URL. Without it the server starts, and calls report that Nexus is not configured. |
NEXUS_USERNAME / NEXUS_PASSWORD | unset | Basic authentication. Use a read-only Nexus account. |
NEXUS_VERIFY_TLS | true | Verify the Nexus TLS certificate. |
NEXUS_CA_BUNDLE | unset | PEM file of CA certificates to trust instead of the public roots; needs NEXUS_VERIFY_TLS=true. |
NEXUS_TIMEOUT_SECONDS | 30 | HTTP timeout. |
NEXUS_ALLOWED_HOSTS | host of NEXUS_URL | Comma-separated hosts the client may contact. |
NEXUS_LOG_LEVEL | INFO | Log level (stderr). |
NEXUS_MCP_MODE | readonly | readonly, audit (same gates as readonly) or admin. |
NEXUS_MCP_ENABLE_WRITE_TOOLS | false | With admin, lists and allows the write tools. |
NEXUS_MCP_ENABLE_RAW_API | false | Lists nexus_api_call. |
NEXUS_MCP_RAW_API_GET_ONLY | false | Restrict nexus_api_call to GET. |
NEXUS_MCP_MAX_RAW_RESPONSE_BYTES | 1048576 | Largest Nexus response accepted. |
NEXUS_MCP_GRAPH_TTL_SECONDS | 60 | How long graph tools reuse one Knowledge Graph build; 0 rebuilds on every call. |
NEXUS_MCP_ENABLE_PROMPTS | true | Register prompts. |
NEXUS_MCP_ENABLE_RESOURCES | true | Register resources. |
Token authentication is not implemented.
The server does not read SSL_CERT_FILE or the system trust store. For a Nexus behind a private CA, set NEXUS_CA_BUNDLE rather than disabling verification. An unreadable bundle, or a bundle with verification disabled, stops the server at startup.
Gateways that run several instances side by side and prefix only tool names (Docker MCP Gateway) should set NEXUS_MCP_ENABLE_PROMPTS=false and NEXUS_MCP_ENABLE_RESOURCES=false.
--transport {stdio,sse,streamable-http} default stdio
--host HOST / --port PORT HTTP bind, default 127.0.0.1:8000, no authentication --nexus-url URL overrides NEXUS_URL --nexus-username USERNAME overrides NEXUS_USERNAME --verify-ssl / --no-verify-ssl overrides NEXUS_VERIFY_TLS --ca-bundle PATH overrides NEXUS_CA_BUNDLE
Keep NEXUS_PASSWORD in the environment, not on the command line.
| Group | Tools |
|---|---|
| Explanation | nexus_understand_architecture, nexus_explain_repository, nexus_explain_storage_strategy |
| Inventory and documentation | nexus_generate_inventory_json, nexus_generate_architecture_md, nexus_generate_repository_catalog_md, nexus_audit_repository_content |
| Audit | nexus_detect_architecture_smells, nexus_generate_audit_report |
| Drift | nexus_compare_live_state_with_declared_state |
| OpenAPI | nexus_openapi_list_operations, nexus_generate_capability_map |
Listed only when enabled:
| Tool | Requires |
|---|---|
nexus_api_call | NEXUS_MCP_ENABLE_RAW_API=true; paths are canonicalized and restricted to /service/rest/. |
nexus_delete_repository, nexus_run_task | NEXUS_MCP_MODE=admin and NEXUS_MCP_ENABLE_WRITE_TOOLS=true. |
Resources: nexus://instance/summary, nexus://repositories, nexus://blobstores, nexus://tasks, nexus://cleanup-policies, nexus://security/summary, nexus://architecture, nexus://knowledge_graph. Prompts: nexus_audit_prompt, nexus_iac_drift_prompt.
Limits worth knowing: drift compares repository name, format and type only; risk checks cover a small set of graph rules; findings are only as complete as the REST APIs visible to the account. Optional endpoints that are missing for version, edition or permission reasons appear as limitations, not failures.
NEXUS_ALLOWED_HOSTS and only paths relative to NEXUS_URL.uv sync --locked
uv run pytest uv run ruff check . && uv run ruff format --check . uv run mypy src tests
See CONTRIBUTING.md, ARCHITECTURE.md, DECISIONS.md and ROADMAP.md.
MIT; see LICENSE.