Add MCP bridge for external tool integration

Embedded JSON-RPC server over named pipes (rcx-mcp) enabling external
tools like Claude Code to inspect and manipulate the node tree, read/write
hex data, switch sources, and trigger UI actions. Includes stdio adapter
(rcx-mcp-stdio) for stdin/stdout transport. Server is stopped by default;
user starts via File > Start MCP Server.

Also extracts MainWindow class declaration to mainwindow.h and improves
type selector popup Esc button styling.
This commit is contained in:
IChooseYou
2026-02-10 10:55:27 -07:00
committed by sysadmin
parent df566064ba
commit 4295460597
9 changed files with 1400 additions and 103 deletions

View File

@@ -7,7 +7,7 @@ set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)
find_package(Qt6 REQUIRED COMPONENTS Widgets PrintSupport Svg Concurrent)
find_package(Qt6 REQUIRED COMPONENTS Widgets PrintSupport Svg Concurrent Network)
list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
find_package(QScintilla REQUIRED)
@@ -41,6 +41,9 @@ add_executable(ReclassX
src/themes/thememanager.cpp
src/themes/themeeditor.h
src/themes/themeeditor.cpp
src/mainwindow.h
src/mcp/mcp_bridge.h
src/mcp/mcp_bridge.cpp
)
target_include_directories(ReclassX PRIVATE src)
@@ -50,12 +53,16 @@ target_link_libraries(ReclassX PRIVATE
Qt6::PrintSupport
Qt6::Svg
Qt6::Concurrent
Qt6::Network
QScintilla::QScintilla
)
if(WIN32)
target_link_libraries(ReclassX PRIVATE dbghelp psapi)
endif()
add_executable(rcx-mcp-stdio tools/rcx-mcp-stdio.cpp)
target_link_libraries(rcx-mcp-stdio PRIVATE Qt6::Core Qt6::Network)
add_custom_target(screenshot ALL
COMMAND ReclassX --screenshot ${CMAKE_BINARY_DIR}/screenshot.png
DEPENDS ReclassX