Weather MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Weather MCP Serverwhat's the forecast for New York City?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
How the LLM Uses These Tools
Example 1: Weather Alerts
You: "Are there any weather alerts in California?"
Claude's process:
Recognizes it needs weather alert info
Calls
get_alerts(state="CA")Gets the formatted response
Presents it to you in natural language
Example 2: Weather Forecast
You: "What's the weather forecast for San Francisco?"
Claude's process:
Knows SF coordinates (or looks them up)
Calls
get_forecast(latitude=37.7749, longitude=-122.4194)Gets 5-period forecast
Summarizes it for you
Run the mcp server
uv run weather.py
Update the claude config file claude_desktop_config.json to below content
{ "mcpServers": { "weather": { "command": "/Users/santhosh.sharma/.local/bin/uv", "args": [ "--directory", "/Users/santhosh.sharma/Repositories/mcp-weather", "run", "weather.py" ] } } }
Reference : https://modelcontextprotocol.io/docs/develop/build-server#python
Analyze logs in ~/Library/Logs/Claude/mcp.log
When you ask Claude (with this MCP server connected):

Docstring best practises:
First line = One-line summary (imperative mood: "Get", "Format", "Calculate")
Use present tense ("Returns the sum" not "Will return")
Be specific about parameter types and expected values
Include examples for complex functions
Keep it updated when code changes
Available Tools
2 toolsget_alertsB
Get weather alerts for a US state.
Args:
state: Two-letter US state code (e.g. CA, NY)
| Name | Required | Description | Default |
|---|---|---|---|
| state | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool retrieves data ('Get'), implying a read-only operation, but doesn't cover aspects like rate limits, error handling, authentication needs, or what the output contains. This leaves significant gaps for a tool with no annotation support.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded, starting with the core purpose followed by parameter details in a structured 'Args' section. It avoids unnecessary fluff, though the formatting could be slightly more polished for optimal readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (one parameter) and the presence of an output schema (which handles return values), the description is moderately complete. However, with no annotations and minimal behavioral context, it doesn't fully equip the agent for reliable use, especially regarding error cases or limitations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds meaningful context beyond the input schema, which has 0% description coverage. It explains that the 'state' parameter is a 'Two-letter US state code' with examples (e.g., CA, NY), clarifying the expected format. Since there's only one parameter, this compensates well for the schema's lack of details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Get') and resource ('weather alerts for a US state'), making it immediately understandable. However, it doesn't explicitly differentiate from its sibling tool 'get_forecast', which likely provides different weather data, so it doesn't reach the highest score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus its sibling 'get_forecast' or any alternatives. It mentions the scope ('US state') but lacks explicit instructions on usage context, exclusions, or prerequisites, leaving the agent to infer based on tool names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_forecastC
Get weather forecast for a location.
Args:
latitude: Latitude of the location
longitude: Longitude of the location
| Name | Required | Description | Default |
|---|---|---|---|
| latitude | Yes | ||
| longitude | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the basic action ('Get weather forecast') without mentioning any behavioral traits such as rate limits, authentication needs, data freshness, error handling, or what the forecast includes (e.g., temperature, precipitation). This leaves significant gaps in understanding how the tool behaves.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded, with the core purpose stated first in a clear sentence. The parameter list is concise and directly relevant. While efficient, it could be slightly improved by integrating parameter details more seamlessly, but it avoids unnecessary verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (2 required parameters) and the presence of an output schema, the description is minimally adequate. It covers the basic purpose and parameters but lacks behavioral context and usage guidelines. The output schema likely handles return values, so the description doesn't need to explain those, but overall completeness is limited.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description lists the parameters (latitude and longitude) and their purpose ('of the location'), which adds some meaning beyond the input schema's basic titles and types. However, with 0% schema description coverage, it doesn't fully compensate by providing details like valid ranges, units, or examples, keeping it at the baseline for minimal parameter context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Get') and resource ('weather forecast for a location'), making it immediately understandable. However, it doesn't explicitly differentiate from its sibling tool 'get_alerts', which might provide related weather information, so it doesn't reach the highest score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'get_alerts'. It states what the tool does but offers no context about appropriate use cases, prerequisites, or exclusions, leaving the agent to infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
The two tools have clearly distinct purposes: get_alerts retrieves alerts for US states, while get_forecast provides forecasts for geographic coordinates. There is no overlap in functionality or ambiguity between them.
Both tools follow a consistent verb_noun pattern (get_alerts, get_forecast) with identical verb usage and snake_case formatting. The naming is perfectly predictable across the tool set.
With only 2 tools, the server feels thin for a weather domain. While alerts and forecasts are core features, obvious gaps like current conditions, historical data, or radar imagery suggest the tool count is too low for comprehensive weather coverage.
The tool surface is severely incomplete for weather services. It lacks essential operations such as getting current conditions, historical weather data, radar maps, or air quality information. Agents will face significant limitations when trying to perform common weather-related tasks.
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Get US weather forecasts, active alerts, and current observations.
US weather & geo for AI agents: forecasts, alerts, earthquakes, elevation, geocoding. No keys.
US weather alerts from NWS: warnings, watches, advisories by state. $0.01/query.
Provide real-time and forecast weather information for locations in the United States using natura…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/santosh-ksharma/mcp-weather'
If you have feedback or need assistance with the MCP directory API, please join our Discord server