Skip to main content
Glama
jagan-shanmugam

Climatiq MCP Server

Climatiq MCP 서버

라이센스: MIT

탄소 배출량 계산을 위해 Climatiq API에 접근하기 위한 모델 컨텍스트 프로토콜(MCP) 서버입니다. 이를 통해 AI 비서가 실시간으로 탄소 배출량을 계산하고 기후 영향에 대한 통찰력을 제공할 수 있습니다.

데모

https://github.com/user-attachments/assets/c253d6d1-ccf6-4c14-965e-6023ba2a0296

https://github.com/user-attachments/assets/d61c1181-acf6-4d9f-9a48-537fc64ac4c3

Related MCP server: RL-MCP

특징

이 MCP 서버는 Climatiq API와 통합되어 AI 도우미에 대한 탄소 배출량 계산을 제공합니다.

도구

  • set-api-key : 인증에 사용되는 Climatiq API 키를 구성합니다.

  • 전기 배출량 : 전기 소비로 인한 탄소 배출량 계산

  • 여행 배출량 : 자동차, 비행기 또는 기차로 여행할 때 발생하는 탄소 배출량을 계산합니다.

  • 검색-배출-계수 : Climatiq 데이터베이스에서 특정 배출 계수를 검색합니다.

  • custom-emission-calculation : 특정 배출 계수를 사용하여 사용자 정의 계산 수행

  • 클라우드 컴퓨팅 배출량 : 클라우드 컴퓨팅 리소스 사용으로 인한 배출량 계산

  • freight-emission : 화물 운송으로 인한 배출량 계산

  • 조달-배출 : 조달 지출로 인한 배출량 계산

  • hotel-emission : 호텔 숙박으로 인한 배출량 계산

  • 여행 지출 : 여행 경비로 인한 배출량 계산

자원

  • 탄소 계산 결과는 climatiq://calculation/{id} URI 체계를 사용하여 리소스로 노출됩니다.

  • 각 리소스에는 배출 계수 및 계산 결과에 대한 자세한 정보가 포함되어 있습니다.

프롬프트

  • 기후 영향 설명 : 특정 배출량 계산의 기후 영향에 대한 자연어 설명을 생성합니다.

설치

출처에서

이 프로젝트에서는 가상 환경 및 종속성 관리를 위해 uv 사용합니다. 먼저 uv를 설치 하세요.

지엑스피1

uv를 사용하여

uv pip install climatiq-mcp-server

API 키 구성

서버가 작동하려면 Climatiq API 키가 필요합니다. API 키를 제공하는 방법은 다음과 같습니다.

  1. 환경 변수 : 서버를 시작하기 전에 CLIMATIQ_API_KEY 환경 변수를 설정하세요.

    export CLIMATIQ_API_KEY=your_climatiq_api_key
  2. 설치 중 구성 :

    CLIMATIQ_API_KEY=your_climatiq_api_key uv pip install climatiq-mcp-server
  3. set-api-key 도구 : AI 어시스턴트 내에서 런타임 중에 set-api-key 도구를 사용하여 구성합니다.

  4. 구성 파일 : 프로젝트 디렉토리에 .env 파일을 만듭니다.

    CLIMATIQ_API_KEY=your_climatiq_api_key

Climatiq API 키를 받으려면:

  1. app.climatiq.io 에 가입하세요

  2. API 키 가져오기 의 지침을 따르세요.

서버 실행

서버는 명령줄에서 직접 시작할 수 있습니다.

climatiq-mcp-server

AI Assistant 설정

클로드 데스크탑

MacOS의 경우: ~/Library/Application\ Support/Claude/claude_desktop_config.json Windows의 경우: %APPDATA%/Claude/claude_desktop_config.json

"mcpServers": {
  "climatiq-mcp-server": {
    "command": "climatiq-mcp-server",
    "env": {
      "CLIMATIQ_API_KEY": "your_climatiq_api_key"
    }
  }
}

예제 및 유틸리티

예제 디렉토리

examples/ 디렉토리에는 다음이 포함되어 있습니다.

  • climatiq.ipynb : Climatiq를 사용한 직접 API 사용을 보여주는 Jupyter 노트북

  • simple_test.py : MCP 프로토콜 없이 API 통합을 직접 테스트하기 위한 간단한 유틸리티

# Run the simple test
python examples/simple_test.py

유틸리티 스크립트

