transceiver-db/sql/007-flexoptix-vendors.sql
Rene Fichtmueller 6f7c834752 feat(scrapers+mcp): ATGBICS + ProLabs scrapers, MCP HTTP/SSE server
Scrapers:
- atgbics.ts: PlaywrightCrawler for UK vendor ATGBICS (Shopify store),
  scrapes SFP/SFP+/SFP28/QSFP+/QSFP28/QSFP-DD in GBP, max 50 pages/run
- prolabs.ts: HttpCrawler for ProLabs (Legrand subsidiary), USD pricing,
  category-driven crawl with reach/fiber/speed detection
- Both registered in scheduler (every 8h, staggered) and index.ts CLI

MCP HTTP Server:
- packages/mcp-server/src/http-server.ts: Express + SSEServerTransport
- Exposes all 12 TIP tools via GET /sse + POST /message
- Bearer token auth (MCP_SECRET env), CORS-configurable
- GET /health → { status: "ok", tools: 12 }
- Port: MCP_HTTP_PORT (default 3201)

SQL + tools:
- sql/006-009: seed scripts for whitebox switches, vendors, assets
- switch-docs.ts: MCP tool for switch documentation queries
2026-03-29 02:26:45 +08:00

19 lines
744 B
SQL

-- TIP: Transceiver Intelligence Platform
-- Migration 007: Flexoptix Supported Vendors & Vendor Categories
--
-- Extends vendors table to track which vendors Flexoptix supports
-- and categorize vendors by market segment.
-- Flexoptix support flag
ALTER TABLE vendors ADD COLUMN IF NOT EXISTS flexoptix_supported BOOLEAN DEFAULT FALSE;
-- Vendor category (market segment)
ALTER TABLE vendors ADD COLUMN IF NOT EXISTS vendor_category TEXT;
-- Notes field for additional context
ALTER TABLE vendors ADD COLUMN IF NOT EXISTS notes TEXT;
-- Indexes
CREATE INDEX IF NOT EXISTS idx_vendors_flexoptix ON vendors (flexoptix_supported) WHERE flexoptix_supported = TRUE;
CREATE INDEX IF NOT EXISTS idx_vendors_category ON vendors (vendor_category);