GitHub Stars
0
User Rating
Not Rated
Favorites
0
Views
1
Forks
0
Issues
0
Floyd Weather Deployer MCP Server
An MCP (Model Context Protocol) server that provides weather information and deployment safety checks, designed to be used with GitHub Copilot in Visual Studio Code 1.100+.
Features
- Get current weather conditions for any city in the world
- Check if it's safe to deploy to a server in a specific city
- Deploy to a server if conditions are safe
- Temperature display in appropriate units (°F for US, °C elsewhere)
- Codebase structured following SOLID principles for maintainability
Deployment Safety Rules
Deployment is considered safe when:
- It's between 9am and 5pm in the target city's local time
- The weather conditions are clear or sunny
Architecture
The application follows SOLID design principles:
- Single Responsibility: Each package has a clear, focused purpose
- Open/Closed: Code can be extended without modifying existing functionality
- Liskov Substitution: Interfaces allow for substitution of implementations
- Interface Segregation: Focused interfaces define minimal required behaviors
- Dependency Inversion: High-level modules depend on abstractions
See ARCHITECTURE.md for more details on the design.
Installation
Prerequisites
- Go 1.18 or higher
- VS Code 1.100 or higher with GitHub Copilot
Setup
Clone this repository:
git clone https://github.com/devopsjester/floyd-weather-mcp.git cd floyd-weather-mcp
Build the server:
go build -o floyd-weather-server
Add to your VS Code
settings.json
:"mcp": { "servers": { "floyd": { "command": "/path/to/floyd-weather-server" } } }
Usage
This server is designed to be used with GitHub Copilot through VS Code MCP integration.
Available Commands
Check deployment safety:
Ask about deployment safety for a city.Get weather information:
Ask about weather conditions in a city.Deploy to a city:
Request deployment to a city.
Examples
- "Is it safe to deploy to London, United Kingdom?"
- "What's the weather in New York, USA?"
- "Deploy to Tokyo, Japan"
Technical Details
- Built in Go
- Uses the OpenMeteo API for geocoding and weather data (free, public, no authentication required)
- Follows MCP protocol for interactions with GitHub Copilot
API Details
The server uses these OpenMeteo API endpoints:
- Geocoding:
https://geocoding-api.open-meteo.com/v1/search
- Weather:
https://api.open-meteo.com/v1/forecast
- Timezone: Part of the forecast API
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
12
Followers
81
Repositories
0
Gists
0
Total Contributions
MCP Server implementation for https://github.com/Cyberwatch/Pentest-Collaboration-Framework
This document provides a list of different MCP servers. For each server, we provide a schema definition that includes the latest basic information and tool definitions.