← 返回目录
R

RLM Tools BSL MCP Server

社区
面向1C(BSL)代码库的令牌高效分析MCP服务器
分类
开发工具 第 121 / 438
Stars
★ 212 热门
传输方式
stdio(本地进程) · Streamable HTTP
运行环境
Python 3.10+ · Docker
凭据
无需凭据
许可证
MIT
最近提交
工具数
6
60FMRS · C

RLM Tools BSL 是一个面向 1C BSL 代码库的 MCP 服务器,通过在沙盒中执行脚本并只回传 print() 输出,把令牌与上下文消耗降到远低于直接读取文件的方式,并刻意不依赖 RAG 预索引,同时可选提供 SQLite 索引与 git grep 全文搜索来加速大型配置。仓库为 MIT 许可,非 1C 官方项目,是开源 rlm-tools 的适配版。官方 README 引用了 2026 年 4 月对 6 个 MCP 服务器的对比测试,称其在 10 项业务任务上取得 10/10 且平均消耗 117K 令牌为最低,但这些数据来自项目自身,属于自我评估,应谨慎对待。适合需要确定性、按需分析 1C 源码的开发者与分析人员;不适合需要完整依赖图、语义嵌入检索或处理模糊业务问题的场景。使用前应关注沙盒脚本执行、git grep 自动启用与可选外部 LLM 调用带来的数据暴露风险。

最强项 · 文档质量 16/20 最弱项 · 安全与权限 9/20

可靠性
10/20
安全与权限
9/20
维护活跃度
12/20
文档质量
16/20
安装易用性
13/20
查看各项评分依据
可靠性 10/20
README 声明有 CI 徽章、83% 覆盖率徽章、Python 3.10+,并描述了 6 个 MCP 工具(rlm_projects/rlm_index/rlm_start/rlm_help/rlm_execute/rlm_end)与 62 个沙箱 helper,声称在 ERP/EDT/CF 真实库上做过发布前测试。这些属于自述材料,无法在静态检查中验证;提交内容中没有实际 CI workflow 文件、测试代码或服务清单(SERVER MANIFEST 显示 [not cached],无法核对声明的工具与真实行为是否一致)。因此可靠性只能给出中等偏低的分数:happy path 看起来合理,但没有可复核的执行证据或错误处理细节,按校准规则不得高于 12。
安全与权限 9/20
README 展示了正面的安全设计意图:项目注册需密码、索引构建/更新/删除等变更操作需 password 参数确认、CLI 不需密码、提供沙箱隔离与超时。但仍存在未完全披露的风险点:rlm_execute 允许代理在主机上运行 Python 脚本(“在打开项目的宿主机上执行”),这在权限边界上属于较高风险,README 未说明沙箱的具体隔离机制、资源限制或网络访问限制;安装脚本使用 irm/curl 直接下载并执行远程脚本,属于典型的远程代码执行路径;文档提到支持外部 LLM endpoint(OpenRouter/Ollama/Anthropic),会向外部网络发送数据,但数据流披露不完整。没有发现恶意代码、凭据窃取或硬编码密钥等红线问题,也没有不可逆删除默认行为(drop 索引需要密码),因此不给 0-4。综合扣分:沙箱与脚本执行的权限边界与确认机制说明不足,外部网络数据流披露不完整。
维护活跃度 12/20
有明确证据表明处于活跃维护状态:MIT 许可证齐全,有 PyPI 发布(徽章)、CHANGELOG.md、CI workflow 徽章、覆盖率徽章,193 stars、2 个 open issues、非归档,README 提到发布前在多种真实 1C 库上测试,并引用 2026 年 4 月的对比测试。但缺乏更深层证据:看不到 issue 响应记录、依赖更新策略、安全响应通道说明,也没有治理与版本发布节奏的细节,贡献者结构(单一作者 Dach-Coin)不明确。因此给中等分:活跃且许可证明确,但治理/版本化/安全响应渠道有缺口。
文档质量 16/20
文档相当丰富且有层次:README 覆盖安装(Windows PowerShell 一键、Linux systemd 一键、Docker、源码)、客户端配置示例(.claude.json / mcp.json,type http 与 stdio)、工具与 helper 清单链接、环境变量参考、FAQ、QUICKSTART、INDEXING、ARCHITECTURE、PROJECT_REGISTRY、AGENT_INSTRUCTIONS、LLM_QUERY、ENV_REFERENCE、TELEMETRY 等专门文档,还披露了使用边界(何时不该用、RLM 与 RAG 的差异)、性能限制(HDD/网络盘需预建索引、慢模型建议 full 策略)、成本(token 节省 25-95%)。扣分点:部分关键机制(沙箱隔离、超时具体数值、密码与安全模型)只在 README 中概述而未给出可复核的配置文件内容;SERVER MANIFEST 不可用导致工具参数无法完全核对;README 的宣传性表述(对比表格、10/10)依赖外部仓库,不能独立验证。属于“可用但存在隐藏假设与排障缺口”,故给 16。
安装易用性 13/20
安装路径清晰、步骤较少且有多种主流方式:Windows 一键 PowerShell 脚本(自动装 pip 包、注册服务、启动并检查 health)、Linux 一键脚本、Docker Compose(提供 example 文件)、源码安装,且给出了 Claude Code/Cursor/Kilo/Roo 的 client 配置 JSON 示例,默认 HTTP endpoint 为 http://127.0.0.1:9000/mcp。扣分点:一键脚本为远程下载执行(irm/curl | 执行),在没有执行的情况下无法验证其行为;Windows+Docker 明确不推荐但未提供量化替代方案;Docker 路径需要手工编辑 REPOS_ROOT 等环境变量;缺少对无 1C 源码环境的可验证最小示例。按校准规则,setup 在没有可验证执行证据时不得超过 15,故给 13。

