mcpField
O
openLCA MCP Server

openLCA MCP Server

本地服务
github.com/Below280科研与教育65 周前更新

关于 openLCA MCP Server

openLCA MCP Server 将 AI 助手连接到运行中的 openLCA,用于生命周期评估工作。其工具涵盖数据库探索、模型构建与审计,以及对受支持数据库系列执行影响计算。

主要功能

  1. 01探索数据库、过程和流
  2. 02构建和编辑 LCA 模型
  3. 03审计并验证产品系统
  4. 04运行影响和情景计算
  5. 05分析贡献与不确定性
  6. 06提取数据质量信息

适用场景

  1. 01根据 LCI 数据构建 EPD 模型
  2. 02比较运输或参数情景
  3. 03查找影响类别的主要贡献过程
  4. 04验证产品系统链接和参数

MCP 相关

通过 stdio 向 MCP 客户端提供 35 个工具和 4 个资源,并经由本地 IPC 服务连接 openLCA。工具支持探索、修改、审计和计算 LCA 模型。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"below280-b280-olca": {
"command": "uvx",
"args": [
"b280-olca-mcp"
]
}
}
}
启动命令uvx b280-olca-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypib280-olca-mcp1.16.0

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

openLCA MCP Server

一个 MCP(Model Context Protocol)服务,可将 AI 助手连接到正在运行的 openLCA 实例。该服务使用 Claude Desktop 开发并测试;兼容所有支持 stdio 传输的 MCP 客户端。由 Below280 构建,该公司是 openLCA 在英国的合作伙伴。

该服务提供 35 个工具,涵盖完整的 LCA 工作流:浏览数据库、构建和编辑模型、运行计算(情景、敏感性分析、Monte Carlo、贡献分析)、审计和验证模型,以及提取数据质量评估结果。所有计算模式均已通过生产环境中的 ecoinvent 数据库测试。

该服务兼容 ecoinvent 系列数据库(ecoinvent、EN15804GD、HiQLCD、BAFU)和 FLCAC 系列数据库(LCA Commons、US LCI、USEEIO)。它会询问你使用的是哪个系列,也可以根据流属性名称自动检测。

可在 PyPI 和 MCP Registry 获取。

安装

快速设置(PyPI)
pip install b280-olca-mcp

此操作会一步安装该服务及其依赖项(mcp、olca-ipc)。使用 python -m b280_olca_mcp 即可从任意位置运行该服务。

开发设置(GitHub)

克隆代码仓库以获取最新代码和 React 仪表板,或修改该服务:

git clone https://github.com/Below280/B280-olca-MCP.git
cd B280-olca-MCP
pip install -r requirements.txt

服务的入口文件是 b280_olca_mcp/server.py。

功能

使用此 MCP 的用户可以提出类似以下的需求:

  • “用 34 kWh 英国电力、5 kg 氢氧化钠和 34 kWh 蒸汽为我创建一个模型”
  • “根据这份 LCI 构建 EPD 模型”
  • “运行两个情景,一个运输距离为 100 km,另一个为 500 km”
  • “我的系统中,哪些过程对气候变化的贡献最大?”
  • “将电力和 PET 树脂参数的变化幅度设为 10%”
  • “验证我的产品系统,并检查链接是否正确”
  • “运行 1000 次 Monte Carlo 迭代,并展示不确定性”
  • “帮我通过 R / Go / Rust 连接 openLCA”
  • “你能做什么?”(帮助工具)

AI 助手会处理对话、构建工具调用,并通过图表、表格和可导出的数据直观地呈现结果。

连接 MCP 客户端

该服务使用 stdio 传输。任何能够启动本地 Python 进程的 MCP 客户端都可以使用。

Claude Desktop

在 Claude Desktop 中,前往 Settings > Developer > Edit Config。在 mcpServers 部分添加一个 openLCA 条目。

如果通过 PyPI 安装:

{
  "mcpServers": {
    "openLCA": {
      "command": "python",
      "args": ["-m", "b280_olca_mcp"],
      "env": {
        "OLCA_PORT": "8080"
      }
    }
  }
}

如果从 GitHub 克隆:

