UNPKG

chess-mcp

Version:

Chess MCP server with position evaluation, move validation, and masters database

35 lines 1.26 kB
import { Chess } from 'chess.js'; import ChessImageGenerator from 'chess-fen2img'; export class ChessImageService { async generateImage(fen, options = {}) { try { // Validate FEN const chess = new Chess(fen); if (!chess.validate_fen(fen).valid) { throw new Error('Invalid FEN position'); } // Generate image const generator = new ChessImageGenerator({ size: options.size || 640, dark: options.dark || '#B58863', light: options.light || '#F0D9B5', flipped: options.flip || fen.split(' ')[1] === 'b' }); try { await generator.loadFEN(fen); return await generator.generateBuffer(); } catch (err) { console.error('Error generating chess board image:', err); throw new Error('Failed to generate chess board image'); } } catch (error) { if (error instanceof Error) { throw error; } throw new Error('Unknown error generating chess board image'); } } } //# sourceMappingURL=chess-image-service.js.map