carbon-footprint-mcp
탄소 발자국 계산기 (MCP 서버)
EPA GHG 배출 계수를 사용하여 은행 명세서, 재무 내보내기 및 구조화된 활동 데이터로부터 조직의 탄소 발자국을 계산하기 위한 MCP(Model Context Protocol) 서버입니다.
개인정보 보호 및 보안 우선
사용자의 컴퓨터나 서버에서 100% 로컬로 실행됩니다.
외부 API나 클라우드 제공업체로 금융 데이터를 전송하지 않습니다.
기본적으로 데이터를 저장하지 않습니다.
읽기 전용 계산 및 보고 도구만 노출합니다.
Claude Desktop, Cursor 및 기타 MCP 클라이언트와 호환됩니다.
이 서버가 존재하는 이유
ESG 보고, 투자자 실사 자료 또는 내부 지속 가능성 검토를 준비할 때, 사용 가능한 배출량 기준치를 확보하는 과정은 보통 느리고 수동적입니다.
이 서버는 원시 은행 명세서, Xero 또는 QBO 내보내기, 구조화된 운영 입력을 몇 분 만에 탄소 발자국 보고서로 변환하도록 돕습니다. 활동을 EPA 기준 배출 계수에 매핑하고 HTML 및 Markdown 출력을 모두 생성합니다.
사용자 경험은 모든 국가의 조직에서 작동하도록 설계되었으며, 현재 전기 벤치마킹은 내부적으로 EPA eGRID 지역 계수를 사용합니다.
Related MCP server: carbonstop-mcp
주요 기능
은행 CSV, Xero 또는 QBO 내보내기 및 구조화된 활동 데이터를 수집합니다.
거래를 전기, 연료, 여행, 배송, 폐기물과 같은 잠재적 배출원으로 분류하도록 돕습니다.
EPA GHG 배출 계수를 사용하여 Scope 1, Scope 2, Scope 3 배출량을 계산합니다.
매출 및 직원 수 입력 시 탄소 집약도를 점수화합니다.
깔끔한 HTML 및 Markdown 보고서를 생성합니다.
배출 계수 출처
모든 배출 계수는 eGRID 2023 전기 계수 및 IPCC AR5 지구 온난화 지수를 포함한 EPA GHG 배출 계수 허브(2025년 1월)를 기반으로 합니다.
포함된 범주에는 고정 연소, 이동 연소, 전기, 증기 또는 열, 운송, 폐기물 처리, 출장, 직원 출퇴근 및 냉매가 포함됩니다.
설치
Claude Desktop
uv를 설치합니다.Claude Desktop 설정을 열고 MCP 구성을 편집합니다.
이 서버를 추가합니다:
{
"mcpServers": {
"carbon-footprint": {
"command": "uvx",
"args": ["carbon-footprint-mcp"]
}
}
}Claude Desktop을 재시작합니다.
Claude Code 또는 Cursor
claude mcp add carbon-footprint -- uvx carbon-footprint-mcp로컬 개발
git clone https://github.com/MayankTalwar0/carbon-footprint-mcp.git
cd carbon-footprint-mcp
pip install -e .
carbon-footprint-mcp사용 가능한 MCP 도구
도구 | 설명 |
| 3가지 범위 전체에 걸쳐 구조화된 활동 데이터로부터 GHG 배출량을 계산합니다. |
| 깔끔한 HTML 및 Markdown 보고서를 렌더링하고 디스크에 저장합니다. |
| 사용 가능한 연료, eGRID 및 폐기물 배출 계수를 나열합니다. |
지원되는 배출 범주
범위 | 범주 | 필수 입력 |
1 | 고정 연소 | 연료 유형 및 수량 |
1 | 이동 연소 | 연료 유형 및 갤런 |
1 | 냉매 누출 | 가스 유형, 누출 kg 및 GWP |
2 | 구매한 전기 | kWh 및 eGRID 하위 지역 |
2 | 구매한 증기 또는 열 | mmBtu |
3 | 운송 및 유통 | 차량 유형 및 거리 |
3 | 폐기물 처리 | 재료, 쇼트톤 및 처리 방법 |
3 | 출장 | 여행 모드 및 승객-마일 |
3 | 직원 출퇴근 | 통근 모드 및 승객-마일 |
탄소 집약도 점수
점수 | 매출 100만 달러당 tCO2e | 해석 |
우수 | < 5 | 저탄소 운영을 위한 업계 최고 수준 |
좋음 | 5-20 | 낮은 집약도 |
보통 | 20-100 | 서비스 및 기술 분야의 일반적인 수준 |
높음 | 100-500 | 중공업 운영 |
매우 높음 | > 500 | 매우 높은 집약도 |
라이선스
MIT
SlickBooks 제작
SlickBooks 설립자 Mayank가 제작했습니다.
Available Tools
3 toolscomputeEmissionsA
Computes greenhouse gas emissions from structured activity data.
IMPORTANT: After calling this tool, you MUST call generateEmissionsReport with the
full output of this tool. Do not present results to the user without first saving
the report files. The _required_next_step field in the response will remind you.
Args:
inputs_json: A JSON string containing categorized activity data.
Required fields vary by scope:
- Scope 1: stationary_combustion, mobile_combustion, refrigerants
- Scope 2: electricity_kwh, egrid_subregion, steam_mmbtu
- Scope 3: business_travel, employee_commuting, transportation, waste
Optional: annual_revenue, headcount (for scoring), period, source
Returns:
JSON string containing computed emissions by scope, totals, breakdown,
carbon intensity scores, and a _required_next_step instruction.
| Name | Required | Description | Default |
|---|---|---|---|
| inputs_json | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description adds behavioral context: the required next step and the structure of output (through scope details). It does not explicitly mention idempotency or side effects, but the computation nature makes that less critical. Overall, it provides good transparency for the agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is structured with a bold IMPORTANT note and bullet-like list for args, which enhances readability. It is slightly verbose but every sentence contributes value. Front-loading the purpose helps quickly grasp intent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of emissions computation and the presence of an output schema, the description covers input structure, required follow-up, and scope breakdown. It is complete enough for an agent to understand how to invoke and proceed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema only has 'inputs_json' with no description, but the description compensates fully by detailing required fields per scope, optional fields, and format. This adds enormous meaning beyond the bare schema, enabling correct usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool computes greenhouse gas emissions from structured activity data. The verb 'computes' and resource 'emissions' are specific. Sibling tools generateEmissionsReport and listEmissionFactors are distinct, so no confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly instructs to call generateEmissionsReport after and not present results without saving. It provides a clear workflow and references the _required_next_step field, giving strong guidance on when and how to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generateEmissionsReportA
Generates a carbon footprint report in HTML + Markdown and saves to disk.
Args:
emissions_json: JSON string - the direct output from computeEmissions.
output_dir: Directory to save reports to. Default is current directory.
Returns:
JSON with paths to both report files and the markdown content inline.
| Name | Required | Description | Default |
|---|---|---|---|
| emissions_json | Yes | ||
| output_dir | No | . |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must stand alone. It discloses side effects (saves to disk) and return format (paths + inline markdown). Missing details on overwrite behavior, directory existence, and error handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is extremely concise: one sentence for purpose, followed by clear parameter and return descriptions. No redundant information, front-loaded with the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given two simple parameters and output schema existence, the description covers the main use case well. Lacks details on file overwrite behavior and required permissions, but is sufficient for a straightforward report generation tool within a sibling context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so description fully carries the burden. It adds crucial meaning: emissions_json is 'the direct output from computeEmissions', and output_dir is 'Directory to save reports to' with default. This goes well beyond the schema's bare titles.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool generates a carbon footprint report in HTML+Markdown and saves to disk. It specifies the verb 'generates' and resource 'report', and implicitly distinguishes from siblings by being the report generation step after computeEmissions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance that emissions_json should be the output of computeEmissions, and explains the default output_dir. Does not mention when not to use or alternatives, but sibling tools provide context for intended workflow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
listEmissionFactorsA
Lists available emission factors for reference.
Args:
category: One of 'fuels', 'egrid', 'waste', or 'all'.
Returns:
JSON string listing available factors.
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | all |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It states the tool returns a JSON string listing factors, implying read-only behavior, but does not explicitly confirm no side effects or data dependencies. More disclosure would improve transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with only two lines of content, front-loaded with purpose. Every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one parameter and an output schema (present), the description covers purpose, parameter values, and return type. It could mention that the output is a list of factor names or IDs, but overall it is complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'category' has no schema description coverage (0%), but the description lists the allowed values ('fuels', 'egrid', 'waste', 'all'), adding crucial meaning beyond the schema. It does not explain what each category represents, but the baseline is high due to compensating.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists emission factors for reference, using a specific verb and resource. It distinguishes from sibling tools (computeEmissions, generateEmissionsReport) which have different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for listing factors but lacks explicit guidance on when to use this vs alternatives. No exclusion criteria or context for when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
v0.1.0- First observed
computeEmissions - First observed
generateEmissionsReport - First observed
listEmissionFactors
TDQS
Scored across 3 tools
Each tool has a clear, distinct purpose: computing emissions, generating reports, and listing emission factors. No functional overlap exists.
All tool names follow a consistent camelCase verb_noun pattern: computeEmissions, generateEmissionsReport, listEmissionFactors.
Three tools is appropriate for a focused carbon footprint calculator, covering computation, reporting, and reference without being too few or too many.
The tool set covers core workflow steps (compute, report, reference). Minor gaps like update/delete for reports or scenario comparison are not essential for the core purpose.
Maintenance
Related MCP Connectors
An MCP server that provides read access to your cloud storage providers, bank accounts and more.
TaxSort — Tollbooth-monetized MCP server for personal tax transaction classification
MCP server for Modern Treasury — payment orders, transactions, counterparties and ledgers.
A MCP server for the Frankfurter API for currency exchange rates.
Related MCP Servers
- FlicenseAqualityDmaintenanceAn MCP server that provides access to Northwood Capital Partners' portfolio carbon data, enabling MCP-compatible agents to query emissions, analyze decarbonization gaps, and simulate reduction initiatives through natural language.5-

carbonstop-mcpofficial
AlicenseBqualityDmaintenanceMCP server enabling AI assistants to automatically perform carbon footprint modeling, product queries, and emission analysis via the Carbonstop Cloud API.86 npmMIT- AlicenseNot gradedqualityBmaintenanceClimatiq MCP server that calculates carbon footprints using emission factors, enabling users to list unit types and compute environmental impact.150 npmMIT
- AlicenseNot gradedqualityFmaintenanceMCP server for accessing and managing Banktivity personal finance data, enabling account, transaction, and budget operations through natural language.3MIT