utils/ 디렉토리에는 여러 가지 유용한 스크립트가 포함되어 있습니다.

테스트 클라이언트

test_client.py 스크립트는 모든 도구, 프롬프트, 리소스를 테스트합니다.

python utils/test_client.py

LLM 예제 클라이언트

llm_example_client.py 스크립트는 대규모 언어 모델(예: Claude)이 Climatiq MCP 서버와 상호 작용하는 방법을 보여줍니다.

python utils/llm_example_client.py

주요 특징:

  • 오류 처리 및 시간 초과 관리 기능을 갖춘 완전한 API 래퍼

  • 계산 내역을 보존하기 위한 리소스 및 결과 캐싱

  • 자연어 설명을 생성하는 방법을 보여주는 예시 프롬프트

  • 전기방출, 이동방출, 배출계수 검색 기능을 시연합니다.

CLI 도구

MCP 서버의 복잡성 없이 직접 API에 액세스할 수 있는 명령줄 인터페이스 도구:

# For electricity emissions
python utils/climatiq_cli.py electricity --energy 1000 --unit kWh --region US

# For travel emissions
python utils/climatiq_cli.py travel --mode car --distance 100 --unit km --region US

MCP 서버 스크립트 실행

run_mcp_server.py 스크립트를 사용하면 설치하지 않고도 서버를 직접 실행할 수 있습니다.

python utils/run_mcp_server.py

핵심 개념

활동 ID

활동 ID는 Climatiq API의 핵심 개념으로, 유사한 배출 요소를 함께 그룹화합니다.

  • Climatiq 데이터베이스의 각 배출 요인에는 활동 ID가 있습니다.

  • 활동 ID는 동일한 활동을 여러 지역, 연도, 출처 등에 걸쳐 설명하는 배출 요소를 그룹화합니다.

  • 예: electricity-supply_grid-source_residual_mix (전기), passenger_vehicle-vehicle_type_car (자동차 여행)

계산 방법

Climatiq MCP 서버는 여러 가지 계산 방법을 지원합니다.

  1. 이동 배출량에 대한 거리 기반 방법

  2. 출발지-목적지 쌍을 사용한 고급 여행 계산

  3. 지출 데이터만 있는 경우 지출 기반 방식

  4. 특정 배출 계수를 사용한 직접 계산

문제 해결

API 키 문제

  1. 환경 또는 .env 파일에서 CLIMATIQ_API_KEY 올바르게 설정되었는지 확인하세요.

  2. Climatiq 대시보드에서 API 키가 활성화되어 있는지 확인하세요.

  3. API 키가 올바르게 작동하는지 확인하려면 examples/simple_test.py 사용하세요.

고급 사용법

특정 도구와 고급 기능의 사용에 대한 자세한 내용은 docs/README.md 파일을 참조하세요.

클리마틱 소개

Climatiq은 탄소 인텔리전스를 위한 강력한 API를 제공하여 전기 사용, 운송, 조달 등에서 발생하는 배출량을 계산할 수 있도록 지원합니다. 이 MCP 서버는 모델 컨텍스트 프로토콜을 통해 AI 어시스턴트가 이러한 기능을 사용할 수 있도록 지원합니다.

Climatiq에 대한 자세한 내용은 climatiq.io에서 확인하세요.

특허

이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여되었습니다. 자세한 내용은 라이선스 파일을 참조하세요.

Available Tools

10 tools
cloud-computing-emissionC

Calculate emissions from cloud computing services by provider, service type, and region to assess digital carbon footprint.

ParametersJSON Schema
NameRequiredDescriptionDefault
providerYesCloud provider (aws, azure, gcp)
serviceYesCloud service (e.g., compute, storage, database)
regionYesCloud region (e.g., us-east-1, europe-west1)
usage_amountYesAmount of cloud resources used
usage_unitYesUnit for cloud resource (e.g., kWh, GB-hours, CPU-hours)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It describes the calculation function but lacks details on permissions, rate limits, error handling, or output format. For a tool with 5 required parameters and no output schema, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose without unnecessary details. Every word contributes to explaining the tool's function, making it appropriately sized and well-structured for quick understanding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a 5-parameter tool with no annotations and no output schema, the description is incomplete. It fails to explain return values, error conditions, or behavioral traits, leaving the agent with insufficient information to effectively invoke the tool beyond basic parameter input.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, clearly documenting all 5 parameters. The description adds minimal value beyond the schema by listing provider, service type, and region as key inputs, but it does not provide additional context like valid examples or constraints, so it meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with a specific verb ('calculate') and resource ('emissions from cloud computing services'), and it mentions key parameters (provider, service type, region) to assess digital carbon footprint. However, it does not explicitly differentiate from sibling tools like 'custom-emission-calculation' or 'search-emission-factors', which might handle similar emission calculations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It mentions assessing digital carbon footprint but does not specify scenarios, prerequisites, or exclusions compared to sibling tools such as 'electricity-emission' or 'procurement-emission', leaving the agent without clear usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

