Skip to main content
Glama

CU-MCP-Bridge

Mod para BepInEx + servidor MCP en Python que permite a los asistentes de IA controlar la jugabilidad de Casualties Unknown en tiempo real mediante una tubería con nombre.

Requisitos

Related MCP server: Unity-MCP

Inicio rápido

1. Instalar el mod

Copia los dos archivos DLL de la carpeta mod/ a la carpeta BepInEx/plugins/ de tu juego:

<game directory>/BepInEx/plugins/CU-MCP-Mod.dll
<game directory>/BepInEx/plugins/Newtonsoft.Json.dll

2. Instalar las dependencias de Python

pip install -r requirements.txt

3. Configurar tu cliente de IA

Añade a tu configuración de MCP (p. ej. opencode.json):

{
  "mcp": {
    "servers": {
      "cu-mcp-bridge": {
        "type": "stdio",
        "command": "python",
        "args": ["src/bridge_server/server.py"],
        "cwd": "/path/to/CU-MCP-Bridge"
      }
    }
  }
}

4. Jugar

  1. Inicia el juego, entra en un nivel

  2. Inicia el servidor Python: python src/bridge_server/server.py

  3. Pide a tu asistente de IA que controle al jugador

El orden importa: el servidor debe iniciarse después de que el juego esté en ejecución.

Compilar desde el código fuente

# Build the C# mod
dotnet build BepInEx/CU-MCP-Mod.csproj -c Release

# Deploy to game (kills the game process, rebuilds, copies DLL)
.\deploy.ps1 -Action deploy

Salida: BepInEx/bin/Release/net472/CU-MCP-Mod.dll

Arquitectura

AI Client (opencode)
        |
    stdio (JSON-RPC)
        |
Python FastMCP Server (src/bridge_server/)
        |
    Named Pipe (win32pipe, newline-delimited JSON)
        |
C# BepInEx Mod (BepInEx/, inside Unity game)
        |
    Unity Game (Casualties Unknown)

Comunicación

  • IA -> Juego: Las órdenes se envían a través de la tubería con nombre y se ejecutan en el hilo principal de Unity

  • Juego -> IA: El estado del jugador y los resultados de las consultas vuelven por la misma tubería

  • Bloqueo: Cada comando se bloquea hasta que el mod informa de que ha terminado (éxito/fallo/tiempo de espera)

Estructura del proyecto

CU-MCP-Bridge/
├── BepInEx/                # C# mod source (BepInEx plugin)
│   ├── Executor/           # Order execution, pathfinding, movement
│   ├── Collector/          # Game state collection (player, environment)
│   ├── Contingency/        # Local condition-action rules
│   ├── Pipe/               # Named pipe client + protocol
│   ├── AIPlayerManager.cs  # AI companion creation/destruction
│   ├── BridgePlugin.cs     # Entry point, tick loop
│   └── DebugGUI.cs         # F6 debug panel
├── src/bridge_server/      # Python MCP server
│   ├── server.py           # MCP tool definitions
│   ├── state_manager.py    # Pipe reader, state cache
│   ├── order_manager.py    # Order queue
│   ├── pipe_server.py      # Named pipe server (win32pipe)
│   └── contingency.py      # Contingency rule manager
├── tests/                  # Unit & integration tests
├── deploy.ps1              # Build + deploy script
└── requirements.txt        # Python dependencies

Herramientas de MCP

Herramienta

Descripción

get_game_state

Estado del jugador (posición, salud, inventario) + instantánea del entorno

get_map_info

Información del terreno y de las entidades alrededor del jugador

get_nearby_items

Lista los objetos soltados cerca del jugador

query_position

Consulta entidades/terreno en una coordenada mundial específica

search_blocks

Busca terreno por nombre de material (p. ej. "sand", "rock")

move_to

Mueve al jugador activo a una posición del mundo

move_to_player

Mueve al compañero de IA al jugador humano

follow

Hace que el compañero de IA siga al humano

jump

Salta (admite dirección horizontal)

use_item

Usa un objeto del inventario

pick_up_item

Recoge un objeto cercano (por nombre o el más cercano)

drop_item

Suelta un objeto del inventario

sleep

Descansa para recuperar energía

heal_ai

Cura una extremidad específica del compañero de IA

create_ai_player

Clona un compañero de IA junto al humano

destroy_ai_player

Elimina al compañero de IA

set_contingency

Establece reglas de condición-acción (p. ej. "curar si HP < 30%")

update_contingency

Actualiza las reglas de contingencia en tiempo de ejecución

user_interact

Intervención humana de máxima prioridad

Problemas conocidos

  • Compatibilidad con mods de skin: Instalar mods de skin de terceros (p. ej. "Skin Sync") puede hacer que el compañero de IA muestre una cola duplicada que refleja la cola del jugador humano. Esto es un problema de compatibilidad con mods de skin y no ocurre en el juego base.

Licencia

MIT

Maintenance

ActivityMaintained
ResponsivenessSyncing

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

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/mouse114514/CU-MCP-Bridge'

If you have feedback or need assistance with the MCP directory API, please join our Discord server