使用说明
项目简介
本项目是一个基于 Model Context Protocol (MCP) 的服务器实现,专门用于管理 Counter-Strike 2 (CS2) 游戏服务器。它允许用户通过支持 MCP 协议的客户端(如 Cursor 或配置后的 GitHub Copilot)使用自然语言指令来远程控制和监控 CS2 服务器。
主要功能点
- 自然语言管理CS2服务器: 通过自然语言指令即可管理服务器,无需记忆复杂的 RCON 命令。
- RCON命令执行: 支持执行任何 CS2 服务器的 RCON 命令。
- 服务器状态监控: 可以获取服务器的实时状态信息,包括玩家列表、地图信息等。
- SSE通信: 使用 Server-Sent Events (SSE) 技术实现与客户端的实时通信。
- Docker部署: 提供 Docker 镜像,方便快捷部署。
安装步骤
- 安装 Python 环境: 确保已安装 Python 3.8 或更高版本。
- 安装项目: 克隆或下载仓库代码后,在项目根目录下运行以下命令安装:
pip install -e .
服务器配置
MCP 客户端需要配置 MCP 服务器的连接信息。以下是针对 Cursor 或其他 MCP 客户端的配置示例('~/.cursor/mcp.json' 或客户端相应的配置文件),请根据实际情况修改:
{ "mcpServers": { "cs2server": { "url": "http://localhost:8080/cs2server/sse", "command": "rcon-mcp", "args": [], "serverName": "CS2 RCON MCP Server", "description": "管理 CS2 服务器", "environmentVariables": [ {"name": "HOST", "label": "CS2 服务器 IP", "description": "您的 CS2 服务器 IP 地址"}, {"name": "SERVER_PORT", "label": "CS2 服务器端口", "description": "您的 CS2 服务器 RCON 端口"}, {"name": "RCON_PASSWORD", "label": "RCON 密码", "description": "您的 CS2 服务器 RCON 密码"} ] } } }
配置参数说明:
- '"url"': MCP 服务器的 SSE 连接地址,默认为 'http://localhost:8080/cs2server/sse'。
- '"command"': 启动 MCP 服务器的命令,这里设置为 'rcon-mcp',对应项目的入口点。
- '"args"': 启动命令的参数,本项目无需额外参数,保持为空列表 '[]' 即可。
- '"serverName"': 在 MCP 客户端中显示的服务名称,可以自定义。
- '"description"': 服务的描述信息,方便在客户端中识别。
- '"environmentVariables"': 重要,MCP 客户端需要用户配置的环境变量,这些变量会被传递给 MCP 服务器,用于连接 CS2 服务器。
- '"HOST"': CS2 服务器的 IP 地址。
- '"SERVER_PORT"': CS2 服务器的 RCON 端口。
- '"RCON_PASSWORD"': CS2 服务器的 RCON 密码。
注意: 请务必在 MCP 客户端中正确配置上述环境变量,否则 MCP 服务器将无法连接到您的 CS2 服务器。
基本使用方法
- 启动 MCP 服务器: 在安装好项目并配置好环境变量后,运行以下命令启动服务器:
或者,如果您使用 Docker 部署,请参考仓库 README 中的 Docker 运行指南。python -m rcon_mcp - 配置 MCP 客户端: 根据上述 “服务器配置” 部分,配置您的 MCP 客户端(如 Cursor)。
- 使用自然语言指令: 在 MCP 客户端中,您可以使用自然语言指令来管理 CS2 服务器。例如:
- “添加 5 个机器人并开始 dust2 地图的竞技模式”
- “服务器当前状态如何?有多少玩家在线?现在是什么地图?”
- “重启游戏”
- “切换地图到 inferno”
更多可用命令,请参考仓库 README 或 'src/rcon_mcp/commands.py' 文件中 'RCONCommands.get_available_commands()' 方法的定义。
信息
分类
开发者工具