Atmospore
Officialatmospore-mcp
Atmospore를 위한 MCP 서버입니다. Claude(및 MCP를 지원하는 기타 AI 어시스턴트)가 지구상 어디에서나 꽃가루 예보에 대한 질문에 답할 수 있도록 합니다.
기능
Claude에 네 가지 도구를 추가합니다:
도구 | 용도 |
| "이번 주 오슬로의 꽃가루 예보는 어때?" |
| "지금 베르겐에서 가장 높은 꽃가루는 뭐야?" |
| "이번 주 런던에서 나무 꽃가루와 잔디 꽃가루 중 어느 것이 더 심해?" |
| "어떤 종을 다루나요?" |
그리고 하나의 리소스:
atmospore://help— Claude Desktop에서 탐색 가능한 사용 참고 사항
좌표는 지구 어디에서나 작동하며, 모델은 약 28km 해상도로 전 세계를 커버합니다.
Related MCP server: pollen-alert-mcp
설치
pip install atmospore-mcpClaude Desktop 설정
atmospore.com/account에서 무료 Atmospore API 키를 받으세요. (하루 100회 호출, 신용카드 불필요).
Claude Desktop 설정을 편집하세요:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%/Claude/claude_desktop_config.json
Atmospore를 MCP 서버로 추가하세요:
{
"mcpServers": {
"atmospore": {
"command": "atmospore-mcp",
"env": {
"ATMOSPORE_API_KEY": "ak_your_key_here"
}
}
}
}Claude Desktop을 재시작하세요.
Claude에게 "오늘 오슬로의 꽃가루는 어때?"라고 물어보세요. 도구를 호출하여 결과를 알려줄 것입니다.
예시 프롬프트
"이번 주 오슬로의 꽃가루 예보는 어때?"
"지금 스톡홀름에서 나무 꽃가루와 잔디 꽃가루 중 어느 것이 더 심해?"
"나는 자작나무 알레르기가 있어. 베르겐에서 자작나무 꽃가루가 언제 최고조에 달해?"
"오늘 런던과 코펜하겐의 꽃가루 수치를 비교해 줘."
할당량
각 도구 호출은 Atmospore API를 사용하며 키의 일일 할당량에서 차감됩니다. 무료 티어(하루 100회 호출)는 일반적인 사용량을 지원하며, 일반적인 Claude 대화는 1~5회의 도구 호출을 발생시킵니다. 헤비 유저(하루 약 5회 이상의 꽃가루 관련 대화)는 유료 플랜이 필요할 것입니다.
할당량을 초과하면 도구는 구조화된 quota_exceeded 응답을 반환하며, Claude는 평이한 언어로 다음과 같이 알려줍니다: "Atmospore 일일 한도에 도달했습니다. atmospore.com/plans에서 업그레이드하세요."
로컬 개발
git clone https://github.com/atmospore/atmospore-mcp
cd atmospore-mcp
pip install -e ".[test]"
pytest
ATMOSPORE_API_KEY=ak_... atmospore-mcp # runs the server on stdio관련 항목
atmospore — 이 서버가 래핑하는 기본 Python 클라이언트.
atmospore.com — 호스팅된 예보 및 개발자 대시보드.
라이선스
MIT.
Available Tools
4 toolsget_area_averageA
Get tree, grass, and weed pollen aggregates over a radius around a point.
Use this for higher-level questions like "is tree or grass pollen worse this week?" or "is pollen rising over the next few days in Stockholm?". Returns one entry per day with overall_risk and per-category aggregates (tree_tot, grass_tot, weed_tot).
radius_km (default 25) controls the area. forecast_days (default 7) sets the horizon.
| Name | Required | Description | Default |
|---|---|---|---|
| lat | Yes | ||
| lon | Yes | ||
| radius_km | No | ||
| forecast_days | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description lacks behavioral traits such as idempotency, side effects, or authentication needs. It only explains output structure and parameter defaults, which is minimal for a tool with no annotations.
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?
Three sentences, front-loaded with purpose, and every sentence adds value. No redundancy or fluff.
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?
Output schema exists (not shown) but description explains return structure adequately. Parameter coverage is sufficient for operation, though lacks error or behavior details.
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 has 0% description coverage, but description adds meaning by explaining radius_km controls the area and forecast_days sets the horizon. However, lat and lon are not explicitly described, though implied by context.
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 uses specific verb 'Get' and resource 'pollen aggregates over a radius' and distinguishes from siblings by framing it for higher-level questions, clearly indicating its focus on area aggregates over time.
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?
Description explicitly states when to use the tool with examples ('is tree or grass pollen worse this week?') and implies it is for area-based queries rather than point-specific data, but does not directly mention when not to use or compare to siblings like get_pollen.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pollenB
Get the daily pollen forecast for a specific point on Earth.
Use this for questions like "what's the pollen in Oslo?" or "is the pollen bad in Bergen tomorrow?".
Returns a list of daily forecasts. Each day includes:
date (YYYY-MM-DD)
overall_risk: "Low" | "Moderate" | "High" | "Very High"
species: per-species values in grains/m³ with individual risk levels
If the user asks about a city by name, look up its coordinates first
(or use the get_area_average tool with rough coords if you only know the city).
| Name | Required | Description | Default |
|---|---|---|---|
| lat | Yes | ||
| lon | Yes | ||
| forecast_days | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description mentions return structure (date, overall_risk, species) but does not disclose rate limits, auth requirements, or side effects. Adequate but not thorough.
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?
Well-structured with bullet points and examples. Front-loads purpose. Some minor redundancy, but overall efficient.
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?
Covers return format and usage hints. With output schema, return details are helpful but not essential. Lacks coordinate format, forecast_days limits, or error handling. Adequate for simple tool.
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%. Description does not explain lat, lon, or forecast_days beyond mentioning coordinates. No format or range information, adding minimal value.
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?
Clearly states it retrieves daily pollen forecast for a point on Earth. Distinguishes from sibling get_area_average by implying point-specific vs area, though not explicitly.
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 example questions and guidance on when to use this tool vs get_area_average for city names. Lacks explicit when-not-to-use, but context is good.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_top_speciesA
Get the top contributing pollen species at a specific point today.
Use this to answer "what pollen is highest in Oslo right now?" or "which trees are blooming in Bergen?". Returns a ranked list (highest first). Each species includes:
species (slug, e.g. 'birch')
display_name (human-readable, e.g. 'Birch')
max_value in grains/m³
risk_level
category ('tree' | 'grass' | 'weed')
limit (default 5) caps the list length.
| Name | Required | Description | Default |
|---|---|---|---|
| lat | Yes | ||
| lon | Yes | ||
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the output structure (species, display_name, max_value, risk_level, category) and time specificity (today). However, it lacks explicit mention of being read-only or non-destructive, though the read nature is implied.
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 concise: a lead sentence stating the purpose, followed by a short list of output fields and one additional note about the limit parameter. Every sentence earns its place.
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 tool's simplicity and the presence of an output schema, the description adequately explains the return values and default behavior. It could be improved by noting timezone or edge cases (e.g., no data), but is sufficient for correct usage.
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 the description must compensate. It explains the limit parameter's default and function, but provides no additional meaning for lat/lon beyond their names. This partially adds value but leaves a gap for the required coordinates.
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 'Get the top contributing pollen species at a specific point today,' specifying a verb, resource, location, and time. This distinguishes it from sibling tools like get_area_average (averages) and get_pollen (all species).
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 concrete usage examples ('what pollen is highest in Oslo right now?') and states it returns a ranked list. While it doesn't explicitly say when not to use, the context of sibling tools implies alternatives for different queries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_supported_speciesA
List all pollen species the model tracks, with metadata.
Use this if the user asks "what species do you cover?" or to validate a species name before using it in another tool. Returns slug, display name, category (tree/grass/weed), localised display names (en, no, sv), and concentration thresholds for the risk levels.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It details the return fields (slug, display name, category, localized names, concentration thresholds), but doesn't mention any potential side effects or performance characteristics. Adequate for a read-only list operation.
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?
Two sentences, front-loaded with action, each sentence adds value. No redundant information.
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?
With no parameters and an output schema present, the description fully explains the tool's purpose and return data. It also provides usage context, making it complete for a simple list tool.
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?
No parameters, so schema coverage is 100%. Baseline 4 applies as the description does not need to add parameter information.
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 'List all pollen species the model tracks', with a specific verb and resource. It distinguishes itself from siblings like get_pollen and get_area_average by focusing on the supported species list with metadata.
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 scenarios: 'Use this if the user asks "what species do you cover?" or to validate a species name before using it in another tool.' No mentions of when not to use, but for a list tool, this is sufficient.
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.
4 tool updates
v1.0.0- First observed
get_area_average - First observed
get_pollen - First observed
get_top_species - First observed
list_supported_species
TDQS
Scored across 4 tools
Each tool targets a distinct aspect: area aggregates, point forecasts, top species, and species listing. No overlap in functionality.
All tool names follow a consistent verb_noun pattern using snake_case (get_area_average, get_pollen, get_top_species, list_supported_species).
Four tools is well-scoped for a pollen data server, covering the core operations without being excessive or minimal.
The tools cover querying forecasts by point or area, top species, and species metadata. Minor gaps like historical data or multi-point queries are absent but acceptable for the domain.
Maintenance
Related MCP Connectors
Weather, climate, terrain, fire and flood risk data for any point or polygon on Earth. Free tier.
Free, keyless real-time air quality (US AQI plus PM2.5, PM10, ozone, NO2, SO2, CO) for any city.
Weather data, forecast API, climate data, historical weather, alerts, agricultural & travel weather.
Live stargazing forecasts: per-night sky scores, dark-sky sites, aurora & light pollution anywhere.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceWeather forecast server which returns 7 days of detailed weather anywhere in the world, using the OpenWeatherMap One Call API 3.0.10MIT
- FlicenseAqualityDmaintenanceProvides real-time pollen level alerts and hayfever mitigation tips using the Ambee API.2-
- AlicenseNot gradedqualityDmaintenanceProvides real-time weather data and multi-day forecasts for any location worldwide.33 npmMIT
- FlicenseNot gradedqualityCmaintenanceProvides global weather data (current conditions, forecasts, air quality) without requiring an API key.-