au-weather-mcp

v0.4.9 safe
4.0
Medium Risk

MCP server for Australian weather + air quality. 45 curated locations + postcode/place-name lookup. Current observations, 16-day forecasts, 80+ years of historical data, air quality (PM2.5 / AQI), and multi-location comparison. Sourced via Open-Meteo (aggregates Bureau of Meteorology data under licence).

πŸ€– AI Analysis

Final verdict: SAFE

The package appears to be legitimate with moderate obfuscation that does not raise significant concerns. It shows typical behavior for a weather data fetching application without any signs of malicious intent.

  • moderate obfuscation
  • no shell execution detected
Per-check LLM notes
  • Network: The observed network call pattern suggests the package may be making HTTP requests to fetch weather data, which is expected for a weather-related package.
  • Shell: No shell execution patterns detected, indicating no immediate risk related to shell command execution.
  • Obfuscation: The observed obfuscation pattern is moderately suspicious but could be used for legitimate purposes such as URL encoding.
  • Credentials: No clear evidence of credential harvesting was found in the provided code snippet.
  • Metadata: The maintainer has only one package and the git repository is not found, which may indicate a new or less active account.

πŸ“¦ Package Quality Overall: Medium (5.6/10)

✦ High Test Suite 9.0

Test suite present β€” 8 test file(s) found

  • Test runner config found: conftest.py
  • Test runner config found: pyproject.toml
  • 8 test file(s) detected (e.g. conftest.py)
β—ˆ Medium Documentation 7.0

Some documentation present

  • Documentation URL: "Documentation" -> https://github.com/Bigred97/au-weather-mcp#readme
  • Detailed PyPI description (13174 chars)
β—‹ Low Contributing Guide 4.0

No contributing guide or governance files found

  • Development Status classifier >= Beta
β—ˆ Medium Type Annotations 7.0

Partial type annotation coverage

  • Classifier: Typing :: Typed
  • Type checker (mypy / pyright / pytype) referenced in project
  • 80 type-annotated function signatures detected in source
β—‹ Low Multiple Contributors 1.0

Could not retrieve contributor data from GitHub

  • GitHub API error: 404

πŸ”¬ Heuristic Checks

⚠ Outbound Network Calls score 1.5

Found 1 network call pattern(s)

  • release. self._http = httpx.AsyncClient( timeout=DEFAULT_TIMEOUT, transport=
⚠ Code Obfuscation score 2.0

Found 1 obfuscation pattern(s)

  • QUALITY_BASE}?" + __import__("urllib.parse", fromlist=["urlencode"]).urlencode({ "latitude": latitude,
βœ“ Shell / Subprocess Execution

No shell execution patterns detected

βœ“ Credential Harvesting

No credential harvesting patterns detected

βœ“ Typosquatting

No typosquatting candidates detected

βœ“ Registered Email Domain

No author email provided

βœ“ Suspicious Page Links

All external links appear legitimate

⚠ Git Repository History score 3.0

Repository not found (deleted or private)

  • Repository not found (deleted or private)
⚠ Maintainer History score 2.0

1 maintainer concern(s) found

  • Author "Harry Vass" appears to have only 1 package on PyPI (new or inactive account)
βœ“ Known CVE Vulnerabilities

No known vulnerabilities found in OSV database.

πŸ’‘ AI App Starter Prompt

Use this prompt to build a project with au-weather-mcp
Create a Python-based mini-application called 'WeatherWhisperer' that utilizes the 'au-weather-mcp' package to provide users with comprehensive weather and air quality information for Australian locations. This application should allow users to input either a postcode or a place name to retrieve current weather conditions, a 16-day forecast, and air quality data. Additionally, the app should offer historical weather data and the ability to compare multiple locations simultaneously. Here’s a detailed breakdown of the steps and features to implement:

1. **Setup Environment**: Ensure your development environment includes Python and the 'au-weather-mcp' package. If not installed, use pip to install it.

2. **User Interface**: Design a simple but intuitive command-line interface where users can interact with the app. They should be able to choose between viewing current conditions, forecasts, historical data, or comparing multiple locations.

3. **Location Lookup**: Implement functionality to accept user inputs for location (either by postcode or place name) using the 'au-weather-mcp' package's lookup capabilities. Validate these inputs to ensure they correspond to one of the 45 curated locations.

4. **Current Conditions**: Utilize the 'au-weather-mcp' package to fetch and display current weather conditions including temperature, humidity, wind speed, and direction, as well as air quality indices like PM2.5 and AQI.

5. **Forecasting Feature**: Allow users to view a 16-day weather forecast for their chosen location(s). Display key weather metrics such as maximum and minimum temperatures, precipitation chances, and wind speeds.

6. **Historical Data**: Enable access to historical weather data spanning up to 80 years for educational or research purposes. Users should be able to specify a date range and see corresponding weather patterns.

7. **Multi-Location Comparison**: Implement a feature where users can select multiple locations and compare their weather and air quality conditions side by side. Highlight differences in temperature, humidity, and air quality across locations.

8. **Data Visualization**: Integrate basic data visualization tools (like matplotlib or seaborn) to create graphs and charts showing trends in weather data over time or across different locations.

9. **Documentation and Help**: Provide clear documentation within the application explaining how to use each feature and what types of data are available. Include help options that guide users through common tasks.

By following these steps and incorporating these features, you'll develop a powerful yet easy-to-use tool for exploring Australian weather and air quality data.

πŸ’¬ Discussion Feed

Leave a comment

No discussion yet. Be the first to share your thoughts!