custom-emission-calculationB

Calculate emissions using any specific emission factor identified by its activity_id, allowing for precise and flexible carbon calculations.

ParametersJSON Schema
NameRequiredDescriptionDefault
activity_idYesEmission factor activity ID (found via search-emission-factors)
valueYesActivity value (amount of the activity)
unitYesActivity unit (e.g., kWh, km, kg, etc.)

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. While it states the tool calculates emissions, it doesn't describe what the calculation returns (units, format), whether it requires authentication (though set-api-key is a sibling), rate limits, error conditions, or how it handles invalid inputs. For a calculation tool with zero annotation coverage, this leaves significant behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that conveys the core purpose without unnecessary words. It's front-loaded with the main action ('Calculate emissions') and includes a qualifying phrase about flexibility. However, it could be slightly more structured by explicitly separating purpose from context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and a calculation tool with potential complexity, the description is incomplete. It doesn't explain what the tool returns (e.g., emissions in CO2e, units), prerequisites (e.g., needing an API key via set-api-key), or error handling. The schema covers inputs well, but the overall context for agent usage is lacking.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with all three parameters well-documented in the schema. The description adds minimal value beyond the schema, mentioning 'activity_id' and 'carbon calculations' but not explaining parameter relationships or providing additional context like example values or constraints. Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Calculate emissions using any specific emission factor identified by its activity_id'. It specifies the verb ('calculate'), resource ('emissions'), and mechanism ('using emission factor identified by activity_id'). However, it doesn't explicitly distinguish this general-purpose calculation tool from its more specific sibling tools like 'electricity-emission' or 'travel-emission'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context through 'allowing for precise and flexible carbon calculations' and references 'activity_id (found via search-emission-factors)' in the schema. This suggests this tool is for custom calculations after finding factors via search-emission-factors, but it doesn't explicitly state when to use this vs. the specialized sibling tools (e.g., electricity-emission for electricity-specific calculations).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

electricity-emissionC

Calculate carbon emissions from electricity consumption based on energy amount and regional grid mix.

ParametersJSON Schema
NameRequiredDescriptionDefault
energyYesAmount of energy consumed
energy_unitYesEnergy unit (kWh, MWh, etc.)
regionNoRegion code (e.g., US, GB, FR) representing the electricity grid locationUS

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the calculation action but lacks details on permissions, rate limits, error handling, or output format. For a tool with no annotation coverage, this leaves significant gaps in understanding its operational traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose without unnecessary words. Every part of the sentence contributes directly to explaining what the tool does, making it highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of an emission calculation tool with no annotations and no output schema, the description is incomplete. It doesn't explain the return values, error conditions, or behavioral aspects like data sources or accuracy, which are crucial for proper usage in this context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters (energy, energy_unit, region) with descriptions. The description adds marginal value by mentioning 'energy amount and regional grid mix', which aligns with the parameters but doesn't provide additional syntax or format details beyond what the schema offers.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with a specific verb ('calculate') and resource ('carbon emissions from electricity consumption'), and it mentions the key inputs ('energy amount and regional grid mix'). However, it doesn't explicitly differentiate from sibling tools like 'custom-emission-calculation' or 'search-emission-factors', which might handle similar calculations differently.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to choose it over sibling tools such as 'custom-emission-calculation' for broader scenarios or 'search-emission-factors' for looking up data, nor does it specify prerequisites or exclusions for usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

freight-emissionC

