harshjoeyit/mcp-server-weather
3.1
If you are the rightful owner of mcp-server-weather and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
The Model Context Protocol (MCP) server is a framework designed to facilitate communication between clients and servers using a standardized protocol. It is particularly useful for applications that require real-time data exchange and processing.
Tools
2
Resources
0
Prompts
0
MCP server prototype
A quick prototype based on - https://modelcontextprotocol.io/quickstart/server
MCP server Logs
tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
Initializing server
2025-07-20T13:44:16.367Z [weather] [info] Initializing server... { metadata: undefined }
2025-07-20T13:44:16.378Z [weather] [info] Using MCP server command: /Users/harshitgangwar/.local/bin/uv with args and path: {
metadata: {
args: [
'--directory',
'/Users/harshitgangwar/Documents/MyProjects/prototypes/weather-for-mcp',
'run',
'weather.py',
[length]: 4
],
paths: [
'/Users/harshitgangwar/.nvm/versions/node/v17.0.1/bin',
'/Users/harshitgangwar/.nvm/versions/node/v18.18.2/bin',
'/Users/harshitgangwar/.nvm/versions/node/v20.19.3/bin',
'/Users/harshitgangwar/.nvm/versions/node/v21.6.2/bin',
'/Users/harshitgangwar/.nvm/versions/node/v22.17.0/bin',
'/usr/local/bin',
'/opt/homebrew/bin',
'/usr/bin',
'/usr/bin',
'/bin',
'/usr/sbin',
'/sbin',
[length]: 12
]
}
} %o
2025-07-20T13:44:16.380Z [weather] [info] Server started and connected successfully { metadata: undefined }
First message (id = 0)
2025-07-20T13:44:16.395Z [weather] [info] Message from client: {"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"claude-ai","version":"0.1.0"}},"jsonrpc":"2.0","id":0} { metadata: undefined }
2025-07-20T13:44:18.950Z [weather] [info] Message from server: {"jsonrpc":"2.0","id":0,"result":{"protocolVersion":"2025-06-18","capabilities":{"experimental":{},"prompts":{"listChanged":false},"resources":{"subscribe":false,"listChanged":false},"tools":{"listChanged":false}},"serverInfo":{"name":"weather","version":"1.12.0"}}} { metadata: undefined }
Tools list
2025-07-20T13:44:18.951Z [weather] [info] Message from client: {"method":"notifications/initialized","jsonrpc":"2.0"} { metadata: undefined }
2025-07-20T13:44:18.951Z [weather] [info] Message from client: {"method":"tools/list","params":{},"jsonrpc":"2.0","id":1} { metadata: undefined }
2025-07-20T13:44:18.952Z [weather] [info] Message from client: {"method":"tools/list","params":{},"jsonrpc":"2.0","id":2} { metadata: undefined }
[07/20/25 19:14:18] INFO Processing request of type server.py:625
ListToolsRequest
INFO Processing request of type server.py:625
ListToolsRequest
2025-07-20T13:44:18.960Z [weather] [info] Message from server:
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"tools": [
{
"name": "get_alerts",
"description": "Get weather alerts for a US state.\n\nArgs:\n state: Two-letter US state code (e.g. CA, NY)\n",
"inputSchema": {
"properties": { "state": { "title": "State", "type": "string" } },
"required": ["state"],
"title": "get_alertsArguments",
"type": "object"
},
"outputSchema": {
"properties": { "result": { "title": "Result", "type": "string" } },
"required": ["result"],
"title": "get_alertsOutput",
"type": "object"
}
},
{
"name": "get_forecast",
"description": "Get weather forecast for a location.\n\nArgs:\n latitude: Latitude of the location\n longitude: Longitude of the location\n",
"inputSchema": {
"properties": {
"latitude": { "title": "Latitude", "type": "number" },
"longitude": { "title": "Longitude", "type": "number" }
},
"required": ["latitude", "longitude"],
"title": "get_forecastArguments",
"type": "object"
},
"outputSchema": {
"properties": { "result": { "title": "Result", "type": "string" } },
"required": ["result"],
"title": "get_forecastOutput",
"type": "object"
}
}
]
}
}
{ metadata: undefined }
Resource List
2025-07-20T13:44:18.952Z [weather] [info] Message from client: {"method":"resources/list","params":{},"jsonrpc":"2.0","id":3} { metadata: undefined }
INFO Processing request of type server.py:625
ListResourcesRequest
2025-07-20T13:44:18.962Z [weather] [info] Message from server: {"jsonrpc":"2.0","id":3,"result":{"resources":[]}} { metadata: undefined }
Prompts list
2025-07-20T13:44:18.963Z [weather] [info] Message from client: {"method":"prompts/list","params":{},"jsonrpc":"2.0","id":4} { metadata: undefined }
INFO Processing request of type server.py:625
ListPromptsRequest
2025-07-20T13:44:18.964Z [weather] [info] Message from server: {"jsonrpc":"2.0","id":4,"result":{"prompts":[]}} { metadata: undefined }
Keepalive every 10 mins
2025-07-20T13:44:40.933Z [info] [weather] Message from client: {"method":"prompts/list","params":{},"jsonrpc":"2.0","id":8}
2025-07-20T13:44:40.936Z [info] [weather] Message from server: {"jsonrpc":"2.0","id":8,"result":{"prompts":[]}}
2025-07-20T13:54:40.902Z [info] [weather] Message from client: {"method":"resources/list","params":{},"jsonrpc":"2.0","id":9}
2025-07-20T13:54:40.921Z [info] [weather] Message from server: {"jsonrpc":"2.0","id":9,"result":{"resources":[]}}
2025-07-20T13:54:40.923Z [info] [weather] Message from client: {"method":"prompts/list","params":{},"jsonrpc":"2.0","id":10}
2025-07-20T13:54:40.925Z [info] [weather] Message from server: {"jsonrpc":"2.0","id":10,"result":{"prompts":[]}}
2025-07-20T14:04:40.884Z [info] [weather] Message from client: {"method":"resources/list","params":{},"jsonrpc":"2.0","id":11}
2025-07-20T14:04:40.920Z [info] [weather] Message from server: {"jsonrpc":"2.0","id":11,"result":{"resources":[]}}
2025-07-20T14:04:40.922Z [info] [weather] Message from client: {"method":"prompts/list","params":{},"jsonrpc":"2.0","id":12}
2025-07-20T14:04:40.924Z [info] [weather] Message from server: {"jsonrpc":"2.0","id":12,"result":{"prompts":[]}}
Get Weather
==> /Users/harshitgangwar/Library/Logs/Claude/mcp.log <==
2025-07-20T14:09:08.507Z [info] [weather] Message from client: {"method":"tools/call","params":{"name":"get_forecast","arguments":{"latitude":38.5816,"longitude":-121.4944}},"jsonrpc":"2.0","id":13}
==> /Users/harshitgangwar/Library/Logs/Claude/mcp-server-weather.log <==
INFO HTTP Request: GET _client.py:1740
https://api.weather.gov/points/38.5
816,-121.4944 "HTTP/1.1 200 OK"
[07/20/25 19:39:09] INFO HTTP Request: GET _client.py:1740
https://api.weather.gov/gridpoints/
STO/41,68/forecast "HTTP/1.1 200
OK"
2025-07-20T14:09:09.651Z [weather] [info] Message from server: {
{
"jsonrpc": "2.0",
"id": 13,
"result": {
"content": [
{
"type": "text",
"text": "\nToday:\nTemperature: 91°F\nWind: 5 to 10 mph SSW\nForecast: Sunny, with a high near 91. South southwest wind 5 to 10 mph, with gusts as high as 18 mph.\n\n---\n\nTonight:\nTemperature: 59°F\nWind: 10 mph S\nForecast: Mostly clear, with a low around 59. South wind around 10 mph, with gusts as high as 21 mph.\n\n---\n\nMonday:\nTemperature: 82°F\nWind: 9 to 13 mph S\nForecast: Sunny, with a high near 82. South wind 9 to 13 mph, with gusts as high as 22 mph.\n\n---\n\nMonday Night:\nTemperature: 58°F\nWind: 7 to 13 mph SSW\nForecast: Partly cloudy, with a low around 58. South southwest wind 7 to 13 mph, with gusts as high as 22 mph.\n\n---\n\nTuesday:\nTemperature: 80°F\nWind: 6 to 9 mph SSW\nForecast: Mostly sunny, with a high near 80. South southwest wind 6 to 9 mph.\n"
}
],
"structuredContent": {
"result": "\nToday:\nTemperature: 91°F\nWind: 5 to 10 mph SSW\nForecast: Sunny, with a high near 91. South southwest wind 5 to 10 mph, with gusts as high as 18 mph.\n\n---\n\nTonight:\nTemperature: 59°F\nWind: 10 mph S\nForecast: Mostly clear, with a low around 59. South wind around 10 mph, with gusts as high as 21 mph.\n\n---\n\nMonday:\nTemperature: 82°F\nWind: 9 to 13 mph S\nForecast: Sunny, with a high near 82. South wind 9 to 13 mph, with gusts as high as 22 mph.\n\n---\n\nMonday Night:\nTemperature: 58°F\nWind: 7 to 13 mph SSW\nForecast: Partly cloudy, with a low around 58. South southwest wind 7 to 13 mph, with gusts as high as 22 mph.\n\n---\n\nTuesday:\nTemperature: 80°F\nWind: 6 to 9 mph SSW\nForecast: Mostly sunny, with a high near 80. South southwest wind 6 to 9 mph.\n"
},
"isError": false
}
}
Get Alerts
==> /Users/harshitgangwar/Library/Logs/Claude/mcp-server-weather.log <==
2025-07-20T14:12:07.571Z [weather] [info] Message from client: {"method":"tools/call","params":{"name":"get_alerts","arguments":{"state":"TX"}},"jsonrpc":"2.0","id":18} { metadata: undefined }
==> /Users/harshitgangwar/Library/Logs/Claude/mcp-server-weather.log <==
[07/20/25 19:42:07] INFO Processing request of type server.py:625
CallToolRequest
[07/20/25 19:42:08] INFO HTTP Request: GET _client.py:1740
https://api.weather.gov/alerts/acti
ve/area/TX "HTTP/1.1 200 OK"
2025-07-20T14:12:08.329Z [weather] [info] Message from server: {"jsonrpc":"2.0","id":18,"result":{"content":[{"type":"text","text":"\nEvent: Heat Advisory\nArea: Palo Duro Canyon\nSeverity: Moderate\nDescription: * WHAT...Heat index values up to 102 expected.\n\n* WHERE...Palo Duro Canyon County.\n\n* WHEN...From 1 PM this afternoon to 8 PM CDT this evening.\n\n* IMPACTS...Hot temperatures and high humidity may cause heat\nillnesses.\nInstructions: Drink plenty of fluids, stay in an air-conditioned room, stay out of\nthe sun, and check up on relatives and neighbors.\n\nTake extra precautions when outside. Wear lightweight and loose\nfitting clothing. Try to limit strenuous activities to early morning\nor evening. Take action when you see symptoms of heat exhaustion and\nheat stroke.\n\n---\n\nEvent: Heat Advisory\nArea: Harper; Woods; Alfalfa; Grant; Kay; Woodward; Major; Garfield; Noble; Blaine; Kingfisher; Logan; Payne; Caddo; Canadian; Oklahoma; Lincoln; Grady; McClain; Cleveland; Pottawatomie; Seminole; Hughes; Harmon; Greer; Kiowa; Jackson; Tillman; Comanche; Stephens; Garvin; Murray; Pontotoc; Coal; Cotton; Jefferson; Carter; Johnston;