关于 Emission Factors
Emission Factors 是一个 MCP 服务,按美国邮政编码向客户端提供电力和燃料排放数据。其工具涵盖碳核算、电价、逐小时电网碳强度、电厂排放和地点比较,数据来自政府及公用事业数据集。
主要功能
- 01按邮政编码查询电网排放因子
- 02计算 Scope 1 和 Scope 2 排放
- 03查询逐小时碳强度和清洁时段
- 04获取电厂排放数据
- 05查询零售电价和公用事业费率
- 06批量查询邮编并对地点排序
适用场景
- 01估算地点的用电排放与成本
- 02比较数据中心候选地点
- 03在碳强度较低的时段安排灵活负荷
- 04为一组邮编补充排放数据
MCP 相关
它通过托管的 Streamable HTTP 端点或本地 stdio 服务向 MCP 客户端提供 11 个工具。工具返回 JSON,并查询同一公共 API。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://emission-factors.com/mcpclaude mcp add --transport http rozetyp-emission-factors https://emission-factors.com/mcp{"mcpServers":{"rozetyp-emission-factors":{"type":"http","url":"https://emission-factors.com/mcp"}}}在 Cursor 中打开{"servers":{"rozetyp-emission-factors":{"type":"http","url":"https://emission-factors.com/mcp"}}}在 VS Code 中打开{"mcpServers":{"rozetyp-emission-factors":{"type":"http","url":"https://emission-factors.com/mcp"}}}{"mcpServers":{"rozetyp-emission-factors":{"serverUrl":"https://emission-factors.com/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
11| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| zip | string | 是 | 5 位美国 ZIP code(例如 "94105");也接受 ZIP+4 |
| year | enum | 否 | eGRID 版本:2023(EPA 官方默认版本)或 2024(Cornerstone 使用 2024 年数据运行的 EPA 公共 eGRID 代码;EPA 尚未发布 eGRID2024)2023 | 2024 |
详细介绍
emission-factors MCP 服务
让 Claude、Cursor、Cline 或任何 MCP 客户端实时访问按 ZIP 邮政编码划分的美国电力数据——电网碳排放因子、零售电价、逐小时电网碳强度、电厂排放和公用事业费率。
由 emission-factors.com 提供支持,该服务将 EPA eGRID、EIA-861、EIA-930、EPA CAMD 和 OpenEI URDB 整合为一个按 ZIP 邮政编码查询的 API。
免费,无需 API 密钥,也无需注册。 API 按 IP 限流(每小时 2,000 次请求)。
你可以询问什么
连接后,你的 Agent 可以回答以下问题:
- “我的总部位于 ZIP 邮政编码 94105,年用电量为 120 万 kWh。我们的 Scope 2 碳足迹和年度电费是多少?”
- “比较丹佛、奥斯汀和哥伦布的数据中心选址,评估电网碳强度和电价。”
- “本周在加州,什么时段运行 500 kW 的批处理作业最清洁?”
- “为这份包含 40 个门店 ZIP 邮政编码的列表补充各站点的排放因子和无碳电力占比。”
- “过去一周,德克萨斯州哪些电厂的 CO2 排放最高?”
- “从碳排放和电力成本角度,为 Ashburn VA、Abilene TX 和 The Dalles OR 的 10 MW 数据中心选址排名。”
- “我们的工厂每年燃烧 40,000 therms 的天然气和 3,000 加仑柴油——我们的 Scope 1 排放是多少?”
- “ZIP 邮政编码 94105 的 PG&E 住宅实际费率是多少,而不是州平均值?”
为什么要使用它
- Scope 2 碳核算——为 33,700 多个美国 ZIP 邮政编码提供符合 GHG Protocol 的基于地点和基于市场的排放因子(CDP、CSRD、California SB 253 所需数据)。
- 选址——通过一次对话,同时比较候选地点的碳强度和电费。
- 需求响应和负荷转移分析——基于 EIA-930 的逐小时电网碳排放数据(对电网内发电按燃料固定排放因子:适用于时间安排,不适用于清单报告)。
- 电厂级排放——适用于容量超过 25 MW 的化石燃料机组的 EPA CAMD 数据:提供设施摘要或机组逐小时记录,每季度发布。
- Agent 和自动化——提供简洁的工具接口,让大模型获取权威政府数据,而不是臆造排放因子。
快速开始
有两种运行方式。大多数人会选择选项 A。
选项 A - 远程服务(推荐,无需安装)
无需安装,始终保持最新。托管端点为 https://emission-factors.com/mcp(Streamable HTTP,无需密钥)。
Claude(网页、桌面应用、移动端) - 添加到 Claude。此链接会打开 Claude 的自定义连接器对话框,并自动填入名称和 URL;选择 Add,然后选择 Connect。手动操作:Customize -> Connectors -> Add custom connector,URL 为 https://emission-factors.com/mcp,OAuth 字段留空。
Claude Code
claude mcp add --transport http emission-factors https://emission-factors.com/mcp
Cursor - 添加到 ~/.cursor/mcp.json:
{
"mcpServers": {
"emission-factors": {
"url": "https://emission-factors.com/mcp"
}
}
}
Cline / Continue / Zed / 其他客户端 - 添加远程(Streamable HTTP)MCP 服务,URL 为 https://emission-factors.com/mcp。无需密钥。
Claude Desktop 的
claude_desktop_config.json只能启动本地(stdio)服务——其中的"url"条目不起作用。请使用上方的连接器链接,或选择选项 B。
选项 B - 本地 stdio 服务(此软件包)
将服务作为本地进程运行,并代理同一公共 API。适用于仅支持 stdio 传输的客户端,或希望自托管的情况。
直接从 GitHub 运行(安装时构建,要求 Node 18+):
{
"mcpServers": {
"emission-factors": {
"command": "npx",
"args": ["-y", "github:rozetyp/emission-factors-mcp"]
}
}
}
或克隆并从源代码运行:
git clone https://github.com/rozetyp/emission-factors-mcp.git
cd emission-factors-mcp
npm install # builds dist/ via the prepare script
{
"mcpServers": {
"emission-factors": {
"command": "node",
"args": ["/absolute/path/to/emission-factors-mcp/dist/index.js"]
}
}
}
可选环境变量:EMISSION_FACTORS_API_BASE(默认为 https://emission-factors.com),用于运行你自己的 API 实例。
工具
共 11 个工具,以美国 ZIP 邮政编码为键(或使用下文注明的直接代码)。远程服务和此 stdio 版本提供相同的工具集。
| 工具 | 用途 | 主要输入 |
|---|---|---|
lookup_emission_factor | 查询 ZIP 邮政编码对应的 EPA eGRID CO2e 和完整发电结构 | zip |
lookup_by_coordinates | 通过 Census 地理编码器根据纬度/经度解析并查询 | lat、lon |
lookup_batch | 一次查询最多 100 个 ZIP 邮政编码的排放因子 | zips[] |
calculate_emissions | 计算 ZIP 邮政编码和 kWh 对应的 Scope 2 CO2e,包括基于位置和基于市场的结果(Green-e 残余电力结构) | zip、kwh、renewable_kwh |
hourly_intensity | 查询每小时电网碳强度(EIA-930,约延迟 24 小时) | zip 或 ba、hours |
plant_emissions | 查询发电厂排放(EPA CAMD):设施摘要或机组小时记录 | facility_id 或 state、days |
utility_tariff | 查询特定公用事业公司的电价,而非州平均电价(OpenEI URDB) | zip、utility 或 eiaid |
electricity_rate | 按行业查询州平均零售电价(EIA-861) | zip |
compare_sites | 按电网碳排放、$/kWh 和每日最清洁时段对 2-25 个候选地点进行排名 | zips[]、annual_kwh、sector |
cleanest_hours | 查询一天中适合运行灵活负载的最清洁 N 小时时段,采用当地时间 | zip 或 ba、duration |
calculate_fuel_emissions | 计算现场燃烧燃料产生的 Scope 1 CO2e(EPA GHG Emission Factors Hub) | items[]:fuel、quantity、unit |
所有工具均返回 JSON。具体响应结构请参阅完整 API 文档。
数据来源
| 数据 | 来源 | 备注 |
|---|---|---|
| 电网排放因子 | EPA eGRID2023 Rev2(另可通过 year=2024 使用来自 Cornerstone 的 eGRID2024) | 年度数据,基于位置,涵盖 27 个子区域 |
| 残余电力结构(基于市场的 Scope 2) | Green-e Residual Mix 2025(2023 年数据) | 按 eGRID 子区域划分 |
| 燃料燃烧因子(Scope 1) | GHG Emission Factors Hub 2026(Cornerstone,EPA Hub 的后继版本);通过 edition 使用 EPA 2025 版 | 63 种燃料,AR6 GWP(2025 版采用 AR5) |
| 零售电价 | EIA Form 861 | 按行业划分的州级月平均值 |
| 每小时电网碳强度 | EIA-930 | 根据每小时燃料结构计算,约延迟 24 小时 |
| 发电厂排放 | EPA CAMD | 化石燃料机组 >25 MW,每季度发布(季度结束后 45 天以上) |
| 特定公用事业公司的电价 | OpenEI URDB(NREL) | 根据 EIA ID 将 ZIP 邮政编码与对应的公用事业公司匹配 |
| ZIP / 纬度-经度解析 | US Census(ZCTA + Geocoder) | ZIP -> eGRID 子区域映射 |
速率限制和身份验证
- 无需 API 密钥,也无需注册。 所有请求均为匿名请求。
- 每个 IP 每小时 2,000 个请求。 足以满足交互式使用;超过限额时会收到 HTTP 429 响应,并附带
retryAfter提示。 - 外部数据端点会在服务端缓存(电价 24 小时、每小时碳强度 1 小时、电价方案 7 天、发电厂排放 24 小时),因此重复调用速度快,也不会消耗上游配额。
另有提供
- REST API - 通过普通 HTTP 获取相同数据:
curl "https://emission-factors.com/api/lookup?zip=94105"。请参阅 API 文档和 OpenAPI 规范。 - 托管 MCP 设置指南 - emission-factors.com/mcp-setup
- 供 Agent 使用的机器可读摘要 - emission-factors.com/llms.txt
开发
npm install # install deps and build (prepare -> tsc)
npm run build # compile TypeScript to dist/
npm run dev # watch mode
npm start # run the built server over stdio
使用 MCP Inspector 快速进行冒烟测试:
npx @modelcontextprotocol/inspector node dist/index.js
该服务是一个轻量级代理:每个工具都映射到 emission-factors.com 上的一个 /api/* 端点,验证输入并返回 JSON 响应。没有本地状态,也不处理密钥。
许可证
MIT - 参见 LICENSE。数据属于各自的美国政府来源机构(EPA、EIA、Census)和 NREL/OpenEI;本项目和 API 是非官方封装,与这些机构无关联。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。