- IMcpService 인터페이스 및 McpClient/McpService 구현 추가
- McpClient: Python MCP 서버(localhost:5001)와 JSON-RPC over HTTP 통신
- McpService: McpClient 위임 래퍼, IMcpService 구현
- [JsonPropertyName], PropertyNameCaseInsensitive 적용으로 JSON 역직렬화 수정
- TextToSqlController에 MCP 엔드포인트 5개 추가
- GET /api/text-to-sql/tools
- POST /api/text-to-sql/execute-mcp
- POST /api/text-to-sql/query-history
- GET /api/text-to-sql/tags/search
- GET /api/text-to-sql/drawings
- HistoryQueryRequestDto 추가 (TextToSqlDtos.cs)
- QueryHistoryWithIntervalAsync 올바른 메서드 호출로 수정 (IExperionDbService)
- Program.cs: McpClient 싱글톤 등록, AddHttpClient 잘못된 등록 수정
- 빌드 에러 0건, 경고 0건
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
ExperionCrawler 프로젝트 전체 백업 (11개 커밋 포함)
- OPC UA IIoT 데이터 브리징 인프라
- Text-to-SQL 쿼리 엔진
- 실시간 데이터 스트리밍 서비스
- ASP.NET Core Web API
- TimescaleDB/SQLite 데이터베이스
- 보안 인증서 관리
- 통합 테스트
Major project initialization and feature implementation:
**Core Features:**
- OPC UA client for Honeywell Experion HS R530 integration
- Real-time data streaming and history data retrieval
- Text-to-SQL query engine with TimeScaleDB
- JSON-based node configuration system
- SQLite database with migration support
**Architecture:**
- Clean architecture with Domain, Application, Infrastructure layers
- ASP.NET Core Web API frontend
- Web UI with real-time visualization
- PKI-based OPC UA authentication (TLS)
**Infrastructure Components:**
- ExperionOpcClient: OPC UA connection management
- ExperionRealtimeService: Real-time data streaming
- ExperionHistoryService: Historical data queries
- TextToSqlService: Natural language to SQL queries
- SqlValidator: SQL injection prevention
**Database:**
- TimescaleDB integration (recommended) or SQLite fallback
- Entity Framework Core with Extenstion methods
- OPCTag, KeyValue tables for data storage
**Security:**
- Certificate-based OPC UA endpoint security
- SSL/TLS encryption for database connections
- Output param binding injection prevention
**Testing:**
- Unit tests for TextToSqlService and SqlValidator
- Integration tests for Korean time range extraction
See REVIEW_REQUEST.md for detailed code review information.