Skip to main content
Glama
atmospore

Atmospore

Official
by atmospore

atmospore-mcp

MCP-Server für Atmospore. Ermöglicht es Claude (und anderen KI-Assistenten, die MCP unterstützen), Fragen zu Pollenvorhersagen an jedem Ort der Erde zu beantworten.

Was es tut

Fügt Claude vier Tools hinzu:

Tool

Verwendung

get_pollen(lat, lon, forecast_days)

"Wie ist die Pollenvorhersage in Oslo diese Woche?"

get_top_species(lat, lon, limit)

"Welche Pollenbelastung ist in Bergen gerade am höchsten?"

get_area_average(lat, lon, radius_km, forecast_days)

"Sind Baum- oder Gräserpollen in London diese Woche schlimmer?"

list_supported_species()

"Welche Arten decken Sie ab?"

Und eine Ressource:

  • atmospore://help — Nutzungshinweise, die von Claude Desktop aus durchsuchbar sind

Koordinaten funktionieren überall auf dem Planeten — das Modell bietet eine weltweite Abdeckung mit einer Auflösung von ca. 28 km.

Related MCP server: pollen-alert-mcp

Installation

pip install atmospore-mcp

Einrichtung in Claude Desktop

  1. Holen Sie sich einen kostenlosen Atmospore-API-Schlüssel unter atmospore.com/account (100 Abrufe/Tag, keine Kreditkarte erforderlich).

  2. Bearbeiten Sie Ihre Claude Desktop-Konfiguration:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

    • Windows: %APPDATA%/Claude/claude_desktop_config.json

  3. Fügen Sie Atmospore als MCP-Server hinzu:

{
  "mcpServers": {
    "atmospore": {
      "command": "atmospore-mcp",
      "env": {
        "ATMOSPORE_API_KEY": "ak_your_key_here"
      }
    }
  }
}
  1. Starten Sie Claude Desktop neu.

  2. Fragen Sie Claude: "Wie ist der Pollenflug heute in Oslo?" — es wird das Tool aufrufen und Ihnen berichten.

Beispiel-Prompts

  • "Wie ist die Pollenvorhersage für Oslo diese Woche?"

  • "Sind Baum- oder Gräserpollen in Stockholm gerade schlimmer?"

  • "Ich bin allergisch gegen Birke — wann erreicht der Birkenpollenflug in Bergen seinen Höhepunkt?"

  • "Vergleiche die Pollenbelastung in London und Kopenhagen heute."

Kontingente

Jeder Tool-Aufruf greift auf die Atmospore-API zu und wird auf das tägliche Kontingent Ihres Schlüssels angerechnet. Die kostenlose Stufe (100 Abrufe/Tag) deckt die gelegentliche Nutzung ab — typische Claude-Konversationen lösen 1–5 Tool-Aufrufe aus. Intensivnutzer (ca. 5+ Pollen-Konversationen/Tag) sollten den kostenpflichtigen Plan in Betracht ziehen.

Wenn Sie das Kontingent erreichen, gibt das Tool eine strukturierte quota_exceeded-Antwort zurück und Claude wird es Ihnen in einfacher Sprache mitteilen: "Sie haben Ihr tägliches Atmospore-Limit erreicht. Führen Sie ein Upgrade unter atmospore.com/plans durch."

Lokal entwickeln

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

Verwandtes

  • atmospore — der zugrunde liegende Python-Client, den dieser Server umschließt.

  • atmospore.com — die gehostete Vorhersage und das Entwickler-Dashboard.

Lizenz

MIT.

Available Tools

4 tools
get_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.

ParametersJSON Schema
NameRequiredDescriptionDefault
latYes
lonYes
radius_kmNo
forecast_daysNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters4/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
latYes
lonYes
forecast_daysNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
latYes
lonYes
limitNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.2/5.0
Behavior4/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. 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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

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.

Conciseness5/5

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.

Completeness5/5

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.

Parameters4/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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.

  1. 4 tool updatesv1.0.0
    • First observedget_area_average
    • First observedget_pollen
    • First observedget_top_species
    • First observedlist_supported_species

TDQS

A4.1/5.0

Scored across 4 tools

Disambiguation5/5

Each tool targets a distinct aspect: area aggregates, point forecasts, top species, and species listing. No overlap in functionality.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern using snake_case (get_area_average, get_pollen, get_top_species, list_supported_species).

Tool Count5/5

Four tools is well-scoped for a pollen data server, covering the core operations without being excessive or minimal.

Completeness4/5

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

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers