skript-mcp
Skript MCP
Этот проект предоставляет небольшой MCP-сервер, работающий поверх постоянно запущенного сервера Paper. Paper, Skript и установленные аддоны выступают в роли парсера: код на Python не пытается самостоятельно разбирать синтаксис Skript.
Образ по умолчанию содержит следующий профиль совместимости:
Компонент | Версия |
Java | 21 |
Paper | 1.21.4 build 232 |
Skript | 2.14.3 |
SkBee | 3.16.1 |
skript-reflect | 2.6.3 |
skript-gui | 1.4.0 |
Каждый загруженный jar-файл проверяется во время сборки образа. Чтобы использовать другой авторитетный профиль, переопределите все соответствующие URL и контрольные суммы вместе в файле .env. Никогда не обновляйте только один аддон без проверки всего набора.
Skript 2.14.3 выбран намеренно для профиля 1.21.4. SkBee 3.16.1 — последний релиз SkBee для Minecraft 1.21.4, а более новые версии Skript 2.15/2.16 конфликтуют с его регистрацией типа audience из Adventure. Для перехода на более новый Skript потребуется обновить весь профиль до более новой версии Minecraft и SkBee.
Запуск Paper
Запустите скрипт настройки. Он проверяет Docker и uv, создаёт .env со случайным паролем RCON, устанавливает зависимости, собирает Paper и проверяет RCON:
./setup.shДля ручной настройки создайте локальный файл окружения и замените пароль на длинное случайное значение, содержащее только буквы, цифры, точки, подчёркивания или дефисы:
cp .env.example .env
docker compose build
docker compose up -d --waitУстановите PUID и PGID в .env равными выводу команд id -u и id -g. По умолчанию они равны 1000 и позволяют Paper читать созданные хостом временные файлы с правами 0600.
Логи Paper монтируются в runtime/logs. Скрипты хоста монтируются напрямую в /server/plugins/Skript/scripts из папки scripts. Данные мира и сгенерированные плагинами остаются в контейнере и могут быть удалены. Опубликован только RCON, привязанный к 127.0.0.1:25575; игровой порт не публикуется.
Проверьте запуск и версии плагинов с помощью:
docker compose logs paper
docker compose exec paper sh -c 'nc -z 127.0.0.1 25575'Запуск MCP-сервера
Установите и запустите его с помощью uv:
uv sync
uv run --env-file .env skript-mcpMCP-процесс считывает следующие переменные окружения:
Переменная | По умолчанию |
| Обязательно |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Для OpenCode добавьте локальную MCP-запись и передайте тот же пароль RCON через окружение:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"skript": {
"type": "local",
"command": ["uv", "run", "--directory", "/absolute/path/to/skript-mcp", "--env-file", "/absolute/path/to/skript-mcp/.env", "skript-mcp"],
"enabled": true,
"environment": {}
}
}
}Перезапустите OpenCode после изменения его конфигурации.
Инструменты
skript_check_file(path)проверяет существующий.sk-файл по указанному пути. Относительные пути разрешаются относительноSKRIPT_SCRIPTS_DIR; абсолютные пути принимаются, если они указывают внутрь этой директории. Команда перезагружает весь набор скриптов, чтобы функции и другие общие определения из соседних скриптов были доступны.skript_reload_file(path)перезагружает один существующий путь внутриSKRIPT_SCRIPTS_DIRбез перезагрузки соседних скриптов.minecraft_command(command)выполняет привилегированную команду через локальный RCON.minecraft_logs(lines=200)возвращает ограниченный хвост файлаlatest.log.skript_reset()удаляет только устаревшие файлы__mcp_check_<uuid>.sk.
Операции перезагрузки сериализованы. Диагностика в основном извлекается из ответа RCON, так как Skript намеренно перенаправляет диагностику команд в сторону от обычного логирования сервера; байты, добавленные в latest.log после смещения операции, захватываются и объединяются как вторичный источник.
Безопасность
skript_check_file выполняет реальную перезагрузку всех включённых скриптов, а не изолированный разбор. Исходный код, содержащий обработчики on load или поведение аддонов, может изменять мир, файлы или внешние системы. Проверяйте только доверенные скрипты и относитесь к minecraft_command и паролю RCON как к полному доступу администратора.
Запустите модульные тесты с помощью:
uv run pytestMaintenance
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
- Alicense-qualityDmaintenanceEnables 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
- Flicense-qualityDmaintenanceEnables control of a Minecraft server through RCON commands via natural language, including game commands, chat-based AI interactions, and server management capabilities.6
- AlicenseAqualityDmaintenanceConnects AI agents to Minecraft servers via RCON to execute commands, monitor logs, and perform read-only SQLite database queries. It is specifically designed to facilitate AI-assisted plugin development, live debugging, and automated testing workflows.611MIT
- AlicenseBqualityDmaintenanceEnables AI assistants to interact with and manage Minecraft servers through a standardized interface, supporting server monitoring, player management, log analysis, and command execution.11MIT
Related MCP Connectors
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
MCP server for skill documentation, generated by doc2mcp.
Security scanner for MCP servers. Detect vulnerabilities, prompt injection, and tool poisoning.
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/sbharga/skript-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server