本项目是一个 MCP (Model Context Protocol) 服务器实现,将 Trealla Prolog 逻辑编程引擎集成进来。它允许兼容 MCP 的客户端(如 LLM 应用)通过标准化的工具调用来加载 Prolog 代码、执行查询,并保存/加载 Prolog 会话状态。这使得 LLM 能够利用 Prolog 的符号推理能力。

主要功能点

  • 持久化 Prolog 会话: 维护一个长期存在的 Prolog 实例,会话状态可在不同工具调用之间保持。
  • 加载程序 (loadProgram): 将 Prolog 谓词和规则加载到当前会话中。
  • 运行查询 (runPrologQuery): 对当前会话中加载的 Prolog 程序执行复杂的逻辑查询。
  • 保存会话 (saveSession): 将当前的 Prolog 程序定义保存到文件,以便后续加载。
  • 加载会话 (loadSession): 从文件加载之前保存的 Prolog 程序定义到当前会话。

安装步骤

  1. 克隆仓库: 'git clone https://github.com/adamrybinski/prolog-mcp'
  2. 进入目录: 'cd prolog-mcp'
  3. 安装依赖: 'npm install'
  4. 构建项目: 'npm run build'

服务器配置

MCP 客户端需要配置服务器的启动方式。核心信息包括服务器名称(例如 'prolog-mcp')、启动命令 ('command') 和传递给命令的参数 ('args')。对于本项目,构建后('npm run build'),启动命令通常是 'node',参数是指向构建后的服务器入口文件 'prolog-mcp/dist/index.js'。MCP 客户端需要将这些信息添加到其配置文件(通常是 JSON 格式)中,以便能够识别和启动此服务器。

基本使用方法

启动 MCP 客户端(并确保其配置了此服务器)。客户端(如 LLM)可以通过调用 'loadProgram' 工具向服务器加载 Prolog 规则,然后调用 'runPrologQuery' 工具执行针对这些规则的查询。可以使用 'saveSession' 和 'loadSession' 工具来保存和恢复加载的规则状态。

信息

分类

AI与计算