Atmospore Pollen Forecasts

Atmospore is an Oslo-based provider of AI-driven global pollen and allergy forecasting. Its model combines GFS weather data with ground-truth observations from professional aerobiology networks to produce species-level forecasts on a ~28 km global grid, covering 25 individual tree, grass and weed species with multilingual metadata (English, Norwegian, Swedish) and published concentration thresholds for low/moderate/high/very-high risk. The surface is delivered three ways: a four-operation REST API at pollenapi.com with a live OpenAPI 3.0.3 contract, a hosted Model Context Protocol server at mcp.atmospore.com exposing the same capability as four agent tools, and a keyless embeddable iframe widget that consumes no API quota. Point forecasts, area averages with min/max across a radius, and severity-ranked top species are all available up to 14 days ahead; species metadata is served unauthenticated.

Atmospore Pollen Forecasts publishes 4 APIs on the APIs.io network, including Pollen API, Pollen Area API, Pollen Top API, and 1 more. Tagged areas include weather, pollen, allergy, environmental-data, and health.

Atmospore Pollen Forecasts’ developer surface includes documentation, API reference, support, pricing, signup flow, authentication, sandbox, and 27 more developer resources.

53.5/100 developing ▬ flat Agent 49/100 agent ready Full breakdown ↓
scored 2026-08-12 · rubric v0.11.0
5 APIs 1 MCP Servers
weatherpollenallergyenvironmental-datahealthgeospatialforecastingsmart-homemcpopenapinorwayclimate

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-08-12 · rubric v0.11.0
Composite quality — 53.5/100 · developing
Contract Quality 13.0 / 21
Developer Ergonomics 10.6 / 17
Commercial Clarity 13.0 / 17
Operational Transparency 4.1 / 11
Governance 1.2 / 10
Discoverability 6.9 / 9
Regulatory Posture 4.7 / 15
Agent readiness — 49/100 · agent ready
Machine-Readable Contract 18 / 18
Agentic Access Contract 10 / 10
MCP Server 12 / 12
Machine-Readable Auth 10 / 10
Idempotency 0 / 9
Stable Error Semantics 8 / 8
Request/Response Examples 7 / 7
Rate-Limit Signaling 7 / 7
Typed Event Surface 0 / 6
Agent Skills 5 / 5
Well-Known Catalog 0 / 4
Consent & Bot Identity 0 / 3
A2A Agent Card 0 / 8
Dry-Run / Simulate Mode 0 / 4
Regulatory Posture applies to this provider. Its tags matched the Health regime, so Regulatory Posture carries 15 points of the composite. If this regime is wrong for your business, say so on your provider repo — the applicability map is public and we will correct it.
The six quality facets above are damped to 85 points between them, because the conditional facet above carries the other 15. That is why each facet's contribution is shown against a damped maximum: raising a quality facet moves the composite by 85% of its nominal weight, not 100%. The full arithmetic is at apis.io/rating/.
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. This rating is computed from github.com/api-evangelist/atmospore-pollen-forecasts: open an issue to ask a question, or submit a pull request to add artifacts. Want it done for you? Prioritized profiling — $2,500 →

APIs 5

Individual APIs this provider publishes, each with its own machine-readable definition.

Atmospore MCP Server

