MCP服务器
MCP(Model Context Protocol)服务器为配置系统提供了与AI助手交互的能力,允许通过自然语言查询和操作配置数据。
三步即可开始使用AI助手管理配置:
1️⃣ 启动MCP服务器
Section titled “1️⃣ 启动MCP服务器”# 进入配置目录cd /path/to/your/config
# 启动MCP服务器(默认端口3457)java -jar cfggen.jar -datadir . -gen mcpserver2️⃣ 配置Claude Code
Section titled “2️⃣ 配置Claude Code”# 添加MCP服务器到Claude Codeclaude mcp add --transport http cfggen http://localhost:3457/mcp
# 验证配置是否成功claude mcp list3️⃣ 检验并开始提问
Section titled “3️⃣ 检验并开始提问”启动Claude Code后,尝试以下问题检验配置:
基础检验:
列出所有配置模块配置查询:
列出item模块中的所有表读取数据:
查询weapon表的前10条记录创建配置:
帮我在item表添加一把新武器:- ID: 1001- 名称: "龙渊剑"- 攻击力: 150- 稀有度: 传说常用配置参数
Section titled “常用配置参数”| 参数 | 说明 | 默认值 |
|---|---|---|
port | MCP服务器端口 | 3457 |
watch | 文件监视延迟秒数(0表示不监视) | 0 |
postrun | 重载配置后执行的脚本 | null |
示例:
# 指定端口java -jar cfggen.jar -datadir . -gen mcpserver,port=8080
# 启用文件监视和自动重载(5秒延迟)java -jar cfggen.jar -datadir . -gen mcpserver,watch=5,postrun=reload.batMCP服务器提供了以下工具来查询和操作配置数据:
Schema查询工具
Section titled “Schema查询工具”listModule - 列出模块名称(信息入口点)
Section titled “listModule - 列出模块名称(信息入口点)”列出所有配置模块的名称和描述,这是配置系统的信息入口点。
参数: 无
示例:
列出所有模块返回: 模块列表,包含模块名称和描述。
listTable - 列出模块中的表
Section titled “listTable - 列出模块中的表”列出指定模块中的所有表名。
参数:
inModule(必需): 模块名称(来自listModule的结果)
示例:
列出 "item" 模块中的所有表返回: 表名列表、模块描述和规则。
readTableSchema - 读取表结构定义
Section titled “readTableSchema - 读取表结构定义”查询指定表的完整结构定义,包括字段、类型、外键关系等信息。
参数:
table(必需): 表的完整名称
示例:
查询 "user" 表的结构定义返回: 表的结构定义信息,包括字段列表、数据类型、外键关系等。
searchString - 字符串搜索
Section titled “searchString - 字符串搜索”在全表范围内搜索包含指定字符串的记录。
参数:
q(必需):table: 搜索特定tablemaxCount: 最大返回结果数量
示例:
搜索包含 "admin" 的记录,最多返回10条结果返回: 包含匹配记录的表格格式结果,显示表名、主键、字段路径和值。
searchNumber - 数字搜索
Section titled “searchNumber - 数字搜索”在全表范围内搜索等于指定数字的记录。
参数:
q(必需): 搜索的数字table: 搜索特定tablemaxCount(必需): 最大返回结果数量
示例:
搜索值为 100 的记录,最多返回5条结果返回: 包含匹配记录的表格格式结果,显示表名、主键和字段路径。
记录读取工具
Section titled “记录读取工具”listTableRecord - 列出表记录
Section titled “listTableRecord - 列出表记录”列出指定表的记录,支持分页和字段选择。
参数:
table(必需): 表的完整名称extraFields(可选): 额外要显示的字段,用逗号分隔。默认只包含主键字段和title字段offset(可选): 记录偏移量,从0开始。默认值:0limit(可选): 返回的记录数量。默认值:20
示例:
列出 "skill" 表的前20条记录列出 "item" 表的第10-29条记录,额外显示"price"和"weight"字段返回: 表的记录列表,以CSV格式显示。
readRecord - 读取单条记录
Section titled “readRecord - 读取单条记录”根据主键读取指定表的单条记录。
参数:
table(必需): 表的完整名称recordId(必需): 记录的主键ID
示例:
读取 "user" 表中ID为 "1001" 的记录返回: 记录的JSON格式数据。
️记录写入工具
Section titled “️记录写入工具”addOrUpdateRecord - 添加或更新记录
Section titled “addOrUpdateRecord - 添加或更新记录”向指定表添加新记录或更新现有记录。
参数:
table(必需): 表的完整名称recordJsonStr(必需): 记录的JSON字符串
示例:
向 "item" 表添加一条新记录返回: 操作结果信息,包括存储路径。
deleteRecord - 删除记录
Section titled “deleteRecord - 删除记录”从指定表删除指定记录。
参数:
table(必需): 表的完整名称recordId(必需): 要删除的记录ID
示例:
从 "user" 表中删除ID为 "1001" 的记录返回: 删除操作结果信息。
管理MCP连接
Section titled “管理MCP连接”删除MCP服务器:
claude mcp remove cfggen手动监测MCP连接状态:
npx @modelcontextprotocol/inspector# 然后用浏览器访问显示的地址其他MCP客户端
Section titled “其他MCP客户端”MCP服务器遵循标准的Model Context Protocol协议,可以与任何兼容的MCP客户端集成。
