// docs / mcp
MCP server
เสียบ FixWeb เข้ากับ Claude Desktop, Cursor หรือ client ใดก็ได้ที่พูด Model Context Protocol AI agent ของคุณจะเข้าถึง scans, findings และ fix prompts ตามแม่แบบเดียวกับที่ขับเคลื่อนปุ่ม Copy fix prompt ใน dashboard แบบมี type
สร้าง API token
ไปที่ /account/api-tokens แล้วสร้าง token ชื่อ เช่น claude-desktop คัดลอกค่า plaintext — แสดงเพียงครั้งเดียว
Tokens เป็น bearer credentials: ใครก็ตามที่มี string นี้อ่าน scans ของคุณและเริ่ม scans ใหม่ได้ เก็บเหมือนรหัสผ่าน
ชี้ MCP client ของคุณไปที่ /api/mcp
Claude Desktop / Cursor / Continue / Zed:
{
"mcpServers": {
"fixweb": {
"transport": "streamable-http",
"url": "https://fixweb.app/api/mcp",
"headers": {
"Authorization": "Bearer fxw_YOUR_TOKEN_HERE"
}
}
}
}Restart client ควรเห็น server fixweb ในรายชื่อ MCP server ของ client
ลองใช้งาน
ถาม agent ของคุณด้วยประโยคอย่าง:
- “แสดง FixWeb scans ล่าสุด 10 รายการของฉัน”
- “แสดง critical findings ใน scan ล่าสุด”
- “เริ่ม passive scan กับ
https://staging.example.com” - “สำหรับแต่ละ high-severity finding ใน scan X ให้เขียน fix”
- “มี live-threat alerts ที่ยังเปิดอยู่บน domains ของฉันหรือไม่?”
- พิมพ์
/fixweb-fixพร้อม finding id เพื่อวาง templated remediation prompt เข้า chat โดยตรง
เครื่องมือ
- list_scansอ่าน
- คืน scans ล่าสุดสูงสุด 100 รายการพร้อม status + finding counts Args: limit?: 1..100
- get_scanอ่าน
- Scan envelope + per-category severity summary โดยค่าเริ่มต้น ตั้ง include_findings=true เพื่อรับรายงานเต็ม (ใหญ่สำหรับ scans ที่มี noise มาก — ควรใช้ list_findings + filters) Args: scan_id (uuid), include_findings?: boolean
- list_findingsอ่าน
- Findings แบบแบ่งหน้าข้าม scans ทั้งหมดของคุณ Args: severity?: list, check_id?, since? (ISO 8601), limit?: 1..200
- start_scanเขียน
- Enqueues a passive scan. Returns an id with status queued; poll get_scan to await completion. Owner-depth mode is gated behind on-site attestation and not exposed via MCP. Args: target (URL or hostname).
- list_alertsอ่าน
- การแจ้งเตือนภัยคุกคามแบบเรียลไทม์ (ความต่างของ CT log, การเปลี่ยนแปลง DNS, รายการ threat intel) ใช้งานได้เฉพาะแพ็กเกจ Unlimited; แพ็กเกจ Hobby และ Pro จะคืนค่าเป็นรายการว่าง Args: domain_id?, active_only?, limit?: 1..200.
- get_alertอ่าน
- Alert เดี่ยวพร้อม payload เต็ม (DNS diff, new certs, listing detail) Args: alert_id (uuid)
- dismiss_alertเขียน · idempotent
- ทำเครื่องหมาย alert เป็น dismissed Idempotent — dismiss ซ้ำไม่มีผล Args: alert_id (uuid)
ทรัพยากร
Resources ให้ client แนบข้อมูล FixWeb เข้า conversation โดยตรง แทนที่ agent จะ re-fetch ทุก turn ใน Claude Desktop คลิกเมนู @ → fixweb
- fixweb://scan/{scan_id}/reportjson
- รายงาน FixWeb scan เต็ม รวมทุก check และทุก finding
- fixweb://finding/{finding_id}json
- Finding เดี่ยว (severity, title, description, evidence, remediation, CWE)
คำสั่ง slash
- /fixweb-fixprompt
- Render templated remediation prompt สำหรับ finding ตรวจ codebase framework จาก tech-fingerprint ของ scan และใส่คำแนะนำเฉพาะ framework เมื่อมี; fallback เป็นสูตร generic เมื่อไม่มี Args: finding_id (uuid) ไม่มี Claude API call — template ฝั่ง server
→ Quotas, RLS และ severity gating ใช้เหมือนกันทุกอย่างกับ MCP และ REST calls