{
  "mcpServers": {
    "openLCA": {
      "command": "python",
      "args": ["C:/path/to/B280-olca-MCP/b280_olca_mcp/server.py"],
      "env": {
        "OLCA_PORT": "8080"
      }
    }
  }
}

在 Windows 上,如果 Claude Desktop 找不到 Python,请使用 Python 可执行文件的完整路径。

保存后重启 Claude Desktop。

Cursor

前往 Settings > Tools & MCP > Add MCP Server。选择 stdio 传输,将命令设为 python,参数设为 -m b280_olca_mcp(PyPI),或设为 b280_olca_mcp/server.py 的路径(GitHub 克隆)。Cursor 无需重启即可读取配置更改。

VS Code

将服务添加到工作区或用户设置中的 .vscode/mcp.json:

{
  "servers": {
    "openLCA": {
      "type": "stdio",
      "command": "python",
      "args": ["-m", "b280_olca_mcp"],
      "env": {
        "OLCA_PORT": "8080"
      }
    }
  }
}

注意:VS Code 使用 servers 作为根键,而不是 mcpServers。如果使用 GitHub Copilot,请将 Copilot Chat 切换到 Agent 模式。

ChatGPT

ChatGPT 无法直接启动本地 stdio 服务。OpenAI 提供了 Secure MCP Tunnel,可在不向公网暴露任何内容的情况下,将 ChatGPT 连接到本地 MCP 服务。架构如下:

ChatGPT → Secure MCP Tunnel → B280 MCP (stdio) → openLCA IPC localhost:8080

隧道会在你的计算机上启动 B280 服务(python -m b280_olca_mcp)。无需更改 B280 服务;它始终使用 stdio。ChatGPT 自定义 MCP 服务不需要额外的 search 或 fetch 工具。

ChatGPT 会使用 B280 现有的工具注释(只读、破坏性、幂等),以决定是否自动批准或要求确认。

如需完整的设置指南(包括安装、配置、故障排除和安全注意事项),请参阅 docs/chatgpt.md。

ChatGPT 支持目前仍处于实验阶段。未来可能会增加远程 Streamable HTTP 传输选项,供不想运行本地隧道的用户使用。

其他 MCP 客户端

任何通过 stdin/stdout 启动本地 Python 进程的客户端都应该可以正常工作。使用 PyPI:python -m b280_olca_mcp。使用 GitHub 克隆:python path/to/b280_olca_mcp/server.py。

Beta 软件。 此服务正在积极开发中。连接生产数据库前,请先在数据库副本上进行测试。请在 GitHub 或 [email protected] 报告问题。

启动

  1. 在 openLCA 中打开数据库
  2. 启动 IPC 服务(Tools > Developer Tools > IPC Server > 绿色播放按钮,端口 8080)
  3. 重启 MCP 客户端(或重新连接)
  4. 询问类似“你能做什么?”或“我的 openLCA 数据库中有什么?”的问题

创建或修改任何内容后,点击 openLCA 工具栏中的“刷新”按钮,即可在 GUI 中查看更改。

数据安全

MCP 服务在本地运行,并通过 localhost 与 openLCA 通信。AI 客户端(Claude Desktop 或同类客户端)会将工具结果发送到其提供商的服务器进行处理。这意味着数据库中的流程名称、交换数据、参数值和影响结果都会出现在对话中。

请勿通过个人或免费版 AI 账户连接包含机密信息的客户数据库。 请使用具有适当数据保留控制的商业版或企业版账户,并在连接任何包含敏感信息的数据库前,查看提供商的数据处理条款。

工具

