Skip to content

Latest commit

 

History

11 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mcp-weather

A minimal MCP (Model Context Protocol) server exposing weather tools, backed by the free Open-Meteo API. Built as a practice project for MCP + Claude Code.

Tools

  • get_current_weather({ city }) — current temperature, windspeed, and conditions for a city.
  • get_forecast({ city, days? }) — daily max/min temperature and conditions for days days (1-7, default 3).

No API key is required.

Setup

npm install
npm run build

Test

Runs the unit tests for the pure formatting/mapping logic in src/weatherFormat.ts:

npm test

Debug with MCP Inspector

Launches an interactive web UI to call tools directly, without Claude Code:

npm run inspector

Use with Claude Code

This project's .mcp.json registers the server as weather, running node dist/index.js over stdio. Open this project in Claude Code (or restart it here), confirm weather shows as connected (/mcp), and ask a weather-related question — Claude Code will invoke the tools as needed.

Project layout

  • src/weatherFormat.ts — pure formatting/mapping logic (weather codes, day clamping, text formatting), unit tested.
  • src/openMeteo.ts — thin fetch wrappers around Open-Meteo's geocoding and forecast APIs.
  • src/index.ts — MCP server entrypoint: registers get_current_weather and get_forecast, connects over stdio.

About

an MCP server practice

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages