🌤️ AI-powered weather queries for Claude Desktop and MCP clients
Query weather in natural language through Claude Desktop or any MCP client. Supports Chinese, Japanese, and English.
🟢 Production Ready - Live at https://smart-weather-mcp-server-891745610397.asia-east1.run.app
npm install && npm run build
Add to your Claude Desktop config:
{
"mcpServers": {
"smart-weather": {
"command": "node",
"args": ["/path/to/dist/unified-server.js", "--mode=stdio"]
}
}
}
Use the hosted version via mcp-remote:
{
"smart-weather-cloud": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://smart-weather-mcp-server-891745610397.asia-east1.run.app/mcp"]
}
}
- Natural language queries: "台北今天天氣" or "London weather tomorrow"
- Multi-language support: Chinese, Japanese, English
- Real weather data: Google Weather API integration
- Smart caching: 5min weather, 30min forecasts, 7-day locations
- Dual deployment: Local (STDIO) or Cloud (Streamable HTTP)
Query current weather, forecasts, or historical data for any location.
Resolve ambiguous location names and get precise coordinates.
Get personalized recommendations based on weather conditions.
# Install and build
npm install && npm run build
# Run tests
npm test
# Local development
npm run dev # STDIO mode
npm run dev:http # HTTP mode on port 8080
# Production
npm start # Auto-detect mode
- One-shot English baseline:
npm run test:stdio-smoke
- Chinese samples (Taipei/Okinawa):
npm run test:stdio-zh
- CI will run the Chinese STDIO smoke on PR and main if secrets exist:
WEATHER_API_KEY
,GOOGLE_MAPS_API_KEY
- Gemini is disabled in CI (
GEMINI_DISABLED=true
) to validate rule/hybrid paths only
# Setup (one-time)
./scripts/setup-gcp-ci.sh
./scripts/setup-secrets.sh
# Deploy
./scripts/deploy-cloudrun.sh
Auto-deploys on push to main branch.
npm run docker:build
npm run docker:run
/health
- Health check/mcp
- MCP client connections/
- Service info
Built with TypeScript, Express.js, and Google Cloud Platform. Uses hybrid rule-based + AI parsing for optimal performance.
MIT