MCP-Whether-Server

MCP-Whether-Server

3.1

If you are the rightful owner of MCP-Whether-Server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

The MCP Weather Server is a Model Context Protocol server that provides real-time weather data using the OpenWeatherMap API, built with Node.js and designed to run inside WSL.

🌤️ MCP Weather Server (Cursor + Node.js + WSL)

This project is a simple Model Context Protocol (MCP) server that provides real-time weather data using the OpenWeatherMap API, built with Node.js and designed to run inside WSL (Windows Subsystem for Linux).

📦 Features

  • Exposes an MCP tool: getWhetherByCityName
  • Fetches weather data for any city using OpenWeatherMap
  • Compatible with Cursor AI client
  • WSL support with clean .env configuration

🛠️ Prerequisites

  • Cursor installed
  • WSL enabled with Ubuntu or other Linux distro
  • Node.js and npm installed in WSL
  • OpenWeatherMap API key

🔧 Installation

# In WSL terminal
git clone https://github.com/your-username/mcp-weather-server
cd mcp-weather-server
npm install

🔐 Environment Setup

Create a .env file in the root of the project:

WHETHER_API_KEY=your_openweather_api_key_here

🌱 The server will read this key using dotenv.


🧠 MCP Configuration (in Cursor)

In your Cursor's mcp.json (or settings UI), use the following:

{
  "mcpServers": {
    "demo": {
      "command": "wsl",
      "args": ["node", "/home/kaif/code/learnings/mcp-poc/index.js"]
    }
  }
}

✅ Note: env key won't work properly when using wsl. Use a .env file instead.


🚀 Running the Server

In Cursor, create a new MCP Client using the demo server. Then run queries like:

getWhetherByCityName({ name: "London" })

The server will respond with current weather data for that city.


📂 File Structure

mcp-poc/
├── index.js           # MCP server entrypoint
├── .env               # Your API key
├── package.json
└── README.md

📜 License

MIT


✨ Credits