@nikeandocean/carbon-factor-matcher 0.3.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +29 -25
- package/package.json +11 -3
package/README.md
CHANGED
|
@@ -1,13 +1,17 @@
|
|
|
1
|
+
[](https://smithery.ai/servers/nikeandocean/carbon-factor-matcher)
|
|
2
|
+
|
|
1
3
|
# Carbon Factor Matcher — MCP Server for Carbon Accounting
|
|
2
4
|
|
|
3
|
-
An MCP (Model Context Protocol) server that connects
|
|
5
|
+
An MCP (Model Context Protocol) server that connects AI agents with carbon emission factor databases. It provides intelligent emission factor matching for carbon accounting, LCA (Life Cycle Assessment), and ESG reporting applications.
|
|
4
6
|
|
|
5
7
|
## What is this MCP?
|
|
6
8
|
|
|
7
|
-
Carbon Factor Matcher helps AI agents
|
|
9
|
+
Carbon Factor Matcher helps AI agents find the most appropriate emission factors from standardized environmental databases. It uses a hybrid search algorithm:
|
|
10
|
+
|
|
11
|
+
1. **Keyword + Embedding retrieval** — Field-weighted keyword scoring and semantic similarity to find candidate factors
|
|
12
|
+
2. **Quality-based ranking** — 5-dimension data quality assessment to rank candidates
|
|
8
13
|
|
|
9
|
-
|
|
10
|
-
2. **LLM-based fine ranking** — AI-powered selection with reasoning and confidence scores
|
|
14
|
+
The calling AI agent selects the best match from the ranked candidates. No external LLM API needed.
|
|
11
15
|
|
|
12
16
|
### Supported Databases
|
|
13
17
|
|
|
@@ -18,6 +22,7 @@ Carbon Factor Matcher helps AI agents and LLM-based applications find the most a
|
|
|
18
22
|
|
|
19
23
|
- 5-dimension data quality rating (technology, geography, source, time, factor type)
|
|
20
24
|
- Multi-language support (Chinese/English activity descriptions)
|
|
25
|
+
- Zero configuration — works out of the box after installation
|
|
21
26
|
- MCP-compatible — works with Claude, Cursor, Windsurf, Cline, Continue, and any MCP client
|
|
22
27
|
|
|
23
28
|
## Installation
|
|
@@ -124,7 +129,7 @@ The Free tier works immediately after installation (300 queries/day, ELCD databa
|
|
|
124
129
|
| Plan | Price | Features |
|
|
125
130
|
|------|-------|----------|
|
|
126
131
|
| **Free** | $0 | ELCD database (~600 factors), keyword search, 300 queries/day |
|
|
127
|
-
| **Pro** | $5 (one-time) | ELCD + ecoinvent (~21,000 factors),
|
|
132
|
+
| **Pro** | $5 (one-time) | ELCD + ecoinvent (~21,000 factors), hybrid matching with quality rating, unlimited queries |
|
|
128
133
|
|
|
129
134
|
### Purchase License Key
|
|
130
135
|
|
|
@@ -139,10 +144,7 @@ After purchase, you'll receive a license key via email. Set it as an environment
|
|
|
139
144
|
"command": "npx",
|
|
140
145
|
"args": ["-y", "@nikeandocean/carbon-factor-matcher"],
|
|
141
146
|
"env": {
|
|
142
|
-
"CARBON_FACTOR_LICENSE_KEY": "PRO-xxxx-xxxx"
|
|
143
|
-
"LLM_API_KEY": "sk-xxxx",
|
|
144
|
-
"LLM_BASE_URL": "https://api.deepseek.com",
|
|
145
|
-
"LLM_MODEL": "deepseek-chat"
|
|
147
|
+
"CARBON_FACTOR_LICENSE_KEY": "PRO-xxxx-xxxx"
|
|
146
148
|
}
|
|
147
149
|
}
|
|
148
150
|
}
|
|
@@ -154,16 +156,15 @@ After purchase, you'll receive a license key via email. Set it as an environment
|
|
|
154
156
|
| Variable | Description | Default |
|
|
155
157
|
|----------|-------------|---------|
|
|
156
158
|
| `CARBON_FACTOR_LICENSE_KEY` | Your license key (empty = Free tier) | — |
|
|
157
|
-
| `LLM_API_KEY` | LLM API key for Pro matching (DeepSeek/OpenAI) | — |
|
|
158
|
-
| `LLM_BASE_URL` | LLM endpoint URL | `https://api.deepseek.com` |
|
|
159
|
-
| `LLM_MODEL` | LLM model name | `deepseek-chat` |
|
|
160
159
|
| `CARBON_FACTOR_DATA_DIR` | Path to local factor database | `data/factors` |
|
|
161
160
|
|
|
161
|
+
Note: No external LLM API configuration needed. The calling AI agent handles final factor selection.
|
|
162
|
+
|
|
162
163
|
## Available Tools
|
|
163
164
|
|
|
164
165
|
### `factor_match`
|
|
165
166
|
|
|
166
|
-
Match activity data to
|
|
167
|
+
Match activity data to emission factors. Free tier uses keyword search; Pro tier uses hybrid embedding + quality ranking. Returns ranked candidates for the calling agent to select from.
|
|
167
168
|
|
|
168
169
|
**Input:**
|
|
169
170
|
```json
|
|
@@ -173,18 +174,22 @@ Match activity data to the best emission factor. Free tier uses keyword search;
|
|
|
173
174
|
}
|
|
174
175
|
```
|
|
175
176
|
|
|
176
|
-
**Output:**
|
|
177
|
+
**Output (Pro tier):**
|
|
177
178
|
```json
|
|
178
179
|
{
|
|
179
|
-
"
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
180
|
+
"candidates": [
|
|
181
|
+
{
|
|
182
|
+
"id": "elec-cn-south-10kv-2024",
|
|
183
|
+
"name": "Electricity, 10kV, South China Grid",
|
|
184
|
+
"value": 0.6101,
|
|
185
|
+
"unit": "kgCO2e/kWh",
|
|
186
|
+
"hybrid_score": 0.85,
|
|
187
|
+
"quality_ratings": {"tech_representativeness": 1, "source_reliability": 1, "...": "..."},
|
|
188
|
+
"quality_score": 0.9,
|
|
189
|
+
"final_score": 0.875
|
|
190
|
+
}
|
|
191
|
+
],
|
|
192
|
+
"selection_guidance": "从候选列表中选择最匹配的排放因子..."
|
|
188
193
|
}
|
|
189
194
|
```
|
|
190
195
|
|
|
@@ -220,12 +225,11 @@ Get full metadata for a specific factor.
|
|
|
220
225
|
|
|
221
226
|
- Node.js 18+ (for `npx`)
|
|
222
227
|
- Python 3.11+ (auto-installed via pip)
|
|
223
|
-
- LLM API key (Pro tier only — DeepSeek recommended)
|
|
224
228
|
|
|
225
229
|
## Support
|
|
226
230
|
|
|
227
231
|
- **Email:** tao.yan@zju.edu.cn
|
|
228
|
-
- **Issues:** https://github.com/
|
|
232
|
+
- **Issues:** https://github.com/nikeandocean/carbon-factor-matcher/issues
|
|
229
233
|
|
|
230
234
|
## License
|
|
231
235
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nikeandocean/carbon-factor-matcher",
|
|
3
|
-
"version": "
|
|
4
|
-
"description": "MCP server for intelligent emission factor matching — connects
|
|
3
|
+
"version": "2.1.0",
|
|
4
|
+
"description": "MCP server for intelligent emission factor matching — connects AI agents with carbon emission factor databases (ELCD, ecoinvent)",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"bin": {
|
|
7
7
|
"carbon-factor-matcher": "index.js"
|
|
@@ -31,8 +31,16 @@
|
|
|
31
31
|
"carbon-footprint",
|
|
32
32
|
"co2"
|
|
33
33
|
],
|
|
34
|
-
"author": "
|
|
34
|
+
"author": "nikeandocean",
|
|
35
35
|
"license": "Proprietary",
|
|
36
|
+
"homepage": "https://github.com/nikeandocean/carbon-factor-matcher#readme",
|
|
37
|
+
"repository": {
|
|
38
|
+
"type": "git",
|
|
39
|
+
"url": "git+https://github.com/nikeandocean/carbon-factor-matcher.git"
|
|
40
|
+
},
|
|
41
|
+
"bugs": {
|
|
42
|
+
"url": "https://github.com/nikeandocean/carbon-factor-matcher/issues"
|
|
43
|
+
},
|
|
36
44
|
"dependencies": {},
|
|
37
45
|
"engines": {
|
|
38
46
|
"node": ">=18.0.0"
|