Skip to main content
Glama
vivy1024

OniMods MCP Server

by vivy1024

cortico-world-oni

Cortico World extension for Oxygen Not Included (《缺氧》), bridging game simulation to AI streamers and agents via the OniMods MCP Server.

Owner: src/index.ts
契约: Cortico API v4 (kind: world)


概述 (Overview)

cortico-world-oni 将《缺氧》底层的物理仿真、殖民地数据与指令系统抽象为标准 Cortico World 契约:

  • 虚拟文件系统式世界编辑:通过类似读写文本文件的形式审阅局部地图、拓扑管线,并通过 SEARCH/REPLACE 补丁批量下达建造与挖掘任务;

  • 殖民地宏观监控与警报:轮询小人窒息、饥饿、受伤、高压等致命状态,并转化为即时事件流推入 Agent 决策回路;

  • 游戏节奏控制:支持动态暂停(速度 0)以供 AI 进行深度规划,并在规划完成后恢复游戏流速;

  • 解说与情绪引导:内置专属环境提示词(ENV_PROMPT.md),使 AI 主播在遇到突发灾难时能够及时且生动地进行直播解说。


Related MCP server: YetAnotherUnityMcp

核心工具 (Tools)

本扩展在加载后向 AI Agent 暴露 10+1 个与最新 OniMcp 严格对齐的高阶聚合工具:

工具名称

Tags

描述

oni_world_editor

act, read, write

虚拟文件系统接口。以文本/切片读取地图,并通过文本替换补丁规划挖掘与排线。

oni_colony_control

read, write, snapshot

监控殖民地体征(氧气、食物、电力、健康)、生存规划、日程、科技与诊断警报。

oni_building_control

act, write

建筑统一入口:规划、建筑蓝图与材料查询、管网自动连接与排布。

oni_navigation_control

act, read

空间导航统一入口:相机移动/缩放、图层遮罩切换、截图与游戏内智能指针提示。

oni_orders_control

act, write

下达区域指令:挖掘、清扫、擦水、管线切断、拆除、优先级调整 (1~9)。

oni_dupes_control

read, write

复制人管理:属性诊断、特质、技能树加点、分配床位与餐桌、日程排班。

oni_read_control

read

结构化查询世界网格、可复用区域数据、管线网络、温度/质量分布。

oni_search_control

read

全图智能搜索资源、建筑、小人或百科,直接返回 action-ready 的 nextActions

oni_game_control

act, read

游戏运行控制:暂停 (0)、调速 (1~3)、即时存档与状态检查。

oni_server_control

read

检查游戏内 OniMcp 服务的连通性、工具清单、批处理与运行日志。

oni_coordinate_control

act, write

坐标辅助网关:当语义目标或指针无法表达时作为最后手段的绝对坐标通道。


安装与装载 (Installation)

在 Cortico 项目根目录或 extensions/ 目录下,直接通过 GitHub 安装:

pnpm add -D github:vivy1024/cortico-world-oni

或在 extensions/package.json 中声明:

{
  "dependencies": {
    "cortico-world-oni": "github:vivy1024/cortico-world-oni"
  }
}

随后运行 pnpm install 即可自动完成扩展挂载。


配置示例 (Configuration)

在部署目录(如 deployments/yushu-live/config.json)的 worlds 段中启用:

{
  "worlds": {
    "oni": {
      "enabled": true,
      "endpoint": "http://localhost:8788/mcp/",
      "pollIntervalSeconds": 3,
      "alertThreshold": "warning"
    }
  }
}
  • endpoint:游戏内 OniMcp 模组开放的 HTTP MCP 端点(默认端口 8788);

  • pollIntervalSeconds:轮询殖民地警报与突发事件的间隔(秒);

  • alertThreshold:事件上报过滤级别(info / warning / critical)。


配套游戏模组 (Prerequisites)

本扩展依赖在《缺氧》游戏客户端中安装并运行 OniMcp (基于 OniMods 的 C# 模组):

  1. OniMcp.dll 及模组配置部署至《缺氧》本地模组目录;

  2. 启动游戏并加载存档,模组将自动在本地后台启动 http://localhost:8788/mcp/ 服务;

  3. Cortico 启动后将自动完成 MCP 握手并同步工具定义。若游戏尚未启动,扩展将以优雅降级模式等待重连。


开发与测试 (Development)

corepack pnpm install
pnpm test        # 运行 Vitest 单元测试
pnpm typecheck   # 运行 TypeScript 类型检查

在 Cortico 框架根目录下进行官方契约验证:

pnpm check:extension ../cortico-world-oni

许可证 (License)

MIT

Related MCP Connectors

Related MCP Servers

  • A
    license
    C
    quality
    C
    maintenance
    Enables AI-driven game development by providing MCP tools to interact with the Godot editor, including scene editing, node manipulation, script attachment, and scene execution.
    28
    14 npm
    MIT