carbon-intelligence
Verified CO2e for any transaction, activity, flight, shipment or CBAM import. 200+ countries.
Should I use this
Quality & Safety
Findings (3)
- LOWin lookup_emission_factors
- LOWin calculate_emissions_transaction
- LOWin calculate_emissions_activity_batch
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"carbon-intelligence": {
"url": "https://api.myco2suite.io/v1/mcp"
}
}
}Remote endpoints
https://api.myco2suite.io/v1/mcpstreamable-httpWhat it can do
Tool inventory
Tools (11)
🟢calculate_emissions_transaction(mcc, spend_amount, currency, country, bea_code, ...)
Calculate CO2e emissions for a business transaction (spend-based)
Input Schema
{
"type": "object",
"properties": {
"mcc": {
"type": "string",
"description": "4-digit MCC code (e.g. 5812 for restaurants)"
},
"spend_amount": {
"type": "number",
"description": "Transaction spend amount"
},
"currency": {
"type": "string",
"description": "ISO 4217 currency code (e.g. GBP, USD, EUR)"
},
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 country code (e.g. GB, US)"
},
"bea_code": {
"type": "string",
"description": "BEA sector code (5-7 alphanumeric)"
},
"naics": {
"type": "string",
"description": "NAICS code (6 digits)"
},
"isic": {
"type": "string",
"description": "ISIC code (4 digits)"
},
"sic": {
"type": "string",
"description": "SIC code (2-5 digits)"
},
"nace": {
"type": "string",
"description": "NACE code (e.g. 56.10)"
},
"display_currency": {
"type": "string",
"description": "Output currency for display"
},
"year": {
"type": "number",
"description": "Reporting year (e.g. 2024)"
}
},
"required": [
"mcc",
"spend_amount",
"currency",
"country"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢calculate_emissions_flight(origin, destination, passengers, cabin_class)
Calculate CO2e emissions for a flight
Input Schema
{
"type": "object",
"properties": {
"origin": {
"type": "string",
"description": "Origin IATA code (e.g. LHR) or latitude,longitude"
},
"destination": {
"type": "string",
"description": "Destination IATA code or UN/LOCODE"
},
"passengers": {
"type": "number",
"default": 1,
"description": "Number of passengers (default: 1)"
},
"cabin_class": {
"type": "string",
"description": "economy | premium_economy | business | first"
}
},
"required": [
"origin",
"destination"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢calculate_emissions_freight(weight_kg, origin, origin_lat, origin_lon, destination, ...)
Calculate CO2e emissions for freight transport (sea, road, rail, or air cargo). Supports single-leg and multi-leg intermodal journeys. Locations accept UN/LOCODE (e.g. 'GBSOU'), IATA airport code (e.g. 'LHR'), free-text name (e.g. 'Southampton'), or lat/lon coordinates. For multi-leg journeys provide a legs[] array — weight_kg is shared across all legs.
Input Schema
{
"type": "object",
"properties": {
"weight_kg": {
"type": "number",
"description": "Cargo weight in kilograms"
},
"origin": {
"type": "string",
"description": "Origin: UN/LOCODE (e.g. 'GBSOU'), IATA code (e.g. 'LHR'), or free-text name (e.g. 'Rotterdam')"
},
"origin_lat": {
"type": "number",
"description": "Origin latitude — alternative to origin string"
},
"origin_lon": {
"type": "number",
"description": "Origin longitude — alternative to origin string"
},
"destination": {
"type": "string",
"description": "Destination: UN/LOCODE, IATA code, or free-text name"
},
"destination_lat": {
"type": "number",
"description": "Destination latitude"
},
"destination_lon": {
"type": "number",
"description": "Destination longitude"
},
"mode": {
"type": "string",
"enum": [
"sea",
"road",
"rail",
"air"
],
"description": "Transport mode — required for single-leg"
},
"vehicle_type": {
"type": "string",
"description": "Vehicle type: sea: container|bulk|general|roro|vehicle_carrier|refrigerated|ropax|crude_tanker|product_tanker|chemical_tanker|lng_tanker|lpg_tanker — road: van — rail: freight_train — air: international|long_haul|short_haul|domestic"
},
"legs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"origin": {
"type": "string",
"description": "Leg origin: LOCODE, IATA, or free-text"
},
"origin_lat": {
"type": "number"
},
"origin_lon": {
"type": "number"
},
"destination": {
"type": "string",
"description": "Leg destination: LOCODE, IATA, or free-text"
},
"destination_lat": {
"type": "number"
},
"destination_lon": {
"type": "number"
},
"mode": {
"type": "string",
"enum": [
"sea",
"road",
"rail",
"air"
],
"description": "Transport mode for this leg"
},
"vehicle_type": {
"type": "string",
"description": "Vehicle type for this leg"
}
},
"required": [
"mode"
],
"additionalProperties": false
},
"description": "Multi-leg/intermodal: array of up to 10 legs. When provided, top-level origin/destination/mode are ignored."
}
},
"required": [
"weight_kg"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢calculate_emissions_activity(activity_type, quantity, country, year)
Calculate CO2e emissions for an activity (electricity, fuel combustion, materials, transport, etc.)
Input Schema
{
"type": "object",
"properties": {
"activity_type": {
"type": "string",
"description": "Activity type slug (e.g. electricity_generated_kwh, natural_gas_kwh)"
},
"quantity": {
"type": "number",
"description": "Activity quantity (positive, max 1,000,000)"
},
"country": {
"type": "string",
"default": "GB",
"description": "ISO 3166-1 alpha-2 country code"
},
"year": {
"type": "number",
"description": "Reporting year"
}
},
"required": [
"activity_type",
"quantity"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢calculate_emissions_activity_batch(calculations)
Calculate CO2e emissions for up to 100 activities in a single request. Each item is resolved in parallel. Items that fail validation or are not found return per-item errors without failing the whole batch.
Input Schema
{
"type": "object",
"properties": {
"calculations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Optional caller-assigned ID echoed back in results"
},
"activity_type": {
"type": "string",
"description": "Activity type slug"
},
"quantity": {
"type": "number",
"description": "Activity quantity (positive, max 1,000,000)"
},
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 country code (default: GLO)"
},
"year": {
"type": "number",
"description": "Reporting year"
}
},
"required": [
"activity_type",
"quantity"
],
"additionalProperties": false
},
"maxItems": 100,
"description": "Array of up to 100 activity calculations"
}
},
"required": [
"calculations"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢calculate_cbam_liability(cn_code, origin_country, weight_tonnes, year, actual_emissions_tco2e_per_t, ...)
Calculate CBAM (Carbon Border Adjustment Mechanism) embedded emissions and estimated EUR liability for an imported good. Covers Phase 1 sectors: cement, aluminium, iron & steel, fertilisers, hydrogen. Applies the year's phase-in rate (2.5% in 2026, ramping to 100% by 2032) and uses the live EU ETS price. The response gives TWO scenarios under cbam_obligation: 'without_own_mrv' (EU default values incl. a punitive mark-up — for exporters who have not verified their own emissions) and 'with_own_mrv' (verified actual emissions, no mark-up). Pass actual_emissions_tco2e_per_t (verified MRV figure) to populate the with_own_mrv scenario and the saving vs defaults; pass carbon_price_paid_eur_per_tonne to apply the Article 9 deduction (both scenarios) for carbon already priced at origin; pass project=true for a year-by-year forecast of both scenarios through 2034.
Input Schema
{
"type": "object",
"properties": {
"cn_code": {
"type": "string",
"description": "8-digit EU Combined Nomenclature code, e.g. '25231000' for cement clinkers"
},
"origin_country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 code of the manufacturing country, e.g. 'CN' for China"
},
"weight_tonnes": {
"type": "number",
"description": "Weight of the shipment in metric tonnes"
},
"year": {
"type": "number",
"description": "CBAM compliance year (2026-2050). Determines phase-in rate and mark-up tier."
},
"actual_emissions_tco2e_per_t": {
"type": "number",
"description": "Verified actual emission intensity (tCO2e per tonne). If provided, returns an optimization block comparing it against EU default values."
},
"carbon_price_paid_eur_per_tonne": {
"type": "number",
"description": "Carbon price already paid in the country of origin (EUR/tonne CO2e). Applies the Article 9 deduction."
},
"carbon_price_rebate_eur_per_tonne": {
"type": "number",
"description": "Rebate/compensation on the origin carbon price (EUR/tonne). Art. 9 requires the claim be net of rebates; deduction uses paid − rebate."
},
"project": {
"type": "boolean",
"description": "If true, includes a multi-year liability projection through 2034."
},
"ets_price_eur_per_tonne": {
"type": "number",
"description": "Override the live EU ETS carbon price (EUR/tonne CO2e)."
}
},
"required": [
"cn_code",
"origin_country",
"weight_tonnes"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢calculate_cbam_batch(shipments, year, ets_price_eur_per_tonne)
Calculate CBAM liability for up to 100 shipments in one request and return a portfolio-level summary (total embedded tCO2e, total certificates, total EUR liability). Ideal for pricing a whole shipment manifest or product catalogue. Per-item ok/not_covered/error — one bad item doesn't fail the batch. Each shipment supports actual_emissions_tco2e_per_t and carbon_price_paid_eur_per_tonne.
Input Schema
{
"type": "object",
"properties": {
"shipments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Optional caller-assigned ID echoed back in results"
},
"cn_code": {
"type": "string",
"description": "8-digit CN code"
},
"origin_country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 country code"
},
"weight_tonnes": {
"type": "number",
"description": "Weight in metric tonnes"
},
"year": {
"type": "number",
"description": "CBAM compliance year"
},
"actual_emissions_tco2e_per_t": {
"type": "number",
"description": "Verified actual emission intensity (tCO2e/t)"
},
"carbon_price_paid_eur_per_tonne": {
"type": "number",
"description": "Carbon price paid at origin (EUR/t) for Art. 9 deduction"
},
"carbon_price_rebate_eur_per_tonne": {
"type": "number",
"description": "Rebate on the origin carbon price (EUR/t); deduction uses paid − rebate"
}
},
"required": [
"cn_code",
"origin_country",
"weight_tonnes"
],
"additionalProperties": false
},
"maxItems": 100,
"description": "Array of up to 100 shipments"
},
"year": {
"type": "number",
"description": "Default compliance year applied to shipments without their own"
},
"ets_price_eur_per_tonne": {
"type": "number",
"description": "Override the live EU ETS price for the whole batch"
}
},
"required": [
"shipments"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢lookup_cbam_cn_codes(q, sector, cbam_only, limit)
Look up / search EU Combined Nomenclature (CN) codes for CBAM. Find the 8-digit code for a product, check whether it is currently subject to CBAM (cbam_phase1=true) and which sector, then pass the cn_code to calculate_cbam_liability.
Input Schema
{
"type": "object",
"properties": {
"q": {
"type": "string",
"description": "Search by code prefix or description, e.g. 'steel', 'cement', '7206'"
},
"sector": {
"type": "string",
"description": "Filter: cement | aluminium | iron_steel | fertilisers | hydrogen"
},
"cbam_only": {
"type": "boolean",
"description": "Default true (CBAM Phase 1 codes only). Pass false to search all 9,812 CN 2026 codes."
},
"limit": {
"type": "number",
"description": "Max results (default 100, max 1000)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢lookup_cbam_carbon_prices(country, type, status)
Look up the carbon price(s) in a country (World Bank Carbon Pricing Dashboard) as an INDICATIVE starting figure for the carbon_price_paid_eur_per_tonne input on calculate_cbam_liability. Returns instrument name, type (ETS/carbon tax), price in USD and indicative EUR, and year. Not the claimable Article 9 value — the importer must report the price actually paid on their goods with proof. A country with no result has no implemented carbon price (a common reason it is CBAM-exposed).
Input Schema
{
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 country code (or 'EU'), e.g. 'CN', 'KR', 'GB'"
},
"type": {
"type": "string",
"description": "Filter by instrument: 'ets' or 'carbon tax'"
},
"status": {
"type": "string",
"description": "Default 'implemented'; pass 'all' to include abolished schemes"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪lookup_emission_factors(country, mcc, naics, isic, sic, ...)
Look up emission factors by classification code (MCC, NAICS, ISIC, SIC, NACE, BEA) or activity type
Input Schema
{
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 country code"
},
"mcc": {
"type": "string",
"description": "4-digit MCC code"
},
"naics": {
"type": "string",
"description": "NAICS code (6 digits)"
},
"isic": {
"type": "string",
"description": "ISIC code (4 digits)"
},
"sic": {
"type": "string",
"description": "SIC code (2-5 digits)"
},
"nace": {
"type": "string",
"description": "NACE code"
},
"bea_code": {
"type": "string",
"description": "BEA code"
},
"activity_type": {
"type": "string",
"description": "Activity type slug"
},
"activity_quantity": {
"type": "number",
"description": "Activity quantity"
},
"activity_unit": {
"type": "string",
"description": "Activity unit"
},
"currency": {
"type": "string",
"description": "Currency for spend-based lookup"
}
},
"required": [
"country"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢list_activity_types(country, category)
List available activity types for emission calculations, optionally filtered by country or category
Input Schema
{
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "Filter by ISO country code (e.g. GB, DE, SG)"
},
"category": {
"type": "string",
"description": "Filter by category (e.g. energy, transport, materials, fuel_combustion)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Recommended Prompts
list_activity_typeslist_activity_typesCommunity
Evidence