Advanced electrical schematic analysis MCP server with rail engineering expertise
npm install @flexabrain/mcp-serverbash
Clone the repository
git clone https://github.com/your-org/flexabrain-mcp.git
cd flexabrain-mcp
Install dependencies
npm install
Build the project
npm run build
Run tests
npm test
`
$3
`typescript
import { analyzeElectricalSchematic } from './src/tools/analyze-schematic.js';
// Analyze a traction power schematic
const result = await analyzeElectricalSchematic({
image_path: './schematics/metro-traction-power.png',
analysis_depth: 'comprehensive',
rail_system_context: {
system_type: 'METRO',
voltage_system: '1500V DC',
region: 'US',
applicable_standards: ['EN 50155', 'IEC 61375']
},
focus_areas: ['safety', 'compliance', 'maintenance']
});
console.log(result.content[0].text); // Rich analysis report
`
---
๐ ๏ธ MCP Tools Overview
FlexaBrain provides 8 specialized MCP tools for comprehensive electrical analysis:
$3
`typescript
analyzeElectricalSchematic({
image_path: string,
analysis_depth?: 'basic' | 'standard' | 'comprehensive',
focus_areas?: ('safety' | 'compliance' | 'performance' | 'maintenance')[],
rail_system_context?: RailSystemContext
})
`
Primary analysis tool providing complete schematic assessment with safety analysis, compliance checking, and expert recommendations.
$3
`typescript
extractComponentInventory({
image_path: string,
output_format: 'JSON' | 'CSV' | 'PDF',
include_specifications?: boolean,
group_by_category?: boolean
})
`
Generates detailed component catalogs with specifications, maintenance requirements, and categorization.
$3
`typescript
validateElectricalStandards({
image_path: string,
standards: string[],
rail_system_type?: string,
region?: 'EU' | 'US' | 'ASIA' | 'GLOBAL'
})
`
Comprehensive standards compliance validation against IEC, IEEE, EN, and rail-specific regulations.
$3
`typescript
analyzePowerFlow({
image_path: string,
system_voltage?: number,
analysis_focus?: 'traction' | 'auxiliary' | 'signaling' | 'complete',
include_harmonics?: boolean
})
`
Advanced power system analysis with efficiency calculations, load balancing, and optimization recommendations.
$3
`typescript
generateMaintenanceSchedule({
image_path: string,
rail_system_type: string,
maintenance_strategy: 'PREVENTIVE' | 'PREDICTIVE' | 'CONDITION_BASED',
time_horizon_months: number
})
`
Intelligent maintenance scheduling based on component types, usage patterns, and rail engineering best practices.
$3
`typescript
checkSafetyCompliance({
image_path: string,
voltage_level: number,
safety_standards: string[],
include_arc_flash_analysis?: boolean,
include_ppe_recommendations?: boolean
})
`
Comprehensive safety analysis including arc flash hazard assessment, electrical shock risks, and PPE requirements.
$3
`typescript
transformSchematicImage({
input_path: string,
output_path?: string,
operations: ('enhance_contrast' | 'denoise' | 'binarize' | 'deskew')[],
enhancement_level?: 'basic' | 'standard' | 'aggressive'
})
`
Advanced image preprocessing for improved OCR accuracy and analysis quality.
$3
`typescript
batchAnalyzeSchematics({
input_directory: string,
file_pattern?: string,
analysis_depth?: 'basic' | 'standard' | 'comprehensive',
generate_comparison?: boolean,
parallel_processing?: boolean
})
`
Efficient batch processing with comparison analysis and consolidated reporting.
---
๐ Rail Engineering Expertise
FlexaBrain's competitive advantage lies in its deep rail electrical engineering knowledge:
$3
- DC Systems: 600V, 750V, 1500V, 3000V third rail and overhead
- AC Systems: 25kV 50Hz/60Hz, 15kV 16โ
Hz high-speed rail
- Dual Systems: Multi-voltage compatibility analysis
- Components: Traction converters, choppers, inverters, transformers
$3
- Signal References: 8-digit identification pattern recognition
- Control Systems: ATC, ATS, CBTC, PTC, ERTMS compatibility
- Interlocking Logic: Safety-critical circuit validation
- Communication: Train-to-wayside, wayside-to-control center
$3
`typescript
// Traction Converters: A601, A1234B, CONV01
/^(A|CONV|INV|REC)\d+[A-Z]?$/
// Circuit Breakers: CB101, Q205, BR999
/^(CB|Q|BR|MCB)\d+[A-Z]?$/
// Signal References: 12345678 (8-digit)
/^\d{8}$/
// Transformers: T201, TR305A, TRANS01
/^(TR?|TRANS|TX)\d+[A-Z]?$/
`
$3
- Arc Flash Analysis: IEEE 1584-2018 calculations
- PPE Categories: NFPA 70E compliance
- Rail Standards: EN 50155, IEC 61375, TSI compliance
- Grounding Systems: TN, TT, IT system validation
---
๐๏ธ Architecture Overview
`mermaid
graph TB
A[MCP Client] --> B[FlexaBrain MCP Server]
B --> C[OCR Service]
B --> D[Component Classifier]
B --> E[Electrical Analyzer]
C --> F[Tesseract.js]
D --> G[Rail Component Database]
E --> H[Safety Analysis Engine]
E --> I[Standards Validator]
E --> J[Maintenance Scheduler]
G --> K[Traction Power Patterns]
G --> L[Signaling Patterns]
G --> M[Control Patterns]
`
$3
1. OCR Service - Tesseract.js with electrical schematic optimizations
2. Component Classifier - ML-powered recognition with rail expertise
3. Electrical Analyzer - Main orchestrator coordinating all analysis
4. Safety Engine - Arc flash, electrical hazard, and risk assessment
5. Standards Validator - Automated compliance checking
6. Maintenance Scheduler - Predictive maintenance recommendations
---
๐ Usage Examples
$3
`typescript
const result = await analyzeElectricalSchematic({
image_path: './schematics/metro-substation.png',
analysis_depth: 'comprehensive',
rail_system_context: {
system_type: 'METRO',
voltage_system: '750V DC',
region: 'EU',
applicable_standards: ['EN 50155', 'EN 50121']
},
focus_areas: ['safety', 'compliance', 'maintenance']
});
// Rich analysis including:
// - Component inventory (converters, breakers, contactors)
// - Safety analysis (arc flash category, PPE requirements)
// - Standards compliance (EN 50155 validation)
// - Maintenance schedule (quarterly inspections)
// - Expert recommendations (optimization opportunities)
`
$3
`typescript
const signalAnalysis = await analyzeElectricalSchematic({
image_path: './schematics/ertms-signaling.png',
analysis_depth: 'standard',
rail_system_context: {
system_type: 'HIGH_SPEED',
voltage_system: '25kV AC',
region: 'EU',
applicable_standards: ['ERTMS', 'TSI', 'CENELEC']
},
focus_areas: ['safety', 'compliance']
});
// Specialized analysis for:
// - Signal reference validation (8-digit patterns)
// - ERTMS/ETCS compatibility checking
// - Safety-critical circuit validation
// - EMC compliance assessment
`
$3
`typescript
const batchResults = await batchAnalyzeSchematics({
input_directory: './project-schematics/',
file_pattern: '*.png',
analysis_depth: 'standard',
generate_comparison: true,
output_format: 'JSON',
parallel_processing: true
});
// Comprehensive batch analysis:
// - Individual schematic reports
// - Cross-schematic consistency checking
// - Design pattern analysis
// - Consolidated recommendations
// - Project-level compliance summary
`
---
๐ง Configuration
$3
`bash
OCR Configuration
TESSERACT_LANG=eng
TESSERACT_PSM=6
OCR_CONFIDENCE_THRESHOLD=0.6
Analysis Configuration
MIN_COMPONENT_CONFIDENCE=0.7
TARGET_ACCURACY=0.85
MAX_PROCESSING_TIME=30000
Rail System Defaults
DEFAULT_RAIL_SYSTEM=METRO
DEFAULT_VOLTAGE_SYSTEM=1500V_DC
DEFAULT_REGION=US
`
$3
`typescript
// Add custom validation standards
const customAnalysis = await validateElectricalStandards({
image_path: './schematic.png',
standards: [
'EN 50155', // Railway applications - Electronic equipment
'IEC 61375', // Train communication network
'IEEE 1584', // Arc flash hazard calculation
'NFPA 70E', // Electrical safety in workplace
'CUSTOM-RAIL-001' // Your custom standard
],
custom_criteria: [
'All 25kV components must have surge protection',
'Signal circuits require redundant paths',
'Arc flash boundaries clearly marked'
]
});
`
---
๐งช Testing
FlexaBrain includes comprehensive test coverage:
`bash
Run all tests
npm test
Run specific test suites
npm run test:services # Core service tests
npm run test:tools # MCP tool tests
npm run test:integration # End-to-end tests
Generate coverage report
npm run test:coverage
`
$3
- ๐ง Unit Tests: Individual service and component testing
- ๐ Integration Tests: MCP tool and workflow testing
- โก Performance Tests: Load testing and benchmarking
- ๐ก๏ธ Safety Tests: Error handling and edge case validation
- ๐ Domain Tests: Rail engineering expertise validation
---
๐ Deployment
$3
`dockerfile
FROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY dist/ ./dist/
EXPOSE 3000
CMD ["node", "dist/index.js"]
`
`bash
Build and run
docker build -t flexabrain-mcp .
docker run -p 3000:3000 flexabrain-mcp
`
$3
#### Claude Desktop
`json
{
"mcpServers": {
"flexabrain": {
"command": "node",
"args": ["/path/to/flexabrain-mcp/dist/index.js"],
"env": {
"TESSERACT_LANG": "eng"
}
}
}
}
`
#### VS Code MCP Extension
`json
{
"mcp.servers": [
{
"name": "FlexaBrain",
"command": "node /path/to/flexabrain-mcp/dist/index.js"
}
]
}
`
---
๐ Documentation
- API Reference - Complete tool documentation
- Rail Engineering Guide - Domain expertise details
- Developer Guide - Extension and customization
- Safety Guidelines - Electrical safety best practices
- Standards Reference - Supported standards and compliance
---
๐ค Contributing
We welcome contributions from the rail engineering and software development communities!
$3
`bash
git clone https://github.com/your-org/flexabrain-mcp.git
cd flexabrain-mcp
npm install
npm run dev # Development mode with hot reload
``