This document outlines the steps to set up the mcp project environment.
Create a new conda environment named mcp with Python 3.12:
conda create -n mcp python=3.12 -yInstall the uv package manager using the following command:
curl -LsSf https://astral.sh/uv/install.sh | shInstall the fastmcp package using uv in the mcp environment:
conda run -n mcp uv pip install fastmcpConfirm the fastmcp installation by running the following command:
conda run -n mcp fastmcp versionmcp_hello.py is a "hello world" type mcp server. You can run the MCP inspector for it using the following command:
conda run -n mcp fastmcp dev mcp_hello.py:mcpCopy the provided session token from CLI, click on the provided link, paste in Configuration -> Proxy Session Token, click connect.
Click on Tools in the top menu bar. "hello_world" should be listed with a parameter "name". Input your name and click "Run Tool". The tool should succeed and return a greeting.
mcp_resources.py defines MCP resources. You can run tests for these resources using the --test argument:
uv run mcp_resources.py --testmcp_weather.py exposes a tool to get current weather data from OpenWeatherMap.
Before running: Ensure you have set your OPENWEATHER_API_KEY in the .env file:
OPENWEATHER_API_KEY=YOUR_API_KEY_HERE
To run the weather server manually:
conda run -n mcp fastmcp dev mcp_weather.py:mcpTo run tests for the weather tool:
uv run mcp_weather.py --testTo allow the Gemini CLI to automatically start and connect to your mcp_weather server, you need to configure its settings.json file.
-
Locate
settings.json: Thesettings.jsonfile is typically located at:- Linux/macOS:
~/.gemini/settings.json - Windows:
%APPDATA%\gemini\settings.json
If the file or directory does not exist, create them.
- Linux/macOS:
-
Add
mcpServersentry: Add the following entry to themcpServerssection in yoursettings.jsonfile. Replace/mnt/d/Projects/_sandbox/mcp/with the absolute path to yourmcpproject directory.{ "mcpServers": { "weather_server": { "command": "uv", "args": [ "run", "/mnt/d/Projects/_sandbox/mcp/mcp_weather.py" ], "cwd": "/mnt/d/Projects/_sandbox/mcp", "timeout": 10000 } } }Once configured, when you run
gemini, the CLI will automatically start yourmcp_weather.pyserver and make itsget_current_weathertool available to the Gemini model.
- Gemini CLI Configuration: https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/configuration.md - For information on setting up MCP with the Gemini CLI.
- FastMCP: https://github.com/jlowin/fastmcp - The FastMCP library used for building MCP servers.