探索(11 个工具)
工具用途
database_info统计系统、流程、流、方法和参数的数量。自动检测数据库系列
set_database_family设置 ecoinvent 或 FLCAC 命名惯例
list_systems列出/搜索产品系统
list_methods列出/搜索影响评估方法
search_processes按名称、位置或类别查找流程
search_flows按名称和/或类别文件夹查找流
process_details流程完整信息:交换、参数、提供者
system_parameters列出产品系统的参数
global_parameters查询数据库级参数
find_unit查询单位及其流属性
chemical_synonyms搜索 PubChem 同义词,以查找数据库匹配项
构建(8 个工具)
工具用途
create_global_parameter创建或更新数据库级参数,可设置为值或公式
create_flow创建产品流、废物流或基本流
edit_flow添加或更新流属性,或更改参考属性
create_bridge一次调用即可创建桥接流和流程
create_process使用交换、参数和提供者构建流程
edit_process编辑现有流程:添加/更新/删除交换和参数
create_system从流程创建产品系统
delete_entity删除流程、流或产品系统(需要用户确认;如果某个流仍在使用,则拒绝删除)
审计(6 个工具)
工具用途
extract_model提取模型文件夹中的所有内容以供检查
audit_model结构检查:缺少 qrefs、金额为零、单位不匹配
validate_system模拟 openLCA 的 Validate 按钮:链接、参数、测试计算
get_system_links显示每个交换项链接了哪些提供方
data_quality从流程中提取谱系矩阵和不确定性
find_flow_usage查找使用某个流的流程和影响类别
计算(9 个工具)
工具用途
calculate基线影响评估
contribution_analysis按影响类别拆分流程级贡献
upstream_tree单个类别的多级贡献树,每个分支均包含谱系评分
monte_carlo统计不确定性模拟
inventory_flows原始基本流结果(LCI 级别)
scenarios根据对话中的参数值进行情景计算
scenarios_csv根据 CSV 文件进行情景计算
sensitivity参数敏感性分析
sensitivity_csv根据 CSV 文件进行敏感性分析
元信息(1 个工具)
工具用途
help按工作流分组显示功能,并可选择主题进行筛选

工具注解

每个工具都带有 MCP 工具注解(readOnlyHint、destructiveHint、idempotentHint、openWorldHint),客户端可据此决定是否自动批准或提示用户确认。探索和计算工具为只读。构建工具会提示其会修改数据库。delete_entity 标记为具有破坏性。CSV 工具标记为会向磁盘写入文件。chemical_synonyms 标记为会访问外部服务(PubChem)。

资源

该服务提供四项 MCP 资源,AI 客户端可按需读取:

资源URI用途
数据库信息lca://database/info实时数据库概览
助手说明lca://knowledge/instructions操作规则、工作流和约定
IPC 协议参考lca://knowledge/ipc-protocol全部 60 种 IPC 方法的完整 JSON-RPC 规范
openLCA 资源lca://knowledge/openlca-resources数据库、文档、论坛和培训的链接

IPC 协议参考使 AI 客户端能够通过根据协议规范生成客户端代码,帮助用户从任何编程语言连接到 openLCA。

EPD 模型构建

该服务包含一个引导式工作流,可根据 LCI 数据构建 EN15804 EPD 模型。AI 会将 LCI 项目映射到生命周期模块(A1-D),创建文件夹结构、桥接流程、模块流程和产品系统。发送“build an EPD from this LCI”即可开始。

独立脚本

对于重复分析,该服务建议使用无需 AI 令牌即可运行的独立 Python 脚本。完成情景或敏感性计算后,它会提供生成 CSV 文件的选项,以便运行来自 openLCA-IPC-tools-python 仓库的等效脚本。

相关仓库

仓库说明
openLCA-IPC-tools-python用于情景、敏感性、参数和前瞻性 LCA 的独立 Python 脚本
openLCA-IPC-tools-ropenLCA IPC 的 R 客户端(首个用于 openLCA 的 R 包)
openLCA-IPC-tools-fortranFortran IPC 客户端和批量计算器

关于

由 Below280 Limited 构建。该公司是一家英国 LCA、EPD 和 CBAM 咨询机构,也是 openLCA 的英国官方合作伙伴。此服务中的计算模式源自 EPD 和 LCA 咨询工作中使用的生产脚本,并已针对 ecoinvent 3.10/3.11/3.12、EN15804GD 和 US Federal LCA Commons (FLCAC) 数据库进行测试。

如有问题,请访问:GitHub Issues 或发送邮件至 [email protected]

文档

许可证

MPL-2.0

mcp-name: io.github.Below280/b280-olca-mcp

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。