Skip to main content
Glama

HC3 MCP Server

create-proper-icon.js3.98 kB
const fs = require('fs'); // Create a proper SVG icon for HC3 MCP Server const svgIcon = `<svg width="128" height="128" viewBox="0 0 128 128" xmlns="http://www.w3.org/2000/svg"> <!-- Background circle --> <circle cx="64" cy="64" r="60" fill="#2563eb" stroke="#1d4ed8" stroke-width="2"/> <!-- Home/House icon representing Smart Home --> <path d="M32 76 L64 44 L96 76 L96 100 L72 100 L72 84 L56 84 L56 100 L32 100 Z" fill="white" stroke="white" stroke-width="1"/> <!-- Roof detail --> <path d="M28 76 L64 40 L100 76" fill="none" stroke="white" stroke-width="3" stroke-linecap="round"/> <!-- Window --> <rect x="60" y="88" width="8" height="8" fill="#2563eb"/> <!-- Connection dots representing MCP/API --> <circle cx="40" cy="32" r="3" fill="#10b981"/> <circle cx="88" cy="32" r="3" fill="#10b981"/> <circle cx="104" cy="64" r="3" fill="#10b981"/> <circle cx="88" cy="96" r="3" fill="#10b981"/> <circle cx="40" cy="96" r="3" fill="#10b981"/> <circle cx="24" cy="64" r="3" fill="#10b981"/> <!-- Connection lines --> <path d="M40 32 L60 48" stroke="#10b981" stroke-width="2" opacity="0.7"/> <path d="M88 32 L68 48" stroke="#10b981" stroke-width="2" opacity="0.7"/> <path d="M104 64 L80 64" stroke="#10b981" stroke-width="2" opacity="0.7"/> <path d="M24 64 L48 64" stroke="#10b981" stroke-width="2" opacity="0.7"/> <!-- HC3 text at bottom --> <text x="64" y="118" text-anchor="middle" fill="white" font-family="Arial, sans-serif" font-size="12" font-weight="bold">HC3</text> </svg>`; // Write the SVG fs.writeFileSync('icon-proper.svg', svgIcon); console.log('Created proper SVG icon: icon-proper.svg'); // Create a proper PNG using Canvas (if available) or provide instructions try { // Try to use node-canvas if available const { createCanvas } = require('canvas'); const canvas = createCanvas(128, 128); const ctx = canvas.getContext('2d'); // Blue background circle ctx.fillStyle = '#2563eb'; ctx.beginPath(); ctx.arc(64, 64, 60, 0, 2 * Math.PI); ctx.fill(); // White border ctx.strokeStyle = '#1d4ed8'; ctx.lineWidth = 2; ctx.stroke(); // House shape ctx.fillStyle = 'white'; ctx.beginPath(); ctx.moveTo(32, 76); ctx.lineTo(64, 44); ctx.lineTo(96, 76); ctx.lineTo(96, 100); ctx.lineTo(72, 100); ctx.lineTo(72, 84); ctx.lineTo(56, 84); ctx.lineTo(56, 100); ctx.lineTo(32, 100); ctx.closePath(); ctx.fill(); // Roof line ctx.strokeStyle = 'white'; ctx.lineWidth = 3; ctx.lineCap = 'round'; ctx.beginPath(); ctx.moveTo(28, 76); ctx.lineTo(64, 40); ctx.lineTo(100, 76); ctx.stroke(); // Window ctx.fillStyle = '#2563eb'; ctx.fillRect(60, 88, 8, 8); // Connection dots const dots = [ [40, 32], [88, 32], [104, 64], [88, 96], [40, 96], [24, 64] ]; ctx.fillStyle = '#10b981'; dots.forEach(([x, y]) => { ctx.beginPath(); ctx.arc(x, y, 3, 0, 2 * Math.PI); ctx.fill(); }); // Connection lines ctx.strokeStyle = '#10b981'; ctx.lineWidth = 2; ctx.globalAlpha = 0.7; const lines = [ [40, 32, 60, 48], [88, 32, 68, 48], [104, 64, 80, 64], [24, 64, 48, 64] ]; lines.forEach(([x1, y1, x2, y2]) => { ctx.beginPath(); ctx.moveTo(x1, y1); ctx.lineTo(x2, y2); ctx.stroke(); }); // HC3 text ctx.globalAlpha = 1; ctx.fillStyle = 'white'; ctx.font = 'bold 12px Arial'; ctx.textAlign = 'center'; ctx.fillText('HC3', 64, 118); // Save as PNG const buffer = canvas.toBuffer('image/png'); fs.writeFileSync('icon.png', buffer); console.log('Created proper PNG icon: icon.png (128x128)'); } catch (error) { console.log('Canvas not available. Created SVG only.'); console.log('To convert SVG to PNG, you can:'); console.log('1. Use online converter: https://cloudconvert.com/svg-to-png'); console.log('2. Install canvas: npm install canvas'); console.log('3. Use ImageMagick: convert icon-proper.svg icon.png'); }

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jangabrielsson/HC3_mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server