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

by mdkaifansari04

255 downloads
Not rated
GitHub

Description

# 🌤️ 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). ## 📦…

About

# 🌤️ 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…

Details

Author
mdkaifansari04
Downloads
255
Categories
Developer Tools

- Exposes a single MCP tool: getWhetherByCityName
- Fetches current weather for any city
- Compatible with Cursor AI client
- Runs inside WSL with clean .env configuration
- Uses OpenWeatherMap API (requires free API key)

Clone the repository in WSL, install dependencies with npm install, create a .env file with your OpenWeatherMap API key (WHETHER_API_KEY), then configure the server in Cursor’s mcp.json using the wsl command pointing to index.js. Invoke the tool with getWhetherByCityName({ name: "CityName" }).

# 🌤️ 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](https://cursor.sh) AI client - WSL support with clean `.env` configuration --- ## 🛠️ Prerequisites - [Cursor](https://cursor.sh) installed - WSL enabled with Ubuntu or other Linux distro - Node.js and npm installed in WSL - OpenWeatherMap API key --- ## 🔧 Installation ```bash # 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: ```json { "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 - [OpenWeatherMap API](https://openweathermap.org/api) - [Model Context Protocol (MCP)](https://github.com/modelcontextprotocol) - [Cursor](https://cursor.sh)
No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.