MCP Cheat Engine Server — provides safe, structured read-only access to memory analysis and debugging functionality through the Model Context Protocol (MCP). For developers, security researchers, and game modders.
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport stdio counts 60 tools · 0 res
· 0 prompts
permission surface via code analysis
tools
-
add_address_to_cheat_table
-
attach_to_process
-
browse_cheat_tables_directory
-
cleanup_terminated_applications
-
comprehensive_cheat_table_analysis
-
create_cheat_table_backup
-
create_new_cheat_table
-
detach_process
-
extract_cheat_table_addresses
-
extract_cheat_table_disassembler_comments
-
extract_cheat_table_lua_script
-
extract_cheat_table_structures
-
extract_unitplayer_structure
-
get_application_info
-
get_cheat_engine_basic_version
-
get_cheat_engine_version
-
get_file_info
-
get_launched_applications
-
get_process_info
-
get_whitelisted_applications
-
launch_application
-
list_cheat_tables
-
list_processes
-
load_cheat_table
-
modify_address_in_cheat_table
-
pyautogui_batch_clicks
-
pyautogui_batch_keys
-
pyautogui_click_mouse
-
pyautogui_create_image_template
-
pyautogui_drag_mouse
-
pyautogui_find_all_images
-
pyautogui_find_image
-
pyautogui_find_template
-
pyautogui_get_available_keys
-
pyautogui_get_mouse_position
-
pyautogui_get_pixel_color
-
pyautogui_get_screen_info
-
pyautogui_hold_key
-
pyautogui_is_on_screen
-
pyautogui_key_combination
-
pyautogui_move_mouse
-
pyautogui_press_key
-
pyautogui_screenshot
-
pyautogui_scroll_mouse
-
pyautogui_set_failsafe
-
pyautogui_set_pause
-
pyautogui_type_text
-
pywinauto_click_element
-
pywinauto_close_application
-
pywinauto_connect_application
-
pywinauto_find_element
-
pywinauto_find_windows
-
pywinauto_get_window_hierarchy
-
pywinauto_launch_application
-
pywinauto_type_text
-
remove_address_from_cheat_table
-
terminate_all_launched_applications
-
terminate_application
-
tool
-
write_cheat_table_to_file
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 4a45af7 · analyzer v33 · 4d ago
danger signals1
- dynamic code execution __import__() bethington-cheat-engine-server-python-4a45af7/tests/run_advanced_tests.py :114
__import__(dep)
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 106
filesystem 35
- fs bethington-cheat-engine-server-python-4a45af7/clients/complete_address_list_exporter.py :11
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/clients/complete_cheat_table_test_client.py :19
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/clients/complete_mcp_workflow_client.py :12
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/clients/comprehensive_cheat_table_test_client.py :18
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/clients/comprehensive_mcp_workflow_client.py :14
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/clients/dbengine_cheat_table_client.py :13
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/clients/dbengine_complete_address_client.py :20
from pathlib import Path - fs (weak) bethington-cheat-engine-server-python-4a45af7/clients/direct_structure_test.py :11
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/clients/enhanced_complete_address_extractor.py :10
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/clients/simple_address_extractor.py :10
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/clients/simple_complete_address_extractor.py :10
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/clients/simplified_mcp_workflow_client.py :14
from pathlib import Path - fs (weak) bethington-cheat-engine-server-python-4a45af7/clients/structure_preservation_test.py :9
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/clients/test_add_address_focused.py :11
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/clients/test_structure_preservation.py :17
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/final_validation.py :7
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/server/cheatengine/ce_bridge.py :16
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/server/cheatengine/lua_interface.py :269
os.unlink(temp_file) - fs bethington-cheat-engine-server-python-4a45af7/server/cheatengine/table_parser.py :9
import shutil - fs bethington-cheat-engine-server-python-4a45af7/server/config/settings.py :11
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/server/config/whitelist.py :102
with open(whitelist_path, 'r') as f: - fs bethington-cheat-engine-server-python-4a45af7/server/gui_automation/core/integration.py :29
from pathlib import Path - fs (weak) bethington-cheat-engine-server-python-4a45af7/server/gui_automation/demos/basic_demo.py :22
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/server/main.py :10
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/server/process/launcher.py :13
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/server/window_automation/core/integration.py :32
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/test_ce_version.py :8
from pathlib import Path - fs bethington-cheat-engine-server-python-4a45af7/test_mcp_tools.py :19
from pathlib import Path - fs (weak) bethington-cheat-engine-server-python-4a45af7/tests/gui_automation/test_integration.py :24
from pathlib import Path - fs (weak) bethington-cheat-engine-server-python-4a45af7/tests/test_automation_integration.py :12
from pathlib import Path - fs (weak) bethington-cheat-engine-server-python-4a45af7/tests/test_direct_automation.py :14
from pathlib import Path - fs (weak) bethington-cheat-engine-server-python-4a45af7/tests/test_enhanced_automation.py :14
from pathlib import Path - fs (weak) bethington-cheat-engine-server-python-4a45af7/tests/test_final_validation.py :16
from pathlib import Path - fs (weak) bethington-cheat-engine-server-python-4a45af7/tests/test_launcher_comprehensive.py :220
os.unlink(session_file) - fs (weak) bethington-cheat-engine-server-python-4a45af7/tests/test_system.py :10
from pathlib import Path
shell / exec 12
- shell bethington-cheat-engine-server-python-4a45af7/clients/process_investigation.py :9
import subprocess - shell bethington-cheat-engine-server-python-4a45af7/server/cheatengine/lua_interface.py :8
import subprocess - shell (weak) bethington-cheat-engine-server-python-4a45af7/server/gui_automation/demos/notepad_demo.py :21
import subprocess - shell bethington-cheat-engine-server-python-4a45af7/server/process/launcher.py :8
import subprocess - shell (weak) bethington-cheat-engine-server-python-4a45af7/tests/quick_test.py :9
import subprocess - shell (weak) bethington-cheat-engine-server-python-4a45af7/tests/test_accessibility.py :9
import subprocess - shell (weak) bethington-cheat-engine-server-python-4a45af7/tests/test_alternative_apps.py :9
import subprocess - shell (weak) bethington-cheat-engine-server-python-4a45af7/tests/test_direct_automation.py :12
import subprocess - shell (weak) bethington-cheat-engine-server-python-4a45af7/tests/test_enhanced_automation.py :12
import subprocess - shell (weak) bethington-cheat-engine-server-python-4a45af7/tests/test_final_validation.py :12
import subprocess - shell (weak) bethington-cheat-engine-server-python-4a45af7/tests/test_system.py :9
import subprocess - shell (weak) bethington-cheat-engine-server-python-4a45af7/tests/test_working_apps.py :96
import subprocess
tool registrations 60
- list_processes bethington-cheat-engine-server-python-4a45af7/server/main.py :111
- attach_to_process bethington-cheat-engine-server-python-4a45af7/server/main.py :132
- get_process_info bethington-cheat-engine-server-python-4a45af7/server/main.py :173
- detach_process bethington-cheat-engine-server-python-4a45af7/server/main.py :192
- get_whitelisted_applications bethington-cheat-engine-server-python-4a45af7/server/main.py :217
- launch_application bethington-cheat-engine-server-python-4a45af7/server/main.py :258
- terminate_application bethington-cheat-engine-server-python-4a45af7/server/main.py :295
- get_launched_applications bethington-cheat-engine-server-python-4a45af7/server/main.py :325
- get_application_info bethington-cheat-engine-server-python-4a45af7/server/main.py :358
- cleanup_terminated_applications bethington-cheat-engine-server-python-4a45af7/server/main.py :392
- terminate_all_launched_applications bethington-cheat-engine-server-python-4a45af7/server/main.py :413
- list_cheat_tables bethington-cheat-engine-server-python-4a45af7/server/main.py :453
- load_cheat_table bethington-cheat-engine-server-python-4a45af7/server/main.py :505
- extract_cheat_table_addresses bethington-cheat-engine-server-python-4a45af7/server/main.py :561
- browse_cheat_tables_directory bethington-cheat-engine-server-python-4a45af7/server/main.py :667
- extract_cheat_table_structures bethington-cheat-engine-server-python-4a45af7/server/main.py :740
- extract_cheat_table_lua_script bethington-cheat-engine-server-python-4a45af7/server/main.py :789
- extract_cheat_table_disassembler_comments bethington-cheat-engine-server-python-4a45af7/server/main.py :819
- extract_unitplayer_structure bethington-cheat-engine-server-python-4a45af7/server/main.py :866
- comprehensive_cheat_table_analysis bethington-cheat-engine-server-python-4a45af7/server/main.py :938
- create_cheat_table_backup bethington-cheat-engine-server-python-4a45af7/server/main.py :1038
- add_address_to_cheat_table bethington-cheat-engine-server-python-4a45af7/server/main.py :1058
- modify_address_in_cheat_table bethington-cheat-engine-server-python-4a45af7/server/main.py :1140
- remove_address_from_cheat_table bethington-cheat-engine-server-python-4a45af7/server/main.py :1228
- create_new_cheat_table bethington-cheat-engine-server-python-4a45af7/server/main.py :1254
- write_cheat_table_to_file bethington-cheat-engine-server-python-4a45af7/server/main.py :1282
- get_file_info bethington-cheat-engine-server-python-4a45af7/server/main.py :1407
- pyautogui_screenshot bethington-cheat-engine-server-python-4a45af7/server/main.py :1441
- pyautogui_get_pixel_color bethington-cheat-engine-server-python-4a45af7/server/main.py :1461
- pyautogui_find_image bethington-cheat-engine-server-python-4a45af7/server/main.py :1478
- pyautogui_find_all_images bethington-cheat-engine-server-python-4a45af7/server/main.py :1503
- pyautogui_get_mouse_position bethington-cheat-engine-server-python-4a45af7/server/main.py :1534
- pyautogui_move_mouse bethington-cheat-engine-server-python-4a45af7/server/main.py :1551
- pyautogui_click_mouse bethington-cheat-engine-server-python-4a45af7/server/main.py :1573
- pyautogui_drag_mouse bethington-cheat-engine-server-python-4a45af7/server/main.py :1596
- pyautogui_scroll_mouse bethington-cheat-engine-server-python-4a45af7/server/main.py :1620
- pyautogui_type_text bethington-cheat-engine-server-python-4a45af7/server/main.py :1642
- pyautogui_press_key bethington-cheat-engine-server-python-4a45af7/server/main.py :1662
- pyautogui_key_combination bethington-cheat-engine-server-python-4a45af7/server/main.py :1683
- pyautogui_hold_key bethington-cheat-engine-server-python-4a45af7/server/main.py :1702
- pyautogui_get_screen_info bethington-cheat-engine-server-python-4a45af7/server/main.py :1723
- pyautogui_is_on_screen bethington-cheat-engine-server-python-4a45af7/server/main.py :1740
- pyautogui_set_pause bethington-cheat-engine-server-python-4a45af7/server/main.py :1760
- pyautogui_set_failsafe bethington-cheat-engine-server-python-4a45af7/server/main.py :1779
- pyautogui_get_available_keys bethington-cheat-engine-server-python-4a45af7/server/main.py :1798
- pyautogui_create_image_template bethington-cheat-engine-server-python-4a45af7/server/main.py :1826
- pyautogui_find_template bethington-cheat-engine-server-python-4a45af7/server/main.py :1849
- pyautogui_batch_clicks bethington-cheat-engine-server-python-4a45af7/server/main.py :1874
- pyautogui_batch_keys bethington-cheat-engine-server-python-4a45af7/server/main.py :1893
- pywinauto_connect_application bethington-cheat-engine-server-python-4a45af7/server/main.py :1923
- pywinauto_launch_application bethington-cheat-engine-server-python-4a45af7/server/main.py :1944
- pywinauto_close_application bethington-cheat-engine-server-python-4a45af7/server/main.py :1967
- pywinauto_find_windows bethington-cheat-engine-server-python-4a45af7/server/main.py :1988
- pywinauto_find_element bethington-cheat-engine-server-python-4a45af7/server/main.py :2010
- pywinauto_get_window_hierarchy bethington-cheat-engine-server-python-4a45af7/server/main.py :2037
- pywinauto_click_element bethington-cheat-engine-server-python-4a45af7/server/main.py :2059
- pywinauto_type_text bethington-cheat-engine-server-python-4a45af7/server/main.py :2091
- get_cheat_engine_version bethington-cheat-engine-server-python-4a45af7/server/main.py :2132
- get_cheat_engine_basic_version bethington-cheat-engine-server-python-4a45af7/server/main.py :2197
- tool bethington-cheat-engine-server-python-4a45af7/server/window_automation/tools/mcp_tools.py :668
declared dependencies 4
- mcp@>=1.0.0
- trio@>=0.22.0
- psutil@>=5.9.0
- capstone@>=5.0.0