mcpField
O
openLCA MCP Server

openLCA MCP Server

ローカル
github.com/Below280科学・教育65 週間前に更新

openLCA MCP Server について

openLCA MCP Serverは、AIアシスタントを稼働中のopenLCAに接続し、ライフサイクル評価を支援します。データベースの調査、モデルの作成と監査、対応するデータベース群での影響評価を行えます。

主な機能

  1. 01データベース、プロセス、フローの検索
  2. 02LCAモデルの作成と編集
  3. 03製品システムの監査と検証
  4. 04影響評価とシナリオ計算
  5. 05寄与と不確実性の分析
  6. 06データ品質情報の抽出

活用シーン

  1. 01LCIデータから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

AI アシスタントを実行中の openLCA インスタンスに接続する MCP(Model Context Protocol)サーバーです。Claude Desktop を使って開発・テストされています。stdio トランスポートに対応する MCP クライアントであれば、どれでも利用できます。openLCA の英国パートナーである Below280 が開発しました。

データベースの調査、モデルの作成・編集、計算の実行(シナリオ、感度分析、モンテカルロ法、寄与分析)、モデルの監査・検証、データ品質評価の抽出まで、LCA ワークフロー全体をカバーする 35 個のツールを提供します。すべての計算パターンは、本番環境の 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 モデルを構築して」
  • 「シナリオを 2 つ実行して。1 つは輸送距離を 100 km、もう 1 つは 500 km にして」
  • 「私のシステムで気候変動への寄与が最も大きいプロセスはどれ?」
  • 「電力と PET 樹脂のパラメーターを 10%変化させて」
  • 「製品システムを検証して、リンクが正しいか確認して」
  • 「モンテカルロ法を 1000 回実行して、不確実性を表示して」
  • 「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 ではルートキーに mcpServers ではなく servers を使用します。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 ツールは必要ありません。

B280 の既存のツールアノテーション(読み取り専用、破壊的、べき等)は、操作を自動承認するか、確認を求めるかを判断する際に ChatGPT によって使用されます。

インストール、設定、トラブルシューティング、セキュリティ上の注意事項を含む詳しいセットアップガイドについては、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。

ベータ版ソフトウェアです。 このサーバーは現在も活発に開発されています。本番データベースに接続する前に、データベースのコピーでテストしてください。問題は GitHub または [email protected] までご報告ください。

起動する

  1. openLCA でデータベースを開きます
  2. IPC サーバーを起動します(Tools > Developer Tools > IPC Server > 緑色の再生ボタン、ポート 8080)
  3. MCP クライアントを再起動するか、再接続します
  4. 「何ができますか?」や「openLCA のデータベースには何がありますか?」のように尋ねます

何かを作成または変更した後、openLCA のツールバーにある「Refresh」ボタンを押すと、GUI に変更が反映されます。

データセキュリティ

MCP サーバーはローカルで実行され、localhost 上で openLCA と通信します。AI クライアント(Claude Desktop など)は、ツールの結果をプロバイダーのサーバーに送信して処理します。そのため、データベース内のプロセス名、交換データ、パラメーター値、影響評価結果が会話に含まれます。

機密性の高いクライアントデータベースを、個人用または無料プランの AI アカウントに接続しないでください。 適切なデータ保持管理が備わったビジネスアカウントまたはエンタープライズアカウントを使用し、機密情報を含むデータベースを接続する前に、プロバイダーのデータ処理条件を確認してください。

ツール

探索(11 ツール)
ツール目的
database_infoシステム、プロセス、フロー、メソッド、パラメーターの件数を表示します。データベースの系統を自動検出します
set_database_familyecoinvent または FLCAC の命名規則を設定します
list_systems製品システムを一覧表示または検索します
list_methods影響評価メソッドを一覧表示または検索します
search_processes名前、場所、カテゴリからプロセスを検索します
search_flows名前やカテゴリーフォルダーからフローを検索します
process_details交換、パラメーター、プロバイダーを含むプロセスの全情報を表示します
system_parameters製品システムのパラメーターを一覧表示します
global_parametersデータベースレベルのパラメーターを検索します
find_unit単位と、それらに対応するフローのプロパティを検索します
chemical_synonymsPubChem の同義語検索を使って、データベース内の一致項目を探します
構築(8 ツール)
ツール目的
create_global_parameterデータベースレベルのパラメーターを値または数式として作成または更新します
create_flow製品フロー、廃棄フロー、または初級フローを作成します
edit_flowフローのプロパティを追加または更新するか、参照プロパティを変更します
create_bridge1 回の呼び出しでブリッジフローとプロセスを作成します
create_process交換、パラメーター、プロバイダーを含むプロセスを構築します
edit_process既存のプロセスを編集します。交換やパラメーターを追加、更新、削除できます
create_systemプロセスから製品システムを作成します
delete_entityプロセス、フロー、または製品システムを削除します(ユーザーの確認が必要です。使用中のフローは削除できません)
監査(6 ツール)
ツール目的
extract_modelモデルフォルダーからすべてを取り出して検査します
audit_model構造をチェックします:qref の欠落、量がゼロ、単位の不一致
validate_systemopenLCA の Validate ボタンと同様に、リンク、パラメーター、テスト計算をチェックします
get_system_links各交換項目にリンクされているプロバイダーを表示します
data_qualityプロセスからペディグリーマトリックスと不確実性を抽出します
find_flow_usageあるフローを使用するプロセスと影響カテゴリを検索します
計算(9 ツール)
ツール目的
calculateベースラインの影響評価
contribution_analysis影響カテゴリごとのプロセスレベルの寄与の内訳
upstream_tree1 つのカテゴリについて、すべての分岐にペディグリースコアを付けた多階層の寄与ツリー
monte_carlo統計情報を含む不確実性シミュレーション
inventory_flows生の基本フロー結果(LCI レベル)
scenarios対話形式のパラメーター値からシナリオを計算します
scenarios_csvCSV ファイルからシナリオを計算します
sensitivityパラメーター感度分析
sensitivity_csvCSV ファイルから感度分析を実行します
メタ(1 ツール)
ツール目的
helpワークフロー別に分類された機能を表示します。トピックによる絞り込みもできます

ツールのアノテーション

すべてのツールには MCP ツールアノテーション(readOnlyHint、destructiveHint、idempotentHint、openWorldHint)が付与されているため、クライアントは自動承認するか、確認を求めるかを判断できます。Explore と Calculate のツールは読み取り専用です。Build ツールはデータベースを変更することを示します。delete_entity は破壊的な操作としてマークされています。CSV ツールはファイルをディスクに書き込むものとしてマークされています。chemical_synonyms は外部サービス(PubChem)にアクセスするものとしてマークされています。

EPD モデルの構築

このサーバーには、LCI データから EN15804 EPD モデルを構築するためのガイド付きワークフローが含まれています。AI は LCI 項目をライフサイクルモジュール(A1-D)に割り当て、フォルダー構造、ブリッジプロセス、モジュールプロセス、製品システムを作成します。「build an EPD from this LCI」と尋ねると開始できます。

スタンドアロンスクリプト

繰り返し分析を行う場合、このサーバーは AI トークンなしで実行できるスタンドアロンの Python スクリプトを推奨します。シナリオ計算または感度計算の後、openLCA-IPC-tools-python リポジトリの同等のスクリプトを実行するために必要な CSV ファイルの生成を提案します。

関連リポジトリ

リポジトリ説明
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

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。