参数化策略引擎服务器

MCP服务器,将参数化策略引擎(PPE)暴露给LLMs,通过插件动态适配工具、资源和提示,适用于AI策略分析与规则生成场景。

  • by Run-IQ
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 Run-IQ/mcp-server

使用说明

@运行iq/mcp服务器

MCP(模型上下文协议)服务器,公开 参数化策略引擎(PPE) LLMs。通过stdio连接到Claude Desktop、Cursor、VS Code和任何兼容MCP的客户端。

插件感知:服务器根据加载的任何插件动态调整其工具、资源和提示——不需要硬编码。

安装

npm install -g @run-iq/mcp-server

或者直接使用npx运行:

npx @run-iq/mcp-server

配置

克劳德桌面版

添加 claude_desktop_config.json:

{
  "mcpServers": {
    "run-iq": {
      "command": "npx",
      "args": ["@run-iq/mcp-server"]
    }
  }
}

光标/VS代码

{
  "mcpServers": {
    "run-iq": {
      "command": "npx",
      "args": ["@run-iq/mcp-server"]
    }
  }
}

自定义插件

默认情况下,服务器是100%域无关的。您必须附加插件以赋予AI引擎功能。您可以从NPM包或本地目录加载插件。

选项1:从NPM加载(推荐) 直接从以下位置提供动态导入 node_modules 或全球安装。

{
  "mcpServers": {
    "run-iq": {
      "command": "npx",
      "args": ["@run-iq/mcp-server", "--plugin", "@run-iq/plugin-fiscal", "--plugin", "@my-org/payroll"]
    }
  }
}

选项2:加载本地捆绑包 从本地目录加载已编译的javascript文件:

{
  "mcpServers": {
    "run-iq": {
      "command": "npx",
      "args": ["@run-iq/mcp-server", "--plugins-dir", "/path/to/plugins"]
    }
  }
}

每 .js 或 .mjs 目录中的文件必须导出 PluginBundle:

import type { PluginBundle } from '@run-iq/plugin-sdk';

const bundle: PluginBundle = {
  plugin: new MyPlugin(),
  descriptor: myDescriptor,
  dsls: [new MyDslEvaluator()],
};

export default bundle;

工具(8)

工具 说明
evaluate 根据输入数据评估规则(始终是模拟运行)
simulate 使用相同的规则并排比较N个场景
validate_rules 验证规则结构、校验和、模型参数和插件字段
create_rule 使用自动计算的SHA-256校验和生成有效的规则JSON
inspect_rule 详细分析单个规则(有效性、活动状态、错误)
explain_result 评估结果的人类可读解释
list_models 列出具有参数模式的可用计算模型
create_checksum 计算params对象的SHA-256校验和

所有带有插件特定字段的工具(例如。 create_rule, validate_rules)根据加载的插件动态调整其模式。

资源(3)

URI 描述
schema://rules 完整的规则模式:基字段、插件扩展、模型参数、输入变量、JSONLogic语法和示例
models://catalog 所有计算模型的Markdown文档,包括参数和使用示例
plugins://loaded 有关加载的插件、DSL评估器和描述符状态的信息

提示(2)

提示 描述
domain-expert 适应加载插件的特定领域专业知识:场景比较、结果解释、建议
analyze-text 将监管/政策文本翻译成带有所有必需插件字段的Run IQ规则定义

这两个提示都动态注入插件元数据、指南和示例。

插件感知架构

服务器通过以下方式适应任何加载的插件 PluginDescriptor 合同(从 @run-iq/plugin-sdk):

Plugin loads → descriptor provides metadata → server adapts everything
  • 工具: create_rule 将插件所需字段添加到其Zod模式中。 validate_rules 检查插件特定的约束。
  • 资源: schema://rules 文档插件扩展字段、输入变量和示例。
  • 提示: domain-expert 根据加载的内容成为财政/社会/工资专家。 analyze-text 注入插件特定的模型指南和示例。

默认行为

默认情况下,服务器加载一个空引擎。您必须指定 --plugin (NPM包)或 --plugins-dir (本地文件夹)注入计算模型和规则。例如,传递 --plugin @run-iq/plugin-fiscal 提供了6个标准的税务计算模型。

编写自定义插件

插件通过以下方式描述自己 PluginDescriptor:

import type { PluginDescriptor } from '@run-iq/plugin-sdk';

export const socialDescriptor: PluginDescriptor = {
  name: '@run-iq/plugin-social',
  version: '0.1.0',
  domainLabel: 'social',
  description: 'Social benefits calculation plugin',
  ruleExtensions: [
    { name: 'benefitType', type: 'string', required: true,
      enum: ['ALLOCATION', 'AIDE', 'EXONERATION'], description: '...' },
  ],
  inputFields: [
    { name: 'householdIncome', type: 'number', description: '...', examples: [150000] },
  ],
  examples: [/* concrete rule examples */],
  promptGuidelines: [
    'Consider household composition when creating rules',
    'Use THRESHOLD model for means-tested benefits',
  ],
};

MCP服务器将自动公开 benefitType 在 create_rule,在中验证它 validate_rules,将其记录在 schema://rules,并将指南注入提示中。

安全

  • 总是干跑:引擎从不保存快照——对AI实验是安全的
  • 只读:外部状态无突变
  • 校验和验证:对规则参数进行SHA-256完整性检查

需求

  • Node.js>=20

许可证

麻省理工学院 - Abdou-Raouf ATARMLA