mcsm-mcp
mcsm-mcp – MCSManager Minecraft-Serververwaltung MCP Server
Ein eigenständiger MCP Server, umgewandelt aus dem AstrBot-Plugin siwu-mcs-manager-1_0 (Quell-Plugin AstrBot_siwu-mcs-manager):
Verwaltet Minecraft-Serverinstanzen (Liste / Status / Start / Stopp / Neustart / Zwangsstopp / Konsolenbefehle) über die MCSManager-Panel-API,
einsatzbereit für jeden MCP-fähigen Client (Claude Desktop, IDE, Agent-Frameworks usw.).
Werkzeugübersicht (10 Stück)
Werkzeug | Beschreibung |
| Alle Serverinstanzen auflisten (Name/Status/Online-Spieler/Port) |
| Statusdetails einer bestimmten Instanz abfragen (Status/Online-Spieler/Port/Startbefehl) |
| Bestimmte Instanz starten (asynchron im Hintergrund) |
| Bestimmte Instanz normal stoppen (sicheres Speichern) |
| Bestimmte Instanz neu starten |
| Bestimmte Instanz zwangsweise stoppen (Prozess beenden, möglicher Datenverlust) |
| Konsolenbefehl an Instanz senden (say/op/whitelist/give/tp/list usw.) |
| Polling, bis die Instanz den Zielstatus erreicht (ersetzt die Hintergrund-Push-Benachrichtigung des Plugins) |
| Aktuell gültige Konfiguration anzeigen (API-Key/Passwort maskiert) |
| Konfiguration heiß neu laden (nach .env-Änderung kein Neustart nötig), auch Wechsel der Konfigurationsdatei möglich |
Related MCP server: MCSManager MCP Server
Unterschiede zum Original-Plugin
Original-Plugin (AstrBot) | Dieser MCP Server |
Werkzeuge geben chinesischen Text zurück, LLM formuliert die Antwort | Gibt strukturiertes JSON zurück, der Aufrufer formuliert selbst |
QQ-Gruppenberechtigungen (admin_ids / admin_role) | Lese-/Schreibschalter |
Nach Start/Stopp Hintergrund-Polling + aktive Push-Benachrichtigung |
|
Aktivierungswort-Befehle wie | Dem Client/der LLM überlassen, Werkzeuge direkt zu nutzen (kein Chat-Kontext) |
Erzwungene Agent-Tool-Hooks/System-Prompt-Injektion | MCP-Werkzeuge werden vom Client natürlich bei Bedarf bereitgestellt, keine Injektion nötig |
Schnellstart
cd servers/mcs-manager
python -m venv .venv # 或 uv venv .venv
.venv/Scripts/pip install -e . # 或 uv pip install -p .venv -e .Konfiguration (.env.example als .env kopieren und ausfüllen, oder direkt Umgebungsvariablen verwenden):
MCSM_BASE_URL=http://127.0.0.1:23333 # 面板地址
MCSM_API_KEY=xxxx # v10 API Key(推荐);或 MCSM_USERNAME + MCSM_PASSWORD
MCSM_ALLOW_WRITE=1 # 写操作开关:0=只读(默认),1=允许启动/停止等So ändern Sie die Konfiguration (Plugin-Konfiguration → MCP-Konfiguration)
Das ursprüngliche AstrBot-Plugin wurde über das Verwaltungspanel konfiguriert; nach der MCP-Umwandlung ist die Konfiguration eine servers/mcs-manager/.env-Datei (oder Umgebungsvariablen).
Die Entsprechung zu den Konfigurationsoptionen des Original-Plugins zeigt die folgende Tabelle, die Standardwerte sind vollständig identisch:
Konfigurationsoption des Original-Plugins | MCP-Umgebungsvariable | Beschreibung |
|
| Panel-Adresse |
|
| v10 API-Key (empfohlen) |
|
| Anmeldung mit Benutzername/Passwort (v9) |
|
| Anfragetimeout (Sekunden) |
|
| QQ-Gruppenberechtigung → Lese-/Schreib-Hauptschalter (Standard: nur lesen) |
|
| Befehls-Whitelist (kommagetrennt) |
|
| Befehls-Blacklist |
|
| Standard-Wartezeit des wait-Werkzeugs in Sekunden |
| — (aktiv, sobald der Prozess läuft) | Kein Hauptschalter mehr nötig; Prozess nicht starten = deaktiviert |
| — (bedeutungslos) | MCP-Werkzeuge werden vom Client bei Bedarf bereitgestellt, keine erzwungene Injektion |
Änderungsschritte:
servers/mcs-manager/.envbearbeiten (falls nicht vorhanden, zuerstcp .env.example .env);Werkzeug
mcs_reload_configaufrufen, um die Änderung heiß zu übernehmen, oder den Server-Prozess direkt neu starten;Mit
mcs_get_configdie gültigen Werte prüfen (Zugangsdaten werden maskiert als***angezeigt).
Werden Umgebungsvariablen über die Client-Konfiguration übergeben (z. B. der
env-Block in der Claude-Desktop-Konfiguration), genügt nach der Änderung ebenfalls der Aufruf vonmcs_reload_configoder ein Neustart.
Ausführung
stdio (lokaler Prozess, empfohlen):
.venv/Scripts/python -m mcsm_mcp
# 或已安装的入口命令:mcsm-mcpHTTP (remote/mehrere Clients):
.venv/Scripts/python -m mcsm_mcp --transport http --host 127.0.0.1 --port 8000
# 端点:http://127.0.0.1:8000/mcp (streamable-http)Client-Anbindungsbeispiel (stdio)
claude_desktop_config.json von Claude Desktop:
{
"mcpServers": {
"mcs-manager": {
"command": "<安装路径>/.venv/Scripts/python.exe", // Windows;Linux/macOS 用 <安装路径>/.venv/bin/python
"args": ["-m", "mcsm_mcp"],
"env": {
"MCSM_BASE_URL": "http://127.0.0.1:23333",
"MCSM_API_KEY": "你的面板 API Key",
"MCSM_ALLOW_WRITE": "1"
}
}
}
}Debugging: Im npx @modelcontextprotocol/inspector stdio auswählen und die obigen command/args eintragen.
Vollständige Umgebungsvariablen
Variable | Beschreibung | Standard |
| Panel-Adresse (ohne abschließenden Schrägstrich) |
|
| Panel-API-Key (v10 empfohlen) | leer |
| Anmeldung mit Benutzername/Passwort (v9 oder ohne Key) | leer |
| Panel-Anfragetimeout (Sekunden) |
|
| Schreibvorgang-Schalter |
|
| Konsolenbefehls-Whitelist (kommagetrennte Präfixe; leer = alle erlaubt) | leer |
| Blacklist gefährlicher Befehle (Abgleich nach erstem Wort) |
|
| Standard-Warteobergrenze von |
|
|
|
|
| HTTP-Listenadresse/Port |
|
| Pfad zur .env-Datei (optional) |
|
Tests
.venv/Scripts/python tests/test_smoke.py # stdio:tools/list + 无凭据/只读拦截/连接错误
.venv/Scripts/python tests/test_http.py # streamable-http 握手与调用Sicherheitshinweise
Standardmäßig nur lesen: Start/Stopp/Neustart/Zwangsstopp/Befehle senden erfordern
MCSM_ALLOW_WRITE=1; nur bei vertrauenswürdigen Clients aktivieren.Die Befehls-Blacklist blockiert standardmäßig
stop/restart, um eine Umgehung der Panel-Operationen über Konsolenbefehle zu verhindern; zusätzlich kann eine Whitelist zur Verschärfung konfiguriert werden.Panel-Zugangsdaten liegen in
.env(durch .gitignore ausgeschlossen) oder in Umgebungsvariablen; nicht ins Repository committen.submitted=truevon Schreibwerkzeugen bedeutet nur, dass der Befehl übermittelt wurde (asynchron im Hintergrund); zur Bestätigung der Fertigstellungmcs_wait_for_statusverwenden.
Quellcode-Struktur
src/mcsm_mcp/
├── __main__.py # python -m mcsm_mcp 入口
├── server.py # MCPServer + 8 个工具(mcp SDK 2.x)
├── api.py # MCSManagerAPI 客户端(无 AstrBot 依赖,含 v9/v10 兼容)
└── config.py # 环境变量配置 + 读写开关 + 指令白/黑名单策略Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables management of Minecraft servers through the MCSManager API. Supports executing server commands, checking player status, retrieving server information, and controlling game settings like weather.191MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to manage Minecraft servers through MCSManager, including instance control (start/stop/restart), file management, scheduled tasks, user management, and backup operations.5
- AlicenseAqualityDmaintenanceEnables Minecraft server management via RCON: execute commands, list players, get server info, manage whitelist and operators.91MIT
- AlicenseNot gradedqualityBmaintenanceEnables managing Pterodactyl Game Panel servers via Client and Application APIs, including power actions, files, databases, backups, schedules, and administrative operations.115MIT
Related MCP Connectors
A basic MCP server to operate on the Postman API.
A TypeScript MCP server for Home Assistant, enabling programmatic management of entities, automati…
A MCP server built for developers enabling Git based project management with project and personal…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/siwuli/mcp-server-mcs-manager'
If you have feedback or need assistance with the MCP directory API, please join our Discord server