项目简介

'defold-mcp' 是一个开源的 Model Context Protocol (MCP) 服务器实现,旨在将 Defold 游戏引擎的能力通过标准化的 MCP 协议暴露给兼容的 AI 开发工具或自动化脚本。它充当 Defold 项目与外部智能客户端之间的桥梁,使得可以通过 AI 或其他工具方便地管理和操作 Defold 项目。

主要功能点

  • Defold 项目管理: 支持创建、列出、获取和更新 Defold 项目的关键设置(如 'game.project' 文件)。
  • 资产和脚本自动化: 能够程序化地创建和修改 Lua 脚本、模块、Collection、Sprite、Tilemap 等 Defold 核心资产。
  • 编辑器及运行控制: 提供启动 Defold 编辑器、运行项目(带调试输出)等功能。
  • 构建和打包: 通过集成 'bob.jar' 工具,支持项目的构建和特定平台的打包。
  • 调试与分析: 支持捕获和流式传输调试日志,以及获取项目修改分析。
  • 热重载支持: 提供启用文件监听实现热重载的能力。
  • 易于集成: 设计用于与支持 MCP 协议的客户端(如 Cursor、Windsurf)无缝集成。

安装步骤

  1. 克隆仓库:
    git clone https://github.com/ChadAragorn/defold-mcp.git
    cd defold-mcp
  2. 安装依赖:
    npm install
  3. 配置环境(可选): 在项目根目录创建 '.env' 文件,可以用来覆盖默认设置,例如指定 Defold 编辑器路径、MCP 服务器端口等。详细变量名请参考项目代码或文档。
  4. 手动运行服务器(一般用于测试):
    node index.js
    服务器将根据配置的传输协议(默认为 Stdio)启动。

服务器配置(针对 MCP 客户端)

大多数兼容 MCP 的客户端(如 Cursor)会自动启动和管理服务器进程。用户需要在客户端的配置文件(例如 '.cursor/mcp.json')中添加配置信息,告诉客户端如何找到并启动 'defold-mcp' 服务器。

需要提供给客户端的关键信息包括:

  • 服务器名称: 客户端用来标识该服务器的唯一名称(例如 '"defold-mcp"')。
  • 启动命令 (command): 客户端用于启动 'defold-mcp' 服务器的可执行文件路径,通常是 Node.js 的路径(运行 'which node' 可获取)。
  • 启动参数 (args): 客户端启动命令所需的参数列表,其中必须包含 'defold-mcp' 项目克隆目录下的 'index.js' 文件路径。
  • 环境变量 (env)(可选): 如果需要覆盖默认设置,可以在这里指定环境变量,例如 'DEFOLD_PATH' (Defold 编辑器路径)、'BOB_PATH' ('bob.jar' 路径) 或 'MCP_TRANSPORT' (传输协议,如 'stdio')。

客户端会读取这些配置,并在需要时(例如打开关联项目时)自动启动服务器,并通过配置的传输协议(如 Stdio)与服务器通信。

基本使用方法

用户通常无需直接与 'defold-mcp' 服务器进程交互。使用方法完全取决于你使用的 MCP 客户端:

  1. 确保你已按照上述步骤安装 'defold-mcp' 项目。
  2. 配置你的 MCP 客户端(如 Cursor),使其知道如何启动 'defold-mcp' 服务器,配置内容包括启动命令和参数。
  3. 在客户端界面中,AI 或其他工具会识别出 'defold-mcp' 服务器提供的“工具”(如 'create_script', 'run_project')。
  4. 你可以通过客户端提供的交互方式(如聊天、命令面板、自定义 UI)调用这些工具,例如对 AI 说“帮我在 'my_game' 项目里创建一个名为 'player.script' 的脚本”或点击客户端中对应的自动化按钮。
  5. 服务器会执行相应的 Defold 操作,并通过客户端返回结果或通知。

信息

分类

开发者工具