{
  "markdown": "# weather-mcp\n\nAn MCP (Model Context Protocol) server that lets an AI assistant  Claude, Gemini CLI, or any MCP-compatible client  answer real weather questions using live data, instead of just fetching raw numbers.\n\nPowered by [Open-Meteo](https://open-meteo.com) — free, no API key required.\n\n## Why this isn't just a raw weather API wrapper\n\nMost weather integrations just return `temperature: 22°C`. This one adds a reasoning layer on top, so you can ask things a plain API can't answer directly:\n\n- `get_weather(\"Bangalore\")` — current conditions + today's forecast\n- `should_i_carry_umbrella(\"Mumbai\")` — a yes/no answer with reasoning, not just a rain percentage\n- `is_good_for_outdoors(\"Delhi\")` — checks rain, wind, and temperature together to judge if it's a good day to be outside\n- `compare_weather(\"Bangalore\", \"Delhi\")` — compares two cities at once\n\n## Setup\n\n```bash\ngit clone https://github.com/darshan0548/weather-mcp.git\ncd weather-mcp\npython3 -m venv venv\nsource venv/bin/activate   # on Windows: venv\\Scripts\\activate\npip install -r requirements.txt\n```\n\n## Running the tests\n\nA quick sanity check against the real API (no mocking, no API key needed):\n\n```bash\npython test_weather.py\n```\n\n## Connecting it to Claude Desktop\n\nAdd this to your Claude Desktop config (`claude_desktop_config.json`):\n\n```json\n{\n  \"mcpServers\": {\n    \"weather\": {\n      \"command\": \"python\",\n      \"args\": [\"/absolute/path/to/weather-mcp/server.py\"]\n    }\n  }\n}\n```\n\n## Connecting it to Gemini CLI\n\nAdd this to `~/.gemini/settings.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"weather\": {\n      \"command\": \"python\",\n      \"args\": [\"/absolute/path/to/weather-mcp/server.py\"]\n    }\n  }\n}\n```\n\nRestart your client, then just ask it something like *\"should I carry an umbrella in Chennai today?\"*\n\n## Project structure\n\n```\nweather_core.py     # talks to the Open-Meteo API, no MCP-specific code\nweather_advice.py    # reasoning layer built on top of raw weather data\nserver.py            # MCP server — wires the above into tools\ntest_weather.py       # sanity tests against the real API\n```\n\nKept as separate files on purpose — `weather_core.py` and `weather_advice.py` have no MCP dependency at all, so they're easy to test or reuse on their own.\n\n## Contributing\n\nPRs welcome. Some ideas if you want to add a tool:\n\n- Hourly forecast breakdown instead of just today's summary\n- Air quality data (Open-Meteo has a free endpoint for this too)\n- Multi-day trip planning (best day this week for an outdoor event)\n- Severe weather alerts\n\nKeep new tools in `weather_advice.py` if they add reasoning on top of raw data, or `weather_core.py` if they're pure data fetching — then wire them into `server.py` as a new `@mcp.tool()`.\n\n## License\n\nMIT — see [LICENSE](LICENSE).\n",
  "bytes": 2759,
  "sha": "a93446df7bb35fdadd20f1938b54b26a3690662b1477d2e665cde5507a70f278",
  "repo_slug": "darshan0548/weather-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_darshan0548_weather_mcp_9b7e9e94/readme"
}