mcsm-mcp
mcsm-mcp —— MCSManager Minecraft サーバー管理 MCP Server
AstrBot プラグイン siwu-mcs-manager-1_0(元プラグイン AstrBot_siwu-mcs-manager)から変換したスタンドアロン MCP Server:
MCSManager パネル API 経由で Minecraft サーバーインスタンスを管理(一覧 / 状態 / 起動 / 停止 / 再起動 / 強制停止 / コンソールコマンド)し、
MCP に対応した任意のクライアント(Claude Desktop、IDE、エージェントフレームワークなど)でプラグアンドプレイ利用できます。
ツール一覧(10 個)
ツール | 説明 |
| 全サーバーインスタンスを一覧表示(名前/状態/オンラインプレイヤー/ポート) |
| 指定インスタンスの状態詳細を照会(状態/オンラインプレイヤー/ポート/起動コマンド) |
| 指定インスタンスを起動(バックグラウンドで非同期実行) |
| 指定インスタンスを正常停止(安全にセーブ) |
| 指定インスタンスを再起動 |
| 指定インスタンスを強制停止(プロセスを kill、データ損失の可能性あり) |
| インスタンスにコンソールコマンドを送信(say/op/whitelist/give/tp/list など) |
| ポーリングでインスタンスが目標状態に達するのを待機(プラグインのバックグラウンドプッシュ通知の代替) |
| 現在有効な設定を確認(API Key/パスワードはマスク表示) |
| 設定をホットリロード(.env 変更後に再起動不要)、設定ファイルの切り替えも可能 |
Related MCP server: MCSManager MCP Server
元プラグインとの違い
元プラグイン(AstrBot) | 本 MCP Server |
ツールは中国語テキストを返し、LLM が返信を組み立てる | 構造化 JSON を返し、呼び出し側が組み立てる |
QQ グループ権限(admin_ids / admin_role) | 読み書きスイッチ |
起動/停止後にバックグラウンドポーリング + プッシュ通知 |
|
| クライアント/LLM がツールを直接使用(チャットコンテキストなし) |
Agent ツールフック/システムプロンプト注入を強制 | MCP ツールはクライアントが必要に応じて自然に公開、注入不要 |
クイックスタート
cd servers/mcs-manager
python -m venv .venv # 或 uv venv .venv
.venv/Scripts/pip install -e . # 或 uv pip install -p .venv -e .設定(.env.example を .env にコピーして記入、または環境変数を直接使用):
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=允许启动/停止等設定の変更方法(プラグイン設定 → MCP 設定)
元の AstrBot プラグインは管理パネルで設定を変更します。MCP 化後は設定が servers/mcs-manager/.env ファイル(または環境変数) になり、
元プラグインの設定項目との対応関係は下表のとおりです。デフォルト値は完全に一致しています:
元プラグイン設定項目 | MCP 環境変数 | 説明 |
|
| パネルアドレス |
|
| v10 API Key(推奨) |
|
| アカウント/パスワードログイン(v9) |
|
| リクエストタイムアウト(秒) |
|
| QQ グループ権限 → 読み書き総合スイッチ(デフォルト読み取り専用) |
|
| コマンドホワイトリスト(カンマ区切り) |
|
| コマンドブラックリスト |
|
| wait ツールのデフォルト待機秒数 |
| —(プロセス起動で有効) | 総合スイッチは不要、プロセスを起動しなければ無効 |
| —(意味なし) | MCP ツールはクライアントが必要に応じて公開、強制注入不要 |
変更手順:
servers/mcs-manager/.envを編集(なければ先にcp .env.example .env);ツール
mcs_reload_configを呼び出してホット反映、または Server プロセスを直接再起動;mcs_get_configで反映された値を確認(認証情報は***とマスク表示されます)。
クライアント設定経由で環境変数を渡す場合(Claude Desktop 設定の
envブロックなど)も、変更後は同様にmcs_reload_configを呼び出すか再起動すれば反映されます。
実行
stdio(ローカルプロセス、推奨):
.venv/Scripts/python -m mcsm_mcp
# 或已安装的入口命令:mcsm-mcpHTTP(リモート/マルチクライアント):
.venv/Scripts/python -m mcsm_mcp --transport http --host 127.0.0.1 --port 8000
# 端点:http://127.0.0.1:8000/mcp (streamable-http)クライアント接続例(stdio)
Claude Desktop の claude_desktop_config.json:
{
"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"
}
}
}
}デバッグ:npx @modelcontextprotocol/inspector で stdio を選択し、上記の command/args を入力します。
環境変数一覧
変数 | 説明 | デフォルト |
| パネルアドレス(末尾スラッシュなし) |
|
| パネル API Key(v10 推奨) | 空 |
| アカウント/パスワードログイン(v9 または Key 未設定時) | 空 |
| パネルリクエストタイムアウト(秒) |
|
| 書き込み操作スイッチ |
|
| コンソールコマンドホワイトリスト(カンマ区切りプレフィックス;空=すべて許可) | 空 |
| 危険コマンドブラックリスト(先頭語でマッチ) |
|
|
|
|
|
|
|
| http リスニングアドレス/ポート |
|
| .env ファイルパスを指定(任意) |
|
テスト
.venv/Scripts/python tests/test_smoke.py # stdio:tools/list + 无凭据/只读拦截/连接错误
.venv/Scripts/python tests/test_http.py # streamable-http 握手与调用セキュリティ注意事項
デフォルト読み取り専用:起動/停止/再起動/強制停止/コマンド送信には
MCSM_ALLOW_WRITE=1が必要です。信頼できるクライアントのみ接続する場合に有効にしてください。コマンドブラックリストはデフォルトで
stop/restartをブロックし、コンソールコマンド経由でのパネル操作バイパスを防止します。さらにホワイトリストで絞り込めます。パネル認証情報は
.env(.gitignore で除外済み)または環境変数に保存します。リポジトリにコミットしないでください。書き込みツールが
submitted=trueを返すのはコマンド送信完了(バックグラウンド非同期)を意味するだけです。完了確認にはmcs_wait_for_statusを使用してください。
ソースコード構成
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