Calculate emissions from freight transportation across different modes (truck, rail, ship, air) based on weight and distance.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesFreight mode (truck, rail, ship, air)
weightYesWeight of goods transported
weight_unitNoWeight unit (t, kg)t
distanceYesDistance transported
distance_unitNoDistance unit (km, mi)km

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states what the tool does (calculates emissions) but doesn't describe behavioral traits like whether it's a read-only calculation, what units the output uses, error conditions, or any rate limits. For a calculation tool with zero annotation coverage, this leaves significant gaps in understanding how it behaves.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that states the core purpose upfront. There's no wasted language or unnecessary elaboration. However, it could be slightly more structured by separating purpose from scope or adding a brief note about output.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a calculation tool with 5 parameters, no annotations, and no output schema, the description is insufficiently complete. It doesn't explain what the output represents (e.g., CO2 equivalent, units), whether it uses specific emission factors, or how the calculation is performed. The lack of output schema means the description should ideally cover return values, which it doesn't.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 5 parameters thoroughly. The description mentions 'based on weight and distance' which aligns with the schema but adds no additional semantic meaning beyond what's in the parameter descriptions. It doesn't explain relationships between parameters or calculation methodology.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Calculate emissions from freight transportation' with specific resources (freight transportation) and modes (truck, rail, ship, air). It distinguishes from some siblings like 'electricity-emission' or 'hotel-emission' by focusing on freight, but doesn't explicitly differentiate from 'travel-emission' which might also involve transportation. The verb 'calculate' is specific and actionable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'custom-emission-calculation' or 'search-emission-factors' that might be relevant for emission calculations. There's no context about prerequisites, limitations, or scenarios where this tool is preferred over others in the server.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

hotel-emissionB

Calculate carbon emissions from hotel stays based on the number of nights stayed and the location of the hotel.

ParametersJSON Schema
NameRequiredDescriptionDefault
hotel_nightsYesNumber of nights stayed
locationYesLocation of the hotel
yearNoYear of the hotel stay

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the calculation purpose but lacks details on what the calculation returns (units, format), whether it's an estimate or exact, data sources, accuracy limitations, or error handling. For a calculation tool with zero annotation coverage, this is a significant gap in behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose and key parameters without any wasted words. Every element earns its place, making it appropriately sized and well-structured for quick understanding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of an emission calculation tool with no annotations and no output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., CO2 equivalent in kg), how results are derived, or any assumptions/limitations. For a tool that likely involves environmental data and calculations, this leaves significant gaps for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all three parameters thoroughly. The description adds minimal value by mentioning nights and location as key inputs, but doesn't provide additional syntax, format details, or constraints beyond what the schema provides. The baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('calculate carbon emissions') and resource ('from hotel stays'), with explicit parameters ('based on the number of nights stayed and the location of the hotel'). It distinguishes from sibling tools like 'travel-emission' or 'electricity-emission' by focusing specifically on hotel stays.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context through its parameter focus (nights and location), but does not explicitly state when to use this tool versus alternatives like 'travel-emission' or 'custom-emission-calculation'. No exclusions or prerequisites are mentioned, leaving usage guidance at an implied level.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

procurement-emissionB

Calculate Scope 3.1 emissions from procurement spending using economic input-output life cycle assessment methods.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYesAmount of money spent
currencyNoCurrency code (e.g., USD, EUR, GBP)USD
countryNoCountry code where purchases were madeUS
categoryYesProcurement category (e.g., electronics, food, construction)

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. While it explains the calculation method, it doesn't describe what the tool returns (emissions in what units?), whether it makes external API calls, error handling, or performance characteristics. For an emission calculation tool with zero annotation coverage, this leaves significant behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that communicates the core purpose without any wasted words. It's appropriately sized for the tool's complexity and gets straight to the point.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a calculation tool with no annotations and no output schema, the description is insufficient. It doesn't explain what the tool returns (emissions values, units, confidence intervals), how results should be interpreted, or any limitations of the economic input-output method. Given the complexity of emission calculations, more context is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% description coverage, so all parameters are documented in the schema itself. The description adds no additional parameter information beyond what's already in the schema descriptions. This meets the baseline of 3 when schema coverage is complete.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Calculate'), the target ('Scope 3.1 emissions from procurement spending'), and the method ('using economic input-output life cycle assessment methods'). It distinguishes this tool from siblings like 'electricity-emission' or 'freight-emission' by focusing specifically on procurement emissions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'custom-emission-calculation' or 'search-emission-factors'. It doesn't mention prerequisites, limitations, or typical use cases beyond the basic purpose.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search-emission-factorsB

