carboncalc について
carboncalcは、出典情報付きの排出係数コーパスと決定論的な計算ツールを組み合わせた、炭素会計・排出分析向けのローカルブリッジです。GreenCalculus MCPサーバーへ呼び出しを転送し、活動データ、貨物輸送、支出、出張、PCAFなどの計算に対応します。
主な機能
- 01監査情報付き排出係数を検索
- 02排出係数を検索・特定
- 03活動、材料、Scope 2の排出量を計算
- 04PCAF、貨物、支出、出張の排出量を計算
- 05係数が存在しない理由を確認
活用シーン
- 01電力使用によるScope 2排出量を計算
- 02貨物輸送や出張の排出量を推定
- 03ポートフォリオのファイナンスド排出量を評価
- 04支出ベースでScope 3をスクリーニング
MCP 対応
MCP サーバーとして、上流のツール一覧をローカルで公開し、ツール呼び出しをGreenCalculus MCPサーバーへ転送します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
12掲載時のツール一覧 · 2 日前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| key | string | はい | 正規の係数キー。例:"grid.gbr.electricity.location_based"。 |
詳細
carboncalc
carboncalc は、ホストされた GreenCalculus MCP サーバーへの小規模なローカルブリッジです。温室効果ガス排出係数を集めた出典付きコーパスと、その上に構築された決定論的な計算機能を利用できます。標準キーで係数を検索すると、値だけでなく監査情報一式も取得できます。公開元、正確な出典参照、取得日時、適用ライセンス、ガス別の内訳の合計が一致するかどうかが含まれます。また、キーがまだ分からない場合は、平易な説明から係数を検索して特定できます。
このコーパスを基盤として、各種の計算機能を利用できます。活動データからの排出量計算、材料のライフサイクル全体にわたるエンボディドカーボン、指定したポートフォリオのPCAF融資排出量、2つの方法によるScope 2電力、GLECフレームワークに基づく貨物輸送、支出ベースのEEIOスクリーニング、距離ベースの出張です。補助ツールでは、係数がコーパスにない理由を説明します。公開元がどこにも発行していないのか、まだ出典が調査されていないのか、採用が見送られたのか、別の空の分類群と連動した空白なのかを確認できます。
このブリッジは係数データを独自に保持しません。稼働中のエンドポイントから取得した upstream サーバーのツール一覧をそのままローカルで提供し、各ツール呼び出しを upstream に転送して、結果を変更せずに返します。計算は呼び出し元が指定した入力に対して実行されます。送信や支払いを行うツールは提供されません。
ツール
lookup_factor— 標準キーで排出係数を1つ検索し、監査情報一式を取得します。 必須:key。search_factors— フリーテキスト、セクション、またはキーのプレフィックスで係数を検索します。任意:query、section、key_prefix、limit。lookup_factors— 1回の呼び出しで複数の係数をキーで検索し、それぞれの監査情報一式を取得します。 必須:keys。calculate_activity— 排出量 = 活動量 × 係数。係数の基準に合わせて単位を換算します。 必須:activity、factor_key。calculate_embodied— EN 15978 に準拠した、材料のライフサイクル全体にわたるエンボディドカーボンを計算します。必須:materials。calculate_pcaf— ポートフォリオのPCAF Part A融資排出量を計算します。必須:holdings。任意:asset_class。calculate_electricity— 購入電力のGHG Protocol Scope 2を、ロケーション基準で計算し、市場係数または供給元係数が指定された場合はマーケット基準でも計算します。 必須:consumption、location_factor_key。calculate_freight— 貨物輸送と物流の排出量を計算します(GLEC)。係数の分母に応じて、massまたはteuを指定します。 必須:distance、factor_key。calculate_spend— 支出ベース(EEIO)のScope 3スクリーニングを行います。排出量 = 支出額 × 排出原単位係数。 必須:spend、factor_key。calculate_business_travel— 距離法で出張の排出量を計算します。 必須:distance、factor_key。任意:passengers。resolve_factor— 平易な説明から最適な係数キーを特定します。説明文には国名も含めます。 必須:description。explain_absence— 係数がコーパスにない理由を確認します。任意:country、family、classification。
設定
GREENCALCULUS_MCP_URL(任意)— upstream エンドポイントを上書きします。デフォルトはhttps://mcp.greencalculus.comです。(この上書きフックは、この再構築で独自に追加したものと明示されています。)GREENCALCULUS_API_KEY(任意)— 設定すると、すべての upstream リクエストに、呼び出し元自身の GreenCalculus キーを使ったAuthorization: Bearer <key>ヘッダーが付加されます。未設定の場合、キーのヘッダーは送信されません。(ヘッダー名は元のレジストリ記録に基づいて固定されています。Bearer スキームとこの環境変数の転送は、再構築で追加したものと明示されています。元のインターフェースはキーなしの状態で取得されています。)
転送の仕組み
最初のツール呼び出し時に、クライアントは上流とのストリーミング可能な
HTTP セッションを開きます。JSON-RPC
initialize リクエスト(protocolVersion 2025-03-26、
clientInfo name carboncalc)、続いて
notifications/initialized 通知、さらに呼び出し元の引数を
変更せずに含む tools/call リクエストを送信します。上流が
Mcp-Session-Id ヘッダーを付けて initialize に応答すると、
その値はセッションの後続リクエストすべてに付加され、プロセスの
終了まで同じセッションが再利用されます。応答はプレーンな JSON と
サーバー送信イベントのどちらでも受信できます。
上流からの成功結果は、上流が設定した isError フラグも含め、
そのまま引き渡されます。失敗(JSON-RPC エラー、2xx 以外のステータス、
読み取り不能な応答、または完了できないリクエスト)は、テキストが
carboncalc error: で始まる isError 結果として返されます
(この表現は、この再構築独自のラベル付き再現です)。
CLI
各ツールは、1 つの JSON 引数文字列を受け取るサブコマンドとしても 実行できます。
npx @reneturcios/carboncalc lookup_factor '{"key":"grid.gbr.electricity.location_based"}'
npx @reneturcios/carboncalc calculate_freight '{"distance":{"value":500,"unit":"km"},"factor_key":"freight.road_hgv.tonne_km","mass":{"value":10,"unit":"tonne"}}'
npx @reneturcios/carboncalc --version
終了コード:成功時は 0、isError 結果の場合は 1、
使用方法に誤りがある場合は 2 です。
MCP サーバー
npx -y @reneturcios/carboncalc mcp
MCP クライアントの設定:
{
"mcpServers": {
"carboncalc": {
"command": "npx",
"args": ["-y", "@reneturcios/carboncalc", "mcp"]
}
}
}
Docker
docker run -i ghcr.io/cloudcorprecords/carboncalc
docker run --rm ghcr.io/cloudcorprecords/carboncalc --version
コンテナーのデフォルトコマンドは mcp であるため、最初の形式は
stdio MCP サーバーとして動作します。それ以外の引数は通常どおり CLI に
渡されます。
開発
npm install
npm run build
npm test
npm run dev
テストスイートは、スタブ化された JSON-RPC 上流のみを使用して実行されます。 実際のネットワーク呼び出しは行いません。
ライセンス
MIT — LICENSE を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。