静态评测 · 未实际运行收录于 2026-09-10

查看 FMRS 评分方法 →

选型与风险

能访问什么读取本地文件执行命令或代码访问网络连接数据库

适合谁

  • 源代码格式为 CF、EDT 或 MDO 的 1C:Enterprise 项目
  • 包含 2 万多个文件、无法整体放入单次会话上下文的大型配置
  • 需要确定性(非模糊)代码库检索的场景,例如查找 http 服务及其方法、文档过账逻辑
  • 希望节省上下文与令牌、避免维护 RAG 基础设施的团队

不适合谁

  • 需要配置全部对象完整依赖图的场景(需要预先索引的 RAG/图 MCP)
  • 按对象描述进行语义/嵌入检索的需求
  • “ERP 中预算如何运作”“UT 中蜂窝仓库如何工作”这类模糊、非确定性问题,需要完整 RAG 或更强模型先将其转化为严格检索
  • 把该服务器当作上游 1C 官方产品:它并非由 1C 维护

所需权限

  • 读取 1C 源码目录(BSL 文件、XML/MDO 描述、元数据)
  • 在主机上写入和管理 SQLite 索引文件
  • 读取和修改服务器目录旁的 projects.json 项目注册表(变更操作要求密码)
  • 在沙盒中执行代理提交的 Python 脚本
  • 可选访问 LLM 端点(OpenAI 兼容的 OpenRouter、Ollama、vLLM 或 Anthropic API),仅在配置 llm_query 时需要
  • 可选使用主机上的 Git 读取源码仓库历史(启用 git_search)

风险与副作用

  • 代理提交的 Python 脚本会在沙盒中执行,脚本能力与沙盒边界的实际强度直接决定主机暴露面
  • 源码目录下存在 .git 时会自动对全部文件启用 git grep 全文搜索,可能读取到开发者未预期暴露的“原始”XML/MDO 与文本内容
  • 配置 llm_query 时,脚本内容或代码片段可能被发送到外部 LLM 端点
  • 项目注册表虽以密码保护变更操作,但密码机制用于防止 AI 未经确认操作,而非强加密隔离
  • 索引构建在 HDD 或网络盘上耗时较长,且索引按读取的代码内容持久化到磁盘

安装接入

准备工作

运行环境:Python 3.10+ · Docker

其他可选配置项(3 个)
RLM_UPDATE_INDEX_ON_START 可选 设为 1 时 Docker 容器启动时会重新计算已注册项目的索引;默认不重建。在 docker-compose.yml 中设置。
RLM_STRATEGY_MODE 可选 设为 full 时 rlm_start 内联全部使用说明(约 20K 字符),适合弱模型;默认 slim 更省 token。在服务环境变量中设置。
REPOS_ROOT 可选 Docker 部署时指向 1C 源码根目录的挂载路径,需在 docker-compose.yml 中编辑。

Windows(管理员 PowerShell):运行 irm https://raw.githubusercontent.com/Dach-Coin/rlm-tools-bsl/master/simple-install-from-pip.ps1 -OutFile simple-install-from-pip.ps1 后执行 PowerShell -ExecutionPolicy Bypass -File .\simple-install-from-pip.ps1,脚本会从 PyPI 安装、注册 Windows 服务、启动服务器并检查健康状态;重复运行即为更新到最新版本。Linux:curl -LO https://raw.githubusercontent.com/Dach-Coin/rlm-tools-bsl/master/simple-install-from-pip.sh,然后 chmod +x simple-install-from-pip.sh && ./simple-install-from-pip.sh。Docker:cp docker-compose.example.yml docker-compose.yml,编辑 REPOS_ROOT 等变量后 docker compose up -d(Windows + Docker Desktop 不推荐)。从源码开发需要 Python 3.10+ 与 uv,Windows 运行 simple-install.ps1,Linux 运行 simple-install.sh。安装后在 .claude.json / mcp.json 中添加 mcpServers 配置指向 http://127.0.0.1:9000/mcp。

.mcp.json
{
  "mcpServers": {
    "rlm-tools-bsl": {
      "type": "http",
      "url": "http://127.0.0.1:9000/mcp"
    }
  }
}

以 Claude Code 为例。其他客户端的配置文件位置或字段可能不同(如 VS Code 使用 servers 字段),可用下方配置生成器转换。

