Skip to main content
Glama

Weather Info MCP Server

by Raffay0177

Weather Info App with MCP Server

A simple weather information application built with FastAPI and integrated with an MCP (Model Context Protocol) server for use with Gemini CLI.

šŸ“‹ Requirements Checklist

  • āœ… FastAPI weather application

  • āœ… MCP Server implementation

  • āœ… Gemini CLI integration

  • āœ… MCP tools demonstration

  • āœ… Screen recording (see SCREEN_RECORDING_GUIDE.md)

šŸŽ„ Screen Recording

IMPORTANT: This repository includes a screen recording demonstrating:

  1. MCP server running

  2. gemini mcp list command showing available tools

  3. Usage of all MCP tools (get_weather, get_weather_batch, check_api_health)

See SCREEN_RECORDING_GUIDE.md for detailed recording instructions.

Project Structure

. ā”œā”€ā”€ weather_api.py # FastAPI weather application ā”œā”€ā”€ mcp_server.py # MCP server exposing weather tools ā”œā”€ā”€ requirements.txt # Python dependencies ā”œā”€ā”€ mcp_config.json # Gemini CLI MCP configuration ā”œā”€ā”€ demo.py # Demo script for testing └── README.md # This file

Features

  • FastAPI Weather API: RESTful API providing weather information

  • MCP Server: Exposes weather functionality as MCP tools

  • Gemini CLI Integration: Ready to use with Google's Gemini CLI

  • Multiple Tools: Get weather for single/multiple cities, health check

Installation

  1. Clone this repository:

git clone <your-repo-url> cd "MCp derver using FAST MCP"
  1. Install dependencies:

pip install -r requirements.txt

Running the Application

Step 1: Start the FastAPI Weather Server

In one terminal:

python weather_api.py

The API will be available at http://localhost:8000

You can test it:

# Using curl curl http://localhost:8000/weather?city=London # Or using the browser http://localhost:8000/weather?city=Paris

Step 2: Configure Gemini CLI for MCP

The MCP server uses stdio transport. Create or update your Gemini CLI configuration file:

On Windows: %APPDATA%\Google\Gemini CLI\mcp_config.json

On macOS/Linux: ~/.config/google-gemini-cli/mcp_config.json

Example configuration:

{ "mcpServers": { "weather-info": { "command": "python", "args": ["<absolute-path-to-mcp_server.py>"], "env": {} } } }

For Windows, use full path like:

{ "mcpServers": { "weather-info": { "command": "python", "args": ["B:\\MCp derver using FAST MCP\\mcp_server.py"], "env": {} } } }

Step 3: Use with Gemini CLI

  1. Start Gemini CLI

  2. List available MCP tools:

gemini mcp list
  1. Use the tools:

# Get weather for a city gemini mcp call weather-info get_weather --city "Tokyo" # Get weather for multiple cities gemini mcp call weather-info get_weather_batch --cities "London,Paris,New York" # Check API health gemini mcp call weather-info check_api_health

Available MCP Tools

1. get_weather

Get current weather information for a single city.

Parameters:

  • city (required): Name of the city

  • country (optional): Country name

Example:

gemini mcp call weather-info get_weather --city "London" --country "UK"

2. get_weather_batch

Get weather information for multiple cities at once.

Parameters:

  • cities (required): Comma-separated list of cities

Example:

gemini mcp call weather-info get_weather_batch --cities "Tokyo,Seoul,Beijing"

3. check_api_health

Check if the weather API is running and healthy.

Example:

gemini mcp call weather-info check_api_health

Testing

Run the demo script to test the setup:

python demo.py

API Endpoints

The FastAPI server provides:

  • GET / - API information

  • GET /health - Health check

  • GET /weather?city=<name>&country=<name> - Get weather (GET)

  • POST /weather - Get weather (POST with JSON body)

Screen Recording Instructions

To create a screen recording demonstrating the MCP server:

  1. Start the FastAPI server: python weather_api.py

  2. Open Gemini CLI

  3. Show gemini mcp list command to see available tools

  4. Demonstrate each tool:

    • get_weather for a single city

    • get_weather_batch for multiple cities

    • check_api_health

  5. Show the responses and how they work together

Project Files

  • weather_api.py - FastAPI weather application

  • mcp_server.py - MCP server exposing weather tools

  • demo.py - Testing and demonstration script

  • get_path.py - Helper to get correct paths for configuration

  • test_mcp_structure.py - Verify MCP imports and structure

  • requirements.txt - Python dependencies

  • mcp_config.json - Example Gemini CLI configuration

Documentation

  • README.md - This file (main documentation)

  • QUICK_START.md - Quick setup guide

  • setup_instructions.md - Detailed setup instructions

  • SCREEN_RECORDING_GUIDE.md - Guide for creating demo video

  • PROJECT_SUMMARY.md - Complete project overview

Notes

  • The weather data is mock/simulated for demonstration purposes

  • Make sure the FastAPI server is running before using MCP tools

  • The MCP server communicates with the FastAPI server via HTTP

  • All paths in the configuration must be absolute paths

Troubleshooting

MCP server not connecting:

  • Ensure FastAPI server is running on port 8000

  • Check that the path to mcp_server.py in the config is correct and absolute

  • Verify Python is in your PATH

Tools not appearing:

  • Restart Gemini CLI after updating the configuration

  • Check the MCP server logs for errors

  • Verify the configuration JSON syntax is correct

-
security - not tested
F
license - not found
-
quality - not tested

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Raffay0177/MCP-server-using-FAST-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server