关于 mcp-laya
mcp-laya 将 Laya 的本地决策能力封装为 MCP 服务,供 Agent 对文本或其他状态进行分类、评分和是非判断。它返回带置信度的结构化结果,不生成文本,并支持离线运行。
主要功能
- 01分类、评分和是非判断
- 02一次处理多个类型化问题
- 03预设式分流与审核
- 04检测文本语言和文字系统
- 05自动选择可用检查点
- 06离线推理并返回置信度
适用场景
- 01将支持工单分配到对应部门
- 02评估邮件或工单的紧急程度
- 03判断请求是否符合流程门槛
- 04对内容执行审核或分流
MCP 相关
该 MCP 服务向客户端提供 decide、classify、score、check、triage 等类型化决策工具,以及语言检测和模型信息工具。工具在本地执行推理,只返回结构化判断,不生成文本。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
uvx mcp-layaLAYA_DEFAULT_MODELCheckpoint to use: auto (Router picks) | english | multilingual | typed-decisions.LAYA_MODELSComma-separated allowlist of checkpoints that may load. Empty = all.LAYA_ALLOW_DOWNLOADAllow the one-time Hugging Face checkpoint download. Off by default (offline).LAYA_MIN_CONFIDENCEFlag answers below this calibrated confidence (0 = never flag).LAYA_DEVICEInference device: auto | cpu | cuda.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
mcp-laya
一个默认安全的 Model Context Protocol MCP 服务,适用于 Laya —— 一款快速、非自回归的 System-1 决策引擎。它为 Agent 提供一种思考原语:针对任意状态(文本、邮件、工单、JSON 对象)进行类型化决策——分类、评分、是/否判断,只需一次本地前向推理(约 33 ms),支持 100 多种语言,不生成文本,因此无需解析,也不会产生幻觉;每个答案都附带经过校准的置信度。
与其耗费时间和成本进行缓慢的大模型往返,询问“应该由哪个团队处理?紧急吗?这是退款请求吗?”,不如让 Agent 调用一个类型化工具,在本地以毫秒级速度离线给出答案。这是套件中最安全的服务——laya 只会读取状态并返回决策;它不会改变任何内容。
它是 dockndevai MCP 服务套件的一部分——所有服务采用统一的治理模型。(这是套件中的首个 Python 服务;其余服务使用 Node/TS。)
它为 Agent 提供的能力
| 工具 | 用途 |
|---|---|
decide | 一次性回答多个类型化问题(choice/score/noul)——使用完整引擎 |
classify | 分配最合适的单一类别(一个 choice) |
score | 按序数刻度评分,例如紧急程度(一个 score) |
check | 用于控制流的“是/否/未知”判断(一个 noul) |
triage | 通过 laya 预设提供现成的决策集(triage / email / moderation / guard) |
detect_language | 检测文本的文字系统和语言(亚毫秒级,无需模型) |
explain_routing | 显示将由哪个检查点回答,无需运行推理 |
list_models | 显示可用检查点、默认检查点、设备和离线状态 |
三个检查点会根据每个请求自动路由:english(ModernBERT-large)、multilingual(mmBERT,支持 100 多种语言)、typed-decisions。
安装
pipx install mcp-laya # or: pip install mcp-laya
需要 Python 3.10 或更高版本。laya 会安装 torch;模型检查点会从 Hugging Face 下载一次(见下文),之后即可完全离线运行。
首次运行:获取一次模型
默认情况下不允许下载(运行时不会有任何数据离开你的设备)。在有网络连接时预先获取一次检查点:
LAYA_ALLOW_DOWNLOAD=true python -c "import laya; laya.Router(preload=True)"
然后离线运行服务。
配置
{
"mcpServers": {
"laya": {
"command": "mcp-laya",
"env": { "LAYA_DEFAULT_MODEL": "auto" }
}
}
}
Claude Code / Cursor / Codex / VS Code / Windsurf 的配置说明请参阅 docs/CLIENTS.md,所有变量请参阅 .env.example。
示例
让你的 Agent “使用 laya 对此工单的部门以及它是否存在流失风险进行分类”:
// classify(state, criteria={billing, technical, sales, other})
{ "choice": "billing", "confidence": 0.95, "probabilities": { "billing": 0.95, ... } }
// check(state, "Does the user threaten to cancel?")
{ "answer": "yes", "probability_yes": 0.91, "confidence": 0.91 }
默认安全
laya 只进行只读推理,因此 src/mcp_laya/security.py 中的防护措施关注的是隐私和资源控制,而非写入限制:
- 默认离线——模型在本地运行,不会向任何地方发送数据。唯一例外是首次下载检查点;除非设置
LAYA_ALLOW_DOWNLOAD=true,否则该下载会被禁用。 - 模型允许列表——
LAYA_MODELS限定允许加载的检查点。 - 输入上限——
LAYA_MAX_INPUT_CHARS/LAYA_MAX_QUESTIONS限制每个请求的大小。 - 如实呈现置信度——
LAYA_MIN_CONFIDENCE会标记置信度较低的答案(绝不会在用户不知情的情况下信任这些答案);每个答案本身都附带经过校准的confidence。 - 日志隐私——默认情况下,
LAYA_REDACT_STATE会避免将输入文本写入 JSON 审计日志。
项目附带一个技能 laya-decisions,用于教会 Agent 何时将决策交给 laya 处理,以及如何组织类型化问题。另请参阅 SECURITY.md。
开发
python -m venv .venv && . .venv/bin/activate
pip install -e ".[dev]"
ruff check src tests && mypy src && pytest # the policy tests need no model
python -m mcp_laya # run the server (stdio)
致谢
基于 Convai Innovations 的 laya 构建(Apache-2.0)。此服务封装了该库;所有模型相关工作均由他们完成。请参阅 NOTICE。
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。