Hosted Model Context Protocol server exposing the Atmospore pollen forecast capability as four agent tools (get_pollen, get_top_species, get_area_average, list_supported_species...

Atmospore Pollen Forecasts Pollen API

The Pollen API from Atmospore Pollen Forecasts — 1 operation(s) for pollen.

Atmospore Pollen Forecasts Pollen Area API

The Pollen Area API from Atmospore Pollen Forecasts — 1 operation(s) for pollen area.

Atmospore Pollen Forecasts Pollen Top API

The Pollen Top API from Atmospore Pollen Forecasts — 1 operation(s) for pollen top.

Atmospore Pollen Forecasts Species API

The Species API from Atmospore Pollen Forecasts — 1 operation(s) for species.

Arazzo Workflows 2

Multi-step API workflows described with the Arazzo specification.

Plan an allergy week for a location

Resolve the Atmospore species catalogue, rank the worst allergens for the coming week at a coordinate, then pull the day-by-day forecast for the species the user actually reacts...

ARAZZO

Build a regional pollen risk board

Resolve the species catalogue, then read tree/grass/weed aggregates across a radius for a regional dashboard or a smart-home ventilation rule. Every operationId exists verbatim ...

ARAZZO

MCP Servers 1

Model Context Protocol servers that expose these APIs to AI agents.

Pricing Plans 1

Published pricing tiers and plan structures.

Rate Limits 1

Documented rate limits and quota policies.

Examples 3

Example request and response payloads for these APIs.

Security Posture 2

Authentication, domain security, vulnerability disclosure, and trust-center signals.

Atmospore Pollen Forecasts Authentication

apiKey · 2 schemes

SECURITY

Agentic Access 1

Recommended x-agentic-access execution contracts for AI agents.

Atmospore Pollen Forecasts Agentic Access

4 operations

4 operations · 0 acting

AGENTIC

Resources

Get Started 4

Portal, sign-up, and the first successful call

Documentation 2

Reference material describing how the API behaves

Agent Surfaces 4

MCP servers, agent skills, and machine-readable catalogs

Design & Contract 8

Pagination, idempotency, versioning, errors, and events

Scroll for all 8

Build 4

SDKs, sample code, and the tooling you integrate with

Access & Security 2

Authentication, authorization, and security posture

Operate 3

Status, limits, changes, and where to get help

Commercial 5

Pricing, plans, and the legal terms of use

Company 1

The organization behind the API

Other 1

Properties that don't map to a standard resource type

Source (apis.yml)

apis.yml Raw ↑
name: Atmospore Pollen Forecasts
description: 'Atmospore is an Oslo-based provider of AI-driven global pollen and allergy forecasting. Its model combines GFS
  weather data with ground-truth observations from professional aerobiology networks to produce species-level forecasts on
  a ~28 km global grid, covering 25 individual tree, grass and weed species with multilingual metadata (English, Norwegian,
  Swedish) and published concentration thresholds for low/moderate/high/very-high risk. The surface is delivered three ways:
  a four-operation REST API at pollenapi.com with a live OpenAPI 3.0.3 contract, a hosted Model Context Protocol server at
  mcp.atmospore.com exposing the same capability as four agent tools, and a keyless embeddable iframe widget that consumes
  no API quota. Point forecasts, area averages with min/max across a radius, and severity-ranked top species are all available
  up to 14 days ahead; species metadata is served unauthenticated.'
image: https://atmospore.com/images/logo-bg.png
url: https://atmospore-pollen-forecasts.apievangelist.com/apis.yml
created: '2026-08-03'
modified: '2026-08-09'
specificationVersion: '0.21'
tags:
- weather
- pollen
- allergy
- environmental-data
- health
- geospatial
- forecasting
- smart-home
- mcp
- openapi
- norway
- climate
apis:
- name: Atmospore MCP Server
  description: Hosted Model Context Protocol server exposing the Atmospore pollen forecast capability as four agent tools
    (get_pollen, get_top_species, get_area_average, list_supported_species) plus an atmospore://help resource. JSON-RPC 2.0
    over HTTP, authenticated with the same Atmospore API key as the REST API. An MIT-licensed local stdio equivalent is published
    at github.com/atmospore/atmospore-mcp.
  humanURL: https://atmospore.com/article/mcp
  baseURL: https://mcp.atmospore.com/mcp
  tags:
  - mcp
  - agents
  - pollen
  - allergy
  - forecasting
  properties:
  - type: ToolCrosswalk
    url: mcp/atmospore-pollen-forecasts-tool-crosswalk.yml
  - type: SourceCode
    url: https://github.com/atmospore/atmospore-mcp
  - type: Documentation
    url: https://atmospore.com/article/mcp
- aid: atmospore-pollen-forecasts:atmospore-pollen-forecasts-pollen-api
  name: Atmospore Pollen Forecasts Pollen API
  description: The Pollen API from Atmospore Pollen Forecasts — 1 operation(s) for pollen.
  humanURL: https://atmospore.com/api-docs
  baseURL: https://pollenapi.com
  tags:
  - Pollen
  properties:
  - type: OpenAPI
    url: openapi/atmospore-pollen-forecasts-pollen-api-openapi.yml
  - type: Documentation
    url: https://atmospore.com/api-docs
  - type: APIReference
    url: https://atmospore.com/api-docs
  - type: DeveloperPortal
    url: https://atmospore.com/api-docs
- aid: atmospore-pollen-forecasts:atmospore-pollen-forecasts-pollen-area-api
  name: Atmospore Pollen Forecasts Pollen Area API
  description: The Pollen Area API from Atmospore Pollen Forecasts — 1 operation(s) for pollen area.
  humanURL: https://atmospore.com/api-docs
  baseURL: https://pollenapi.com
  tags:
  - Pollen Area
  properties:
  - type: OpenAPI
    url: openapi/atmospore-pollen-forecasts-pollen-area-api-openapi.yml
  - type: Documentation
    url: https://atmospore.com/api-docs
  - type: APIReference
    url: https://atmospore.com/api-docs
  - type: DeveloperPortal
    url: https://atmospore.com/api-docs
- aid: atmospore-pollen-forecasts:atmospore-pollen-forecasts-pollen-top-api
  name: Atmospore Pollen Forecasts Pollen Top API
  description: The Pollen Top API from Atmospore Pollen Forecasts — 1 operation(s) for pollen top.
  humanURL: https://atmospore.com/api-docs
  baseURL: https://pollenapi.com
  tags:
  - Pollen Top
  properties:
  - type: OpenAPI
    url: openapi/atmospore-pollen-forecasts-pollen-top-api-openapi.yml
  - type: Documentation
    url: https://atmospore.com/api-docs
  - type: APIReference
    url: https://atmospore.com/api-docs
  - type: DeveloperPortal
    url: https://atmospore.com/api-docs
- aid: atmospore-pollen-forecasts:atmospore-pollen-forecasts-species-api
  name: Atmospore Pollen Forecasts Species API
  description: The Species API from Atmospore Pollen Forecasts — 1 operation(s) for species.
  humanURL: https://atmospore.com/api-docs
  baseURL: https://pollenapi.com
  tags:
  - Species
  properties:
  - type: OpenAPI
    url: openapi/atmospore-pollen-forecasts-species-api-openapi.yml
  - type: Documentation
    url: https://atmospore.com/api-docs
  - type: APIReference
    url: https://atmospore.com/api-docs
  - type: DeveloperPortal
    url: https://atmospore.com/api-docs
maintainers:
- FN: Atmospore Pollen Forecasts
  url: https://atmospore.com/
  email: support@atmospore.com
common:
- type: IssueTracker
  url: https://github.com/atmospore/atmospore-mcp/issues
- type: License
  name: MIT
  url: https://github.com/atmospore/atmospore-mcp/blob/main/LICENSE
- type: Website
  url: https://atmospore.com/
- type: DeveloperPortal
  url: https://atmospore.com/api-docs
- type: Documentation
  url: https://atmospore.com/api-docs
- type: APIReference
  url: https://atmospore.com/api-docs
- type: Support
  url: https://atmospore.com/contact
- type: GitHubOrganization
  url: https://github.com/atmospore
- type: Pricing
  url: https://atmospore.com/plans
- type: Signup
  url: https://atmospore.com/register
- type: Login
  url: https://atmospore.com/login
- type: TermsOfService
  url: https://atmospore.com/terms-of-service
- type: PrivacyPolicy
  url: https://atmospore.com/privacy-policy
- type: Authentication
  url: authentication/atmospore-pollen-forecasts-authentication.yml
- type: Conventions
  url: conventions/atmospore-pollen-forecasts-conventions.yml
- type: ErrorCatalog
  url: errors/atmospore-pollen-forecasts-problem-types.yml
- type: Lifecycle
  url: lifecycle/atmospore-pollen-forecasts-lifecycle.yml
- type: RateLimits
  url: rate-limits/atmospore-pollen-forecasts-rate-limits.yml
- type: Plans
  url: plans/atmospore-pollen-forecasts-plans.yml
- type: Packages
  url: packages/atmospore-pollen-forecasts-packages.yml
- type: SDKs
  url: packages/atmospore-pollen-forecasts-packages.yml
- type: Sandbox
  url: sandbox/atmospore-pollen-forecasts-sandbox.yml
- type: Components
  url: components/atmospore-pollen-forecasts-components.yml
- type: Conformance
  url: conformance/atmospore-pollen-forecasts-conformance.yml
- type: DomainSecurity
  url: security/atmospore-pollen-forecasts-domain-security.yml
- type: MCPServer
  url: mcp/atmospore-pollen-forecasts-mcp.yml
- type: Overlay
  url: overlays/atmospore-pollen-forecasts-openapi-overlay.yaml
- type: Examples
  url: examples/_index.yml
- type: DataModel
  url: data-model/atmospore-pollen-forecasts-data-model.yml
- type: AgenticAccess
  url: agentic-access/atmospore-pollen-forecasts-agentic-access.yml
- type: AgentSkill
  url: skills/_index.yml
- type: LLMsTxt
  url: llms/atmospore-pollen-forecasts-llms.txt
- type: Arazzo
  name: Plan an allergy week for a location
  url: arazzo/atmospore-pollen-forecasts-allergy-week-plan.yml
- type: Arazzo
  name: Build a regional pollen risk board
  url: arazzo/atmospore-pollen-forecasts-regional-risk-board.yml
generated:
  by: apis.io/add
  model: claude-opus-4-8
  confidence: 97
  at: '2026-08-03T19:57:40.909Z'
x-enrichment:
  date: '2026-08-09'
  status: enriched
  artifacts_added: 30
  pass: local-v1
x-enrichment-notes:
  coverage: covered
  key_corrections:
  - PROFILE.md recorded the MCP server as local-stdio-only and "NOT a hosted/remote HTTP or SSE endpoint". A hosted remote
    MCP server is live at https://mcp.atmospore.com/mcp — verified 2026-08-09 with a tools/list POST that returned a well-formed
    JSON-RPC -32001 auth error. It is documented at https://atmospore.com/article/mcp.
  - 'PROFILE.md recorded "agent-native: no". Atmospore ships a hosted MCP server and markets "Ask Claude about pollen"; the
    correct reading is agent-native yes, llms.txt no.'
  - The published YAML rendering of the OpenAPI at https://pollenapi.com/v1/openapi?format=yaml does not parse — `security:[]`
    and `ApiKeyAuth:[]` are emitted without the space YAML requires after a mapping colon. Only the JSON at /openapi.json
    is machine-readable, so the YAML pointer was replaced with the harvested JSON.
  no_pointer_written:
  - type: WellKnown
    reason: No /.well-known/ document is served on any host — see well-known/atmospore-pollen-forecasts-well-known.yml.
  - type: SecurityTxt
    reason: /.well-known/security.txt returns 403 on atmospore.com and 404 on pollenapi.com.
  - type: AgentCard
    reason: /.well-known/agent-card.json and /.well-known/agent.json miss on all three hosts. Never derived — see the pipeline's
      search-only rule.
  - type: Security
    reason: probe-security-programs.py reported a hit at https://atmospore.com/responsible-disclosure, but that URL is the
      single-page-app catch-all returning the homepage with the slug echoed in a breadcrumb. No vulnerability disclosure program
      exists; the false-positive artifact was deleted.
  - type: Compliance
    reason: No certification or compliance program is published anywhere on the site.
  - type: TrustCenter
    reason: trust.atmospore.com is NXDOMAIN; /trust, /security and /compliance all soft-404.
  - type: StatusPage
    reason: No status page. status.atmospore.com is NXDOMAIN and /status soft-404s.
  - type: Deprecation
    reason: No deprecation policy or Sunset header support published.
  - type: ChangeLog
    reason: /changelog soft-404s; only four undated-in-page articles approximate a release log.
  - type: Idempotency
    reason: All four operations are GET, so requests are naturally idempotent, but there is no idempotency-key contract because
      there are no writes to protect.
  - type: AsyncAPI / Webhooks
    reason: No event, streaming or webhook surface exists. Not applicable rather than missing.
  - type: OAuthScopes
    reason: API-key auth only; no OAuth anywhere, including on the MCP server.
  - type: CLI
    reason: No first-party CLI. The atmospore-mcp console script is a server entrypoint, not a CLI.
  - type: Postman
    reason: No public Postman collection or workspace found.
  - type: Blog
    reason: Four articles exist under /article/, but there is no blog index page — /blog soft-404s and only one article is
      linked from the site navigation.
  - type: Roadmap
    reason: /roadmap soft-404s; no roadmap is published.
  soft_404_warning: atmospore.com serves a single-page-app catch-all that answers HTTP 200 with ~35 KB of homepage HTML for
    every unrouted extensionless path, and returns S3 AccessDenied XML (403) for paths with a file extension. A 200 from this
    host is NOT evidence a page exists — compare the body.