weather-mcp-server
A lightweight Model Context Protocol (MCP) server that enables AI assistants like Claude to retrieve and interpret real-time weather data. Discuss on Hacker News:
Links
README
From the repo.
A lightweight Model Context Protocol (MCP) server that enables AI assistants like Claude to retrieve and interpret real-time weather data.
Installing on Claude Desktop
To use your MCP server with Claude Desktop, add it to your Claude configuration:
1. Local mode
{
"mcpServers": {
"weather-mcp-server": {
"command": "/path/to/weather-mcp-server",
"env": {
"WEATHER_API_KEY": "your-api-key"
}
}
}
}
You can get an API key from your personal account on WeatherAPI.
2. Remote mode
{
"mcpServers": {
"weather-mcp-server": {
"url": "http://host:port/sse"
}
}
}
Build from source
You can use go to build the binary in the cmd/github-mcp-server directory.
go build -o weather-mcp-server ./cmd/weather-mcp-server
Using MCP with Docker Containers
1. Build the Docker Image:
docker build -t weather-mcp-server .
2. Run the Docker Container:
docker run -e WEATHER_API_KEY=your-api-key -d --name weather-mcp-server -p 8000:8000 weather-mcp-server
Replace your-api-key with your actual WeatherAPI API key.
Tools
-
current_weather - Gets the current weather for a city
city: The name of the city (string, required)
Project Structure
The project is organized into several key directories:
├── cmd
│ └── weather-mcp-server
├── internal
│ └── server
│ ├── handlers # MCP handlers
│ ├── services # Business logic layer
│ │ ├── core # Core application logic
│ │ └── mock # Mock services for testing
│ ├── tools # MCP tools
│ └── view # Templates for displaying messages
└── pkg
Testing
If you're adding new features, please make sure to include tests for them.
1. Install the mockgen tool:
go install go.uber.org/mock/mockgen@latest
See the installation guide on go.uber.org/mock.
2. Use the following command to generate mock files:
make generate-mocks
3. To run unit tests:
make run-tests
Contributing
Feel free to open tickets or send pull requests with improvements. Thanks in advance for your help!
Please follow the contribution guidelines.
License
This MCP server is licensed under the MIT License.
Collected info
- ★ 249 stars
- ⎇ 21 forks
- Language: Go
- Source updated: 8/6/2026
Config for your environment
Replace {MCP_ENDPOINT_URL} with this MCP’s endpoint URL (from its repo or docs above). No API key — you connect directly.
Tool
OS
Config file: ~/.cursor/mcp.json
{
"mcpServers": {
"mcp-server": {
"url": "{MCP_ENDPOINT_URL}"
}
}
}Paste into mcpServers in the config file. Restart Cursor after saving.
If this MCP is also published on mcpchannel.ai, you can subscribe from Browse and use the gateway config there instead.