MCP Weather Server MCP Server

Local setup required. This server has to be cloned and prepared on your machine before you register it in Claude Code.
1

Set the server up locally

Run this once to clone and prepare the server before adding it to Claude Code.

Run in terminal
pip install -e .
2

Register it in Claude Code

After the local setup is done, run this command to point Claude Code at the built server.

Run in terminal
claude mcp add mcp-weather-server -- node "<FULL_PATH_TO_MCP_WEATHER_SERVER>/dist/index.js"

Replace <FULL_PATH_TO_MCP_WEATHER_SERVER>/dist/index.js with the actual folder you prepared in step 1.

README.md

Provides tools to retrieve current weather conditions and daily forecasts

MCP Weather Server

This repository provides a simple Model Context Protocol (MCP) server written in Python that exposes weather data as tools. It is packaged so it can be published to GitHub and (optionally) to PyPI.

The server is built on the official `mcp` Python SDK and uses the free Open‑Meteo APIs (no API key required).

Features

  • MCP-compliant server using FastMCP
  • Two tools:
    • get_current_weather – current conditions for a city
    • get_daily_forecast – daily forecast for a city for the next N days
  • Runs locally in Python (stdio transport by default)

Installation

From the project root:

pip install -e .

Or, using uv:

uv sync

Running the MCP server locally

You can run the server directly via the console script:

python -m mcp_weather_server.server

Or, if installed as a package:

mcp-weather-server

By default it uses the stdio transport, which works with MCP-compatible clients (e.g. IDE integrations or LLM apps that support MCP).

Connecting with MCP Inspector (optional)

To experiment via HTTP instead of stdio, you can set the transport to streamable-http inside server.py and then run:

uv run --with mcp python -m mcp_weather_server.server

Then start the MCP Inspector:

npx -y @modelcontextprotocol/inspector

and connect to http://localhost:8000/mcp.

Git conventions

  • Commit messages must follow Conventional Commits (e.g. feat: add daily forecast tool, fix(server): handle API errors).
  • A Cursor rule at .cursor/rules/git-conventional-commits.mdc documents the allowed types and format.

Tools (2)

get_current_weatherRetrieves current weather conditions for a specified city.
get_daily_forecastRetrieves a daily weather forecast for a city for the next N days.

Configuration

claude_desktop_config.json
{"mcpServers": {"weather": {"command": "python", "args": ["-m", "mcp_weather_server.server"]}}}

Try it

What is the current weather in Tokyo?
Can you give me the 5-day weather forecast for London?
Is it going to rain in New York over the next 3 days?
Check the current weather conditions for Paris.

Frequently Asked Questions

What are the key features of MCP Weather Server?

MCP-compliant server using FastMCP. Retrieves current weather conditions for any city. Provides daily weather forecasts for a specified number of days. Uses free Open-Meteo APIs with no API key required. Supports stdio transport for local integration.

What can I use MCP Weather Server for?

Planning travel based on upcoming weather forecasts. Integrating real-time weather data into LLM-based personal assistants. Automating weather-dependent task scheduling. Quickly checking local conditions without leaving the IDE.

How do I install MCP Weather Server?

Install MCP Weather Server by running: pip install -e .

What MCP clients work with MCP Weather Server?

MCP Weather Server works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep MCP Weather Server docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Need the old visual installer? Open Conare IDE.
Open Conare