An MCP server that connects AI assistants to Ambient Weather personal weather stations. Built with Python FastMCP. Exposes three tools: ping (health check), get_devices (lists all stations on your account with latest readings), and get_current_weather (full weather report for a specific station by MAC address). Includes a 60-second TTL cache that respects Ambient Weather's API rate limits. Supports OS keyring for local development and environment variables for containerized deployments. Distributed as a Docker image with a multi-stage build, non-root user, and OCI labels. Tested live against real weather stations with Claude Desktop, VS Code, and Kiro.
Overview
Ambient Weather MCP Server
Connect AI assistants to your Ambient Weather personal weather station. Ask natural-language questions instead of parsing raw API JSON.
Tools
- ping — health check confirming the server is running and keys are configured
- get_devices — lists all weather stations on your account with their latest readings
- get_current_weather — full weather report for a specific station, by MAC address
Quick start
docker run -i --rm -e AMBIENT_API_KEY="..." -e AMBIENT_APP_KEY="..." yawgyamfiprem32/ambient-weather-mcp:latest
The -i flag is required. Stdio MCP servers exit immediately on EOF without it.
Get API keys
Generate both an Application Key and an API Key at dashboard.ambientweather.net/account.
Security
Runs as a non-root user. No embedded secrets. Credentials are provided via environment variables and never logged. TruffleHog scans every commit and push.
Source
github.com/NanaGyamfiPrempeh30/ambient-weather-mcp — MIT licensed.
Server Config
{
"mcpServers": {
"ambient-weather": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"AMBIENT_API_KEY",
"-e",
"AMBIENT_APP_KEY",
"yawgyamfiprem32/ambient-weather-mcp:latest"
],
"env": {
"AMBIENT_API_KEY": "<YOUR_API_KEY>",
"AMBIENT_APP_KEY": "<YOUR_APP_KEY>"
}
}
}
}