.vscode/mcp.json
{
  "servers": {
    "rlm-tools-bsl": {
      "type": "http",
      "url": "http://127.0.0.1:9000/mcp"
    }
  }
}

写入项目的 .vscode/mcp.json(VS Code 使用 servers 字段)。

Terminal
claude mcp add --transport http rlm-tools-bsl http://127.0.0.1:9000/mcp

在终端运行;先把 <…> 占位符换成你自己的值。

验证是否装好

在客户端的 MCP 工具列表中应出现 rlm_projects、rlm_index、rlm_start、rlm_help、rlm_execute、rlm_end 六个工具;也可以访问 http://127.0.0.1:9000/mcp 的 health 端点确认服务已启动。

常见排障

  1. Windows 服务无法启动(如错误 1053):参考 docs/INSTALL.md 中的“Windows 服务诊断”部分
  2. 大型配置上 glob_files/tree/find_files 调用超时(60-90 秒):在慢速磁盘或网络盘上应预先构建 SQLite 索引,参见 docs/INDEXING.md
  3. 弱模型(Haiku、Minimax、Gemini Flash 等)分析质量差、混淆辅助函数:尝试以 RLM_STRATEGY_MODE=full 重启服务器,使完整策略内联并在 MCP 清单中隐藏 rlm_help
  4. 按链接查询元数据对象、关系或属性类型时结果不准确或噪声大:通常是缺少预先构建的索引
  5. Docker 容器中索引未在启动时重建:设置 RLM_UPDATE_INDEX_ON_START=1
  6. Windows + Docker Desktop 下索引与辅助函数明显变慢:这是 WSL2/Virtiofs 的 I/O 开销所致,建议直接在宿主机上用 pip/服务方式安装

试试这样问

连接成功后,可以直接对 AI 助手这样说:

  • 用 rlm_projects 注册我的 1C 源码目录 /path/to/1c-sources,项目名叫 My Config
  • 用 rlm_start 分析 My Config 项目,找出ОбработкаПроведения过程在哪里定义
  • 用 rlm_execute 调用 extract_procedures 列出某个 BSL 模块里的所有过程签名
  • 对项目建好索引后,找出 http-сервис ОбменСКорпоративнымиСегментами 并描述它的方法

工具能力 6

rlm_projects 写入
管理项目注册表:按名称注册项目(含路径与密码),以及移除/更新/重命名等需要密码的变更操作
rlm_index 写入
通过构建、更新或删除 SQLite 索引来管理项目索引,需提供注册时设置的密码
rlm_start 只读
启动一次分析会话,默认使用 slim 策略生成紧凑的工具导航图,也可选择 full 策略
rlm_help 只读
按需加载沙盒辅助函数的详细用法与配方,节省启动时的上下文令牌
rlm_execute 只读
在沙盒中执行 Python 脚本,仅将 print() 输出返回给代理上下文
rlm_end 只读
结束当前分析会话

使用场景

快速理解一份陌生的 1C 配置或扩展:指定源码目录后代理立即开始工作,无需数小时索引
评估实施工作量:梳理受影响的元数据对象、需要改造的部分与现成功能
每日检查团队通过 1C 存储库(经 gitsync 同步到 Git)提交的代码
同时对多个活跃 1C 代码库进行分析,无暇为每个库构建 RAG 索引
为已完成的开发补写技术文档与说明
分析师在没有 RAG 的项目上回答用户关于系统的提问
对特定子系统、机制或自定义改造块做定点分析

支持客户端

Claude Code
Kilo Code
Roo Code
Cursor

依据项目文档列出,未经本站实测。

详细介绍

RLM Tools BSL 是一个 MCP 服务器,用于对 1C:Enterprise 的 BSL 代码库进行令牌高效(token-efficient)的分析。它是开源项目 rlm-tools 的适配版本,针对 1C 平台特性做了调整:庞大的代码库、CF/EDT/CFE 源码格式、元数据结构、西里尔字母代码以及 XML 对象描述。其核心理念是让 AI 助手获得与 RAG 质量相当、但不依赖 RAG 的代码库检索能力——无需预先向量化,同时大幅节省上下文与令牌。工作方式:AI 代理向服务器发送 Python 脚本,脚本在沙盒中执行,只有 print() 的输出返回代理上下文,从而用紧凑的过滤后结果替代原始文件内容。服务器提供 6 个 MCP 工具(rlm_projects、rlm_index、rlm_start、rlm_help、rlm_execute、rlm_end)和包含 62 个沙盒辅助函数的工具集(52 个 BSL 专用 + 8 个标准 + 2 个 LLM),支持会话缓存、超时与安全控制。可选的 SQLite 索引可加速大型配置的检索,源码目录中存在 .git 时会自动启用基于 git grep 的 git_search 全文搜索。项目注册表支持按名称注册项目并要求密码。授权许可为 MIT。

同类可选方案

Context7 80 · B

Upstash 官方维护,为 AI 编码助手提供实时更新的第三方库文档

★ 63.3k · 工具数 2 与当前对比 →

源版本 b160fa56c506 数据同步于 2026-10-19 查看 FMRS 评分方法