Mcp Tools Server — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Mcp Tools Server (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
A Model Context Protocol (MCP) server providing 5 essential tools for weather information, calculations, currency conversion, timezone queries, and unit conversions.
Built with Python and FastMCP for AI Engineering applications.
This MCP server provides the following tools:
Retrieve current weather conditions for any city or location worldwide.
Perform basic arithmetic operations with proper error handling.
Convert amounts between different currencies using live exchange rates.
Get current time and timezone information for major cities.
Convert between common units of measurement.
git clone https://github.com/yourusername/mcp-tools-server.git
cd mcp-tools-server# Create virtual environment
python -m venv venv
# Activate virtual environment
# On Windows PowerShell:
.\venv\Scripts\Activate.ps1
# On Windows Command Prompt:
.\venv\Scripts\activate.bat
# On macOS/Linux:
source venv/bin/activatepip install -r requirements.txt.env.example file to .env: cp .env.example .env.env and add your API keys: OPENWEATHER_API_KEY=your_actual_api_key_here
EXCHANGERATE_API_KEY=your_actual_api_key_herepython server.pyThe server will start and be available for MCP client connections.
%APPDATA%\Claude\claude_desktop_config.json~/Library/Application Support/Claude/claude_desktop_config.json {
"mcpServers": {
"tools-server": {
"command": "python",
"args": ["C:/path/to/your/mcp-tools-server/server.py"],
"env": {}
}
}
}# Install MCP Inspector globally
npm install -g @modelcontextprotocol/inspector
# Run inspector with your server
mcp-inspector python server.pyFunction: get_weather(location: str)
Description: Retrieves current weather conditions for a specified location.
Parameters:
location (string): City name, ZIP code, or "City,Country" formatExample Request:
{
"tool": "get_weather",
"arguments": {
"location": "London"
}
}Example Response:
{
"location": "London",
"country": "GB",
"temperature": "12°C",
"feels_like": "10°C",
"description": "Scattered Clouds",
"humidity": "76%",
"wind_speed": "4.5 m/s",
"status": "success"
}Function: calculate(operation: str, num1: float, num2: float)
Description: Performs basic arithmetic operations.
Parameters:
operation (string): One of "add", "subtract", "multiply", "divide"num1 (float): First numbernum2 (float): Second numberExample Request:
{
"tool": "calculate",
"arguments": {
"operation": "multiply",
"num1": 15,
"num2": 4
}
}Example Response:
{
"operation": "multiply",
"num1": 15,
"num2": 4,
"result": 60,
"expression": "15 multiply 4 = 60",
"status": "success"
}Function: convert_currency(amount: float, from_currency: str, to_currency: str)
Description: Converts an amount from one currency to another using live exchange rates.
Parameters:
amount (float): Amount to convertfrom_currency (string): Source currency code (e.g., "USD", "EUR")to_currency (string): Target currency codeExample Request:
{
"tool": "convert_currency",
"arguments": {
"amount": 100,
"from_currency": "USD",
"to_currency": "EUR"
}
}Example Response:
{
"amount": 100,
"from_currency": "USD",
"to_currency": "EUR",
"conversion_rate": 0.92,
"converted_amount": 92.0,
"formatted": "100 USD = 92.00 EUR",
"last_updated": "Wed, 08 Jan 2025 00:00:01 +0000",
"status": "success"
}Function: get_timezone_info(city: str)
Description: Gets current time and timezone information for a given city.
Parameters:
city (string): City name (e.g., "Tokyo", "New York")Supported Cities: London, Paris, New York, Los Angeles, Tokyo, Sydney, Dubai, Singapore, Mumbai, Toronto, Berlin, Moscow, Beijing, Hong Kong, Chicago, Mexico City, Sao Paulo, Cairo, Lagos, Johannesburg
Example Request:
{
"tool": "get_timezone_info",
"arguments": {
"city": "Tokyo"
}
}Example Response:
{
"city": "Tokyo",
"timezone": "Asia/Tokyo",
"current_time": "2026-01-10 15:30:45",
"utc_offset": "+09:00",
"day_of_week": "Saturday",
"day_of_year": 10,
"week_number": 2,
"status": "success"
}Function: convert_units(value: float, from_unit: str, to_unit: str, category: str)
Description: Converts between common units of measurement.
Parameters:
value (float): Numeric value to convertfrom_unit (string): Source unitto_unit (string): Target unitcategory (string): One of "length", "weight", "temperature"Example Request (Length):
{
"tool": "convert_units",
"arguments": {
"value": 100,
"from_unit": "km",
"to_unit": "miles",
"category": "length"
}
}Example Response:
{
"value": 100,
"from_unit": "km",
"to_unit": "miles",
"category": "length",
"result": 62.1371,
"formatted": "100 km = 62.1371 miles",
"status": "success"
}Example Request (Temperature):
{
"tool": "convert_units",
"arguments": {
"value": 32,
"from_unit": "fahrenheit",
"to_unit": "celsius",
"category": "temperature"
}
}Example Response:
{
"value": 32,
"from_unit": "fahrenheit",
"to_unit": "celsius",
"category": "temperature",
"result": 0.0,
"formatted": "32 fahrenheit = 0.0 celsius",
"status": "success"
} npm install -g @modelcontextprotocol/inspector mcp-inspector python server.pymcp-tools-server/
│
├── server.py # Main MCP server implementation
├── requirements.txt # Python dependencies
├── .env # Environment variables (API keys) - not in git
├── .env.example # Example environment file
├── .gitignore # Git ignore file
├── README.md # This file
└── venv/ # Virtual environment (not in git).env file to Git.gitignore file is configured to exclude sensitive filesAll tools include comprehensive error handling for:
Errors are returned in a consistent format:
{
"error": "Descriptive error message",
"status": "error"
}fastmcp - FastMCP framework for building MCP serversrequests - HTTP library for API callspython-dotenv - Environment variable managementContributions are welcome! Please feel free to submit a Pull Request.
This project is open source and available under the MIT License.
Your Name - Habeeb Temitope Lawal
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.