返回 MCP 目录
public公开dns本地运行

naninovel-mcp

一个Unity C#插件,通过Model Context Protocol(MCP)暴露Naninovel脚本编写和播放控制功能,使AI助手能够编写、编辑和测试视觉小说脚本。

article

README

🚀 Naninovel MCP Server

Naninovel MCP Server 是一个 Unity C# 插件,它通过模型上下文协议(MCP)提供 Naninovel 脚本创作和播放控制功能,使 AI 助手能够编写、编辑和测试视觉小说脚本。

🚀 快速开始

  1. 打开 Unity 编辑器。
  2. 服务器会自动启动(也可以打开 Window > Nani MCP > Server Status)。
  3. 将你的 MCP 客户端连接到 http://localhost:6274

若使用 Antigravity,需在 mcp_config.json 中添加以下内容:

{
  "mcpServers": {
    "nani-mcp": {
      "serverUrl": "http://localhost:6274"
    }
  }
}

✨ 主要特性

  • 独立于播放模式:服务器始终在编辑器中运行。
  • NaniScript 的增删改查:可创建、读取、更新和删除脚本文件。
  • 直接播放:跳过标题画面,直接跳转到任何脚本或标签处开始播放。
  • 输入模拟:推进对话,模拟按键操作。
  • 视觉验证:捕获屏幕截图以验证场景。

📦 安装指南

此部分原文档未提及具体安装步骤,跳过。

💻 使用示例

基础用法

示例:编写脚本

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "write_script",
    "arguments": {
      "path": "events/new_scene.nani",
      "content": "; New Scene\n@back Classroom\n@char NaniChan\nNaniChan: Bonjour!"
    }
  }
}

示例:快速播放

{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "quick_play",
    "arguments": {
      "script": "events/new_scene",
      "resetState": true
    }
  }
}

高级用法

原文档未提及高级用法相关内容,跳过。

📚 详细文档

可用工具

脚本文件操作(编辑器模式)

| 工具 | 描述 | |------|-------------| | list_scripts | 列出 Scenarios 文件夹中的所有 .nani 文件 | | read_script | 读取脚本文件的内容 | | write_script | 创建或覆盖一个脚本文件 | | edit_script | 在脚本中插入、替换或删除行 | | delete_script | 删除一个脚本文件(会进行备份) |

播放控制(播放模式)

| 工具 | 描述 | |------|-------------| | quick_play | 直接播放脚本,绕过标题画面 | | execute_command | 执行单个 Nani 命令 | | play_script | 加载并播放一个脚本 | | stop_player | 停止当前播放 | | goto_label | 跳转到特定标签 | | get_playback_status | 获取当前播放状态 |

场景与状态(播放模式)

| 工具 | 描述 | |------|-------------| | capture_screenshot | 将当前游戏视图捕获为 PNG 格式 | | get_scene_state | 获取可见角色及其位置 | | get_variables | 列出所有自定义变量 | | set_variable | 设置变量值 |

输入模拟(播放模式)

| 工具 | 描述 | |------|-------------| | continue_dialogue | 推进到下一行对话 | | simulate_key | 模拟键盘按键 | | simulate_click | 模拟鼠标点击 |

Unity 编辑器控制

| 工具 | 描述 | |------|-------------| | enter_play_mode | 启动 Unity 播放模式(从标题画面开始) | | exit_play_mode | 停止 Unity 播放模式 | | get_unity_status | 获取 Unity 编辑器状态和播放模式状态 | | list_scenes | 列出构建设置中的所有 Unity 场景 |

配置

打开 Window > Nani MCP > Server Status 进行配置:

  • 端口:WebSocket 服务器端口(默认值:6274)
  • 自动启动:在编辑器打开时自动启动服务器

📄 许可证

本项目采用 MIT 许可证。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端