Search Climatiq's database for emission factors by keyword, category, region, year, source, and other metadata to find appropriate factors for calculations.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSearch query for emission factors (e.g., 'electricity', 'flight', 'truck')
categoryNoCategory of emission factors (e.g., 'Energy', 'Transport')
regionNoRegion code to filter results (e.g., 'US', 'EU')
yearNoYear of emission factors
sourceNoSource organization of emission factors (e.g., 'IPCC', 'EPA', 'BEIS')
data_versionNoData version of emission factors
unit_typeNoUnit type of emission factors (e.g., 'energy', 'distance', 'weight')

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It describes the search functionality but lacks behavioral details: it doesn't mention whether this is a read-only operation, how results are returned (e.g., pagination, format), rate limits, authentication requirements, or error handling. For a search tool with 7 parameters and no annotation coverage, this leaves significant gaps in understanding how the tool behaves.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose. It avoids redundancy by not repeating schema details. However, it could be slightly more structured by separating the action from the goal (e.g., 'Search for emission factors... Use this to...'), but overall it's concise and well-focused.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (7 parameters, no annotations, no output schema), the description is adequate but incomplete. It covers the basic purpose and parameters but lacks behavioral transparency and clear usage differentiation from siblings. Without an output schema, it doesn't describe return values, which is a gap for a search tool. It meets minimum viability but has clear room for improvement.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with all 7 parameters well-documented in the schema. The description adds minimal value beyond the schema by listing the same parameters (keyword, category, region, year, source, other metadata) without providing additional context like examples beyond 'query' or explaining interactions between parameters. This meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Search Climatiq's database for emission factors by keyword, category, region, year, source, and other metadata to find appropriate factors for calculations.' It specifies the action (search), resource (emission factors database), and scope (by various metadata). However, it doesn't explicitly distinguish this general search tool from the more specific sibling tools like 'electricity-emission' or 'travel-emission' that appear to target specific domains.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context through 'to find appropriate factors for calculations,' suggesting this is for discovery before calculation. However, it provides no explicit guidance on when to use this tool versus the more specific sibling tools (e.g., 'electricity-emission' for electricity-related factors), nor does it mention prerequisites like API key setup (though 'set-api-key' exists as a sibling). The guidance is present but incomplete.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set-api-keyA

Set the Climatiq API key for authentication. This allows the server to make authorized requests to the Climatiq API.

ParametersJSON Schema
NameRequiredDescriptionDefault
api_keyYesYour Climatiq API key obtained from app.climatiq.io

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly indicates this is a configuration/mutation tool (setting an API key) and explains the authentication purpose. However, it doesn't address important behavioral aspects like whether this persists across sessions, if it overwrites existing keys, what happens on failure, or any rate limits/security implications.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description consists of two focused sentences that directly address the tool's purpose and usage. Every word earns its place with zero redundancy or fluff. The information is front-loaded and efficiently structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter authentication tool with no annotations and no output schema, the description provides adequate basic context about what the tool does and why. However, it lacks details about behavioral consequences (persistence, error handling) and doesn't explain what 'success' looks like since there's no output schema to document return values.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with the single parameter 'api_key' well-documented in the schema itself. The description doesn't add any additional parameter semantics beyond what the schema already provides (it mentions 'API key' but doesn't elaborate on format, validation, or source requirements). This meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Set') and resource ('Climatiq API key for authentication'), with the explicit purpose of enabling authorized API requests. It distinguishes this from sibling tools that perform emission calculations or searches, making it immediately clear this is an authentication configuration tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states when to use this tool: 'for authentication' and 'to make authorized requests to the Climatiq API.' It implies this should be used before calling other emission calculation tools that require authentication, providing clear contextual guidance without needing to list specific alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

travel-emissionC

