# 外接大脑(MCP 服务端) Numen 可以在你本机起一个 MCP 服务器。开着的时候,**外部 AI 客户端**(Claude Desktop、Cursor、或任何支持 MCP 的东西)就能直接驱动你世界里的同伴——挖矿、建造、战斗、跟你说话,全部经由那个 AI 而不是内置大脑。 开启期间**内置大脑完全停手**。同一具身体不能有两个大脑,这是硬闸。 --- ## 怎么开 游戏里按 `G` → **设置** → **外接大脑**,右上角开关拨开即可。 那一页分两屏: **概览**(默认) | 显示的东西 | 说明 | |---|---| | 端点 | 外部客户端要连的地址,点「复制」拿走 | | 令牌 | 访问凭据,屏幕上只显示前几位。点「复制」拿完整的 | | 连接状态 | 谁连着、多久前活跃过 | | **复制接入提示词** | 一段现成的话,粘贴给你的 AI,它会自己把连接配好 | > ⚠️ 接入提示词**含你的完整令牌**。它等于同伴的操控权,只发给你信任的 AI。 发错了就点令牌旁边的**重新生成**——旧令牌立刻作废,已接入的客户端当场断开。 **设置**(点右下角「设置」进) | 项 | 默认 | 说明 | |---|---|---| | 允许局域网连接 | 关 | 关 = 只有本机连得上;开 = 同一个网络里的其它设备也能连 | | 端口 | `8765` | 被别的程序占了就换一个 | | 调用超时(秒) | `300` | 一次工具调用等身体干完活的上限 | | 不暴露给外部的工具 | `todowrite, load_skill` | 逗号分隔。这些是内置大脑自用的记账工具,外部驱动没有理由碰 | 改完点**保存**。服务器正在跑的话按钮会变成「保存并重启服务」——端点变了,旧的还占着老端口,必须重开。 --- ## 配置文件 界面上改的东西落在 `config/numen/mcp_server.json`。想填界面没给的值(比如绑到某一张具体网卡)就直接改这个文件,**它是逃生舱**。 ```jsonc { "enabled": false, // 总开关,等同界面上那个 "host": "127.0.0.1", // 绑哪个地址;0.0.0.0 = 所有网卡 "port": 8765, "token": "numen-xxxxxxxx", // 访问凭据,首次启动自动生成 "call_timeout_seconds": 300, "hidden_tools": ["todowrite", "load_skill"] } ``` 改完要重进世界才生效(界面上改的则即时生效)。 --- ## 关于安全 **默认只绑回环**(`127.0.0.1`),也就是只有这台机器上的程序连得上。这种情况下令牌是不是强的无所谓——外面根本够不着。 **一旦把地址放开就完全不同了**。`0.0.0.0` 意味着同一个网络里的任何设备都能连上这个端口,而连上就能操控你的同伴。所以: - 令牌**必须**有。界面上开了「允许局域网连接」而令牌为空时,保存会被拦住 - 令牌是首次启动时用 `SecureRandom` 生成的,别换成好记的短串 - 觉得泄露了就重新生成,这是它存在的意义 Numen 不替你做防火墙。放开监听地址之前,先想清楚这个网络里都有谁。 --- ## 出问题时 **开关拨不动、提示启动失败** —— 多半是端口被占。设置页里换一个端口重存;错误原因会直接标在端口输入框上。 **外部客户端连不上** —— 依次确认:开关是开的、地址和令牌是从界面复制的(不是手抄的)、如果客户端不在本机则「允许局域网连接」得开着。 **同伴不理聊天框** —— 这是**正常的**。外接大脑模式下内置大脑停手,聊天输入会被锁住,界面上会写明。关掉开关就恢复。 日志里搜 `[numen-mcp]` 能看到起停、接入、以及每一次工具调用。