MCP作弊引擎服务器文档
如果你觉得这有用,请⭐ 为repo加星——这有助于其他人发现它!
📋 目录
______________________________________________________________________
🎯 概述
这 MCP作弊引擎服务器 通过模型上下文协议(MCP)提供对内存分析和调试功能的安全、结构化访问。此工具设计用于:
- 软件开发人员 调试应用程序
- 安全研究人员 分析程序
- 学生 计算机内存与逆向工程学习
- 游戏模组 理解游戏机制
⚠️ 重要安全须知
此服务器在 只读模式 为了安全。它可以读取和分析内存,但不能修改内存。所有操作都会被记录下来进行安全审计。
🔧 主要特点
- ✅ 流程枚举和附件
- ✅ 具有多种数据类型的内存读取
- ✅ 模式扫描和搜索
- ✅ 组装代码拆卸
- ✅ 指针链分辨率
- ✅ 作弊引擎表(.CT)导入
- ✅ 安全Lua脚本分析
- ✅ 全面的安全控制
______________________________________________________________________
🚀 快速入门指南
先决条件
- Windows 10/11 (建议使用64位)
- Python 3.9或更高版本
- 管理员权限 (用于内存访问)
- 克劳德桌面版 或兼容的MCP客户端
30秒设置
- 下载 服务器文件到您的计算机
- 以管理员身份打开PowerShell
- 导航 到服务器目录
- 安装依赖项:
pip install -r requirements.txt - 启动服务器:
python server/main.py
首先使用
- 列出流程:使用
list_processes查看可用程序的工具 - 附加到流程:使用
attach_to_process带有进程ID - 读取内存:使用
read_memory_region检查记忆 - 安全分离:使用
detach_from_process完成后
🔌 Claude桌面MCP设置
📖 有关详细的Claude Desktop设置说明,请参阅 MCP_SETUP.md
快速配置摘要:
- 查找您的Claude桌面配置:
%APPDATA%\Claude\claude_desktop_config.json(Windows) - 添加MCP服务器配置:
{
"mcpServers": {
"cheat-engine": {
"command": "python",
"args": ["path\\to\\server\\main.py", "--debug", "--read-only"],
"cwd": "path\\to\\cheat-engine-server-python"
}
}
}- 重新启动克劳德桌面
- 测试:要求Claude“列出使用MCP服务器的进程”
______________________________________________________________________
📦 安装
步骤1:系统要求
- 操作系统:Windows 10/11(主要),Linux/macOS(有限)
- Python版本:3.9、3.10、3.11或3.12
- 记忆:最低4GB RAM,建议8GB
- 权限:需要管理员/root访问权限
步骤2:下载和设置
# Clone or download the project
cd C:\your-desired-location
# Extract files if downloaded as ZIP
# Navigate to project directory
cd cheat-engine-server-python
# Verify Python version
python --version步骤3:安装依赖项
# Install required packages
pip install -r requirements.txt
# Verify installation
python -c "import mcp, trio, psutil, capstone; print('All dependencies installed successfully!')"步骤4:测试安装
# Test the server
python server/main.py --test
# You should see: "MCP Cheat Engine Server initialized successfully"______________________________________________________________________
⚙️ 配置
基本配置
服务器使用配置文件 server/config/ 目录:
settings.json (首次运行时自动创建)
{
"security": {
"read_only_mode": true,
"require_whitelist": true,
"log_all_operations": true
},
"performance": {
"max_memory_read": 1048576,
"scan_timeout": 30,
"max_results": 1000
}
}whitelist.json (过程访问控制)
{
"processes": [
{
"name": "notepad.exe",
"allowed": true,
"description": "Text editor for testing"
},
{
"name": "calculator.exe",
"allowed": true,
"description": "Calculator application"
}
]
}安全设置说明
| 设置 | 说明 | 默认值 | 建议 |
|---|---|---|---|
read_only_mode | 防止内存写入 | true | 保持启用状态 |
require_whitelist | 只允许白名单进程 | true | 启用以确保安全 |
log_all_operations | 记录每次操作 | true | 启用审核 |
max_memory_read | 每次读取的最大字节数 | 1MB | 根据需要进行调整 |
______________________________________________________________________
🛠️ 使用工具
1.过程管理
列出可用流程
# Find processes you can attach to
result = use_tool("list_processes")您将看到:
- 进程名称和ID
- 内存使用
- 是否可访问
- 需要安全级别
附加到流程
# Attach to a specific process
result = use_tool("attach_to_process", {
"process_id": 1234
})最佳实践:
- 从记事本等简单程序开始
- 完成后始终分离
- 如果附件失败,请检查白名单
2.内存读取
读取地址处的内存
# Read 64 bytes starting at address 0x140000000
result = use_tool("read_memory_region", {
"address": "0x140000000",
"size": 64,
"data_type": "bytes"
})支持的数据类型
bytes-原始字节数据string-ASCII/UTF-8文本int32-32位带符号整数uint32-32位无符号整数int64-64位带符号整数uint64-64位无符号整数float-32位浮点double-64位浮点
3.内存扫描
搜索模式
# Find all occurrences of a byte pattern
result = use_tool("scan_memory", {
"pattern": "48 8B 05 ?? ?? ?? ??", # ?? = wildcard
"start_address": "0x140000000",
"end_address": "0x141000000"
})图案格式示例
"41 42 43"-查找字节0x41、0x42、0x43"48 ?? 05 ?? ?? ?? ??"-未知字节的通配符"Hello World"-搜索ASCII文本"00 00 00 01"-查找整数值1
4.代码分析
拆卸装配代码
# Disassemble 100 bytes of code
result = use_tool("disassemble_code", {
"address": "0x140001000",
"size": 100,
"architecture": "x64"
})分析数据结构
# Analyze memory for data structures
result = use_tool("analyze_structure", {
"address": "0x200000000",
"size": 256
})5.指针链
遵循多级指针
# Resolve [[base + 0x10] + 0x20] + 0x30
result = use_tool("resolve_pointer_chain", {
"base_address": "0x140000000",
"offsets": [16, 32, 48] # 0x10, 0x20, 0x30 in decimal
})______________________________________________________________________
🔒 安全与安保
只读保护
服务器 无法修改内存 -它只能阅读和分析。这可以防止:
- 意外程序崩溃
- 安全漏洞
- 系统不稳定
流程白名单
只能访问已批准的流程:
{
"processes": [
{"name": "notepad.exe", "allowed": true},
{"name": "suspicious.exe", "allowed": false}
]
}操作日志
所有操作都记录到 logs/operations.log:
2025-07-30 10:30:15 - INFO - Process attached: notepad.exe (PID: 1234)
2025-07-30 10:30:20 - INFO - Memory read: 0x140000000, size: 64
2025-07-30 10:30:25 - INFO - Process detached: notepad.exe许可要求
- 视窗:以管理员身份运行
- Linux:以root身份运行或具有适当的功能
- macOS:某些操作可能需要禁用SIP
______________________________________________________________________
🔧 故障排除
常见问题
“拒绝访问”错误
问题:无法附加到进程 解决方案:
- 以管理员身份运行
- 检查进程是否在白名单中
- 验证进程未受防病毒保护
“找不到模块”错误
问题:缺少Python依赖项 解决方案:
pip install --upgrade -r requirements.txt“找不到进程”错误
问题:进程ID不存在 解决方案:
- 使用
list_processes获取当前ID - 检查进程是否仍在运行
- 尝试进程名称而不是ID
内存读取失败
问题:无法读取地址处的内存 解决方案:
- 检查地址是否有效
get_memory_regions - 验证内存保护是否允许读取
- 尝试较小的读取大小
调试模式
启用详细日志记录:
python server/main.py --debug获取帮助
- 查看下面的常见问题部分
- 查看中的日志文件
logs/目录 - 验证中的配置
server/config/ - 首先使用记事本等简单程序进行测试
______________________________________________________________________
🎓 高级用法
作弊引擎表导入
导入现有。CT文件:
result = use_tool("import_cheat_table", {
"file_path": "C:/path/to/table.CT"
})Lua脚本分析
分析Cheat Engine Lua脚本:
result = use_tool("execute_lua_script", {
"script_content": "print('Hello from Lua')",
"safe_mode": true
})自定义内存区域
定义具体的分析区域:
# Get full memory map
regions = use_tool("get_memory_regions")
# Analyze specific region
for region in regions:
if region['protect'] == 'PAGE_EXECUTE_READ':
# Analyze executable memory
pass自动化示例
# Complete analysis workflow
def analyze_process(process_name):
# 1. Find and attach to process
processes = use_tool("list_processes")
target_pid = find_process_by_name(processes, process_name)
# 2. Attach to process
use_tool("attach_to_process", {"process_id": target_pid})
# 3. Get memory layout
regions = use_tool("get_memory_regions")
# 4. Scan for patterns
for region in regions:
if region['readable']:
scan_results = use_tool("scan_memory", {
"pattern": "48 8B 05",
"start_address": region['base_address'],
"end_address": region['base_address'] + region['size']
})
# 5. Clean up
use_tool("detach_from_process")______________________________________________________________________
📚 api参考
工具类别
流程管理
- list_processs() -获取所有正在运行的进程
- attach_to_process(process_id) -附加到特定流程
- detach_from_process() -安全地脱离当前进程
- get_process_info() -获取详细的流程信息
内存操作
- read_memory_regic(地址、大小、数据类型) -读取内存
- get_memory_regics() -获取虚拟内存布局
- scan_memory(模式、起始地址、结束地址) -模式搜索
分析工具
- analyze_structure(地址、大小) -结构分析
- 反汇编代码(地址、大小、架构) -代码拆卸
- resolve_pointer_chain(基址、偏移量) -指针分辨率
高级功能
- import_cheat_table(文件路径) -进口。CT文件
- execute_lua_script(脚本内容,安全模式) -Lua分析
数据类型参考
| 类型 | 大小 | 范围 | 用例 |
|---|---|---|---|
int8 | 1字节 | -128到127 | 小符号数 |
uint8 | 1字节 | 0到255 | 字节,字符 |
int16 | 2个字节 | -32768到32767 | 短整数 |
uint16 | 2个字节 | 0到65535 | 端口号 |
int32 | 4字节 | ±21亿 | 标准整数 |
uint32 | 4字节 | 0到42亿 | 地址(32位) |
int64 | 8字节 | ±9.2千兆位 | 大数 |
uint64 | 8个字节 | 0到18.4个字节 | 地址(64位) |
float | 4字节 | ±3.4E±38 | 十进制数 |
double | 8字节 | ±1.7E±308 | 高精度小数 |
______________________________________________________________________
❓ 常见问题解答
一般问题
Q: 这个工具使用安全吗? A: 是的,服务器以只读模式运行,无法修改内存或损坏您的系统。
Q: 我可以在游戏中使用这个吗? A: 是的,但请尊重网络游戏的服务条款。此工具主要用于教育和调试目的。
Q: 我需要安装作弊引擎吗? A: 不,这是一个通过MCP提供类似功能的独立服务器。
技术问题
Q: 为什么我需要管理员权限? A: 出于安全原因,Windows需要提升权限才能从其他进程读取内存。
Q: 我可以在Mac或Linux上运行这个吗? A: 服务器对Mac/Linux的支持有限。某些特定于Windows的功能可能无法工作。
Q: 服务器使用了多少内存? A: 通常为50-100MB,具体取决于所分析进程的大小。
使用问题
Q: 我应该从哪些流程开始? A: 从记事本、计算器或您自己的测试应用程序等简单程序开始。
Q: 如何找到正确的内存地址? A: 使用内存扫描来查找模式,然后分析结果以识别相关地址。
Q: 我可以保存我的分析结果吗? A: 是的,所有工具结果都可以保存到文件中,以供以后参考和分析。
故障排除问题
Q: 服务器无法启动-我应该检查什么? A: 验证Python版本(3.9+),安装依赖项,并以管理员身份运行。
Q: 我无法附加到流程中——为什么? A: 检查进程白名单,验证进程是否正在运行,并确保您具有管理员权限。
Q: 内存读取失败了——怎么了? A: 内存地址可能无效或受保护。使用 get_memory_regions 以找到可读区域。
______________________________________________________________________
📝 许可证和信用证
该项目根据MIT许可证获得许可。内置:
- 快速MCP -模型上下文协议实现
- 顶点 -拆卸发动机
- psutil -工艺和系统公用工程
- 三重奏 -异步I/O框架
______________________________________________________________________
📞 支持
如需更多帮助:
- 彻底审查此文档
- 检查故障排除部分
- 启用调试模式以获取详细的错误信息
- 先用简单程序测试
记住:此工具用于教育和合法的调试目的。始终尊重软件许可证和服务条款。
