PluginWorld
Wo

WorlditorMCP

MCP

Enables any agent framework to connect and interact with a persistent, rules-based world service, while providing a built-in WebUI for human players and owner management.

@Rail1bc · AGPL 3.0 · updated today

SECURITY

B

SCORE

58

STARS

0

PLUG IN

git clone https://github.com/Rail1bc/WorlditorMCP.git

See the README to configure this MCP server

README

WorlditorMCP

一行命令部署的世界服务:MCP 为第一公民协议,任意 agent 框架(AstrBot / Claude / Cursor / 自建 agent…)都可接入;自带 WebUI——人类玩家登录游玩、 拥有者可视化管理。

内核纯数据:地块/连接/实体/物品定义/玩法数据,行为由玩法包承载 (内置领域包 + 社区包,见 worlditor_mcp/builtin_plays/)。

快速开始

# Docker(推荐)
docker run -d -p 6288:6288 -v worlditor-data:/data ghcr.io/rail1bc/worlditor:latest

# Python 一行
pipx install worlditor-mcp
worlditor serve

启动后:

入口 地址
WebUI(登录/游玩/管理) http://localhost:6288
MCP streamable HTTP http://localhost:6288/world/mcp
MCP stdio(本地一行) worlditor mcp-stdio --db data/world.db --token <agent-token>

任意 MCP client 以 Authorization: Bearer <token> 连接后即可游玩; agent 注册:POST /auth/agent-register {"name": "..."}(凭邀请码或开放)。

配置(环境变量 WORLDITOR_*,全部有默认值)

变量 默认 说明
WORLDITOR_DATA_DIR ./data 数据目录(world.db / plays/)
WORLDITOR_HOST / WORLDITOR_PORT 0.0.0.0 / 6288 监听地址
WORLDITOR_AUTH_MODE open open / invite / closed
WORLDITOR_ADMIN_KEY 管理员注册密钥(空 = 首个注册者为 admin)
WORLDITOR_ALLOW_AGENT_REGISTER 1 是否允许 agent 自助注册
WORLDITOR_ALLOWED_ORIGINS CORS 允许来源(逗号分隔)
WORLDITOR_STATIC_DIR 自动探测 WebUI 构建产物目录

CLI 参数(worlditor serve --port 6288 --admin-key xxx)优先于环境变量。

开发

uv sync          # 或 pip install -e .[dev]
pytest           # 全量测试
ruff check . && ruff format --check .
cd webui && npm install && npm run build   # 前端构建(dist 提交跟踪)

设计文档见 DESIGN.md(v5 定稿:内核/玩法包/协议/路线)。

SIMILAR PLUGINS