Calculate emissions from passenger travel via car, plane, or train, with options for vehicle types and passenger count.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesTravel mode (car, plane, train)
distanceNoDistance traveled (optional if origin and destination are provided)
distance_unitNoDistance unit (km, mi)km
passengersNoNumber of passengers (for car travel)
vehicle_typeNoFor car: small/medium/large; For plane: short/medium/long-haul/domestic/international; For train: electric/dieselmedium
fuel_typeNoFor car: regular/electric/hybridregular
originNoOrigin location for travel API (allows automatic distance calculation)
destinationNoDestination location for travel API (allows automatic distance calculation)
yearNoYear of travel for more accurate emission factors
car_detailsNoDetailed car specifications for more accurate calculations
air_detailsNoDetailed flight specifications for more accurate calculations

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states what the tool does (calculates emissions) but doesn't describe important behavioral aspects: whether this is a read-only calculation or has side effects, what the output format looks like, whether it requires authentication (like 'set-api-key' sibling suggests), or any rate limits. The description is minimal and lacks operational context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that states the core purpose and key features without waste. It's appropriately sized for a calculation tool and front-loads the essential information. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex tool with 11 parameters, nested objects, no annotations, and no output schema, the description is insufficient. It doesn't explain what the tool returns, how results are formatted, whether calculations are real-time or cached, or how it integrates with sibling tools like 'set-api-key'. The description leaves too many operational questions unanswered given the tool's complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 11 parameters thoroughly. The description adds minimal value beyond the schema - it mentions 'options for vehicle types and passenger count' which are covered in the schema, but doesn't provide additional context about parameter interactions or usage patterns. Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Calculate emissions from passenger travel via car, plane, or train' - a specific verb (calculate) with resource (emissions) and scope (passenger travel). It distinguishes from siblings like 'freight-emission' and 'hotel-emission' by focusing on passenger travel, though it doesn't explicitly differentiate from 'travel-spend' which might be related.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It mentions 'options for vehicle types and passenger count' but doesn't specify when to choose this over sibling tools like 'custom-emission-calculation' or 'search-emission-factors', nor does it mention prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

travel-spendC

Calculate carbon emissions from travel-related spending based on spend type, amount, currency, location, and year.

ParametersJSON Schema
NameRequiredDescriptionDefault
spend_typeYesType of travel spending (air, road, rail, sea, hotel)
moneyYesAmount of money spent
money_unitYesCurrency unit for the spent money
spend_locationYesLocation of the travel spending
spend_yearNoYear of the travel spending

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It describes what the tool does (calculation) but doesn't mention important behavioral aspects: whether it's a read-only operation, what format the output takes, whether it requires authentication (like 'set-api-key'), accuracy limitations, or rate limits. For a calculation tool with zero annotation coverage, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose. It lists all parameters without unnecessary elaboration. While it could potentially be more structured, every word serves a purpose and there's no wasted text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a calculation tool with 5 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain what the tool returns (emissions in what units?), how accurate the calculation is, what data sources are used, or whether authentication is required despite 'set-api-key' being a sibling tool. The agent lacks crucial context for proper tool invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 5 parameters thoroughly. The description lists the same parameters ('spend type, amount, currency, location, and year') but doesn't add meaningful semantic context beyond what's in the schema descriptions. It doesn't explain how these parameters interact or affect the calculation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Calculate carbon emissions from travel-related spending' with specific parameters listed. It uses a clear verb ('calculate') and identifies the resource ('carbon emissions'), but doesn't explicitly differentiate from sibling tools like 'travel-emission' or 'hotel-emission' which might have overlapping functionality.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool versus alternatives. The description lists parameters but doesn't indicate prerequisites, appropriate contexts, or when to choose this over sibling tools like 'travel-emission' or 'custom-emission-calculation'. The agent must infer usage from the parameter list alone.

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.

  1. 10 tool updates
    • First observedcloud-computing-emission
    • First observedcustom-emission-calculation
    • First observedelectricity-emission
    • First observedfreight-emission
    • First observedhotel-emission
    • First observedprocurement-emission
    • First observedsearch-emission-factors
    • First observedset-api-key
    • First observedtravel-emission
    • First observedtravel-spend

TDQS

A3.7/5.0

Scored across 10 tools

Disambiguation5/5

Each tool has a clearly distinct purpose targeting specific domains like cloud computing, electricity, freight, hotel stays, procurement, travel, and emission factor search. There is no overlap in functionality, and the descriptions precisely differentiate each tool's scope, making misselection unlikely.

Naming Consistency5/5

All tool names follow a consistent hyphenated pattern with a clear noun-emission or action-emission structure (e.g., cloud-computing-emission, search-emission-factors, set-api-key). This uniformity enhances readability and predictability across the tool set.

Tool Count5/5

With 10 tools, the server is well-scoped for carbon emission calculations across various domains. Each tool earns its place by covering distinct aspects like transportation, energy, procurement, and authentication, providing a comprehensive yet manageable surface for the Climatiq API.

Completeness5/5

The tool set offers complete coverage for carbon emission calculations, including key domains (electricity, travel, freight, procurement), a search tool for emission factors, a custom calculation option, and authentication via set-api-key. There are no obvious gaps, enabling agents to handle full workflows from data lookup to emission assessment.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers