Weather MCP Agent
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 AgentWhat's the weather in Tokyo?"
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.
Weather MCP Agent
A small JavaScript MCP server that exposes a single get_weather tool over stdio. The tool accepts a city name and returns the current weather response generated through the configured classroom proxy endpoint.
Features
One MCP tool:
get_weatherRuns in Node.js
Uses stdio transport for MCP clients
Calls the proxy endpoint with the required
fetch()configuration
Related MCP server: MCP Weather Server — Demo
Project Structure
weatherAgentMCP/
├── package.json
├── src/
│ ├── llm.js
│ └── mcp-server.js
├── test-client.js
└── README.mdInstallation
From the project root, install dependencies:
npm installRun the MCP Server
Local stdio server
Start the original stdio-based server:
npm startThe server will stay running and wait for MCP clients over stdio.
HTTP server for Render
A simple HTTP-based MCP endpoint is also available for hosting:
npm run start:httpThis starts an HTTP server at /mcp on port 3000 (or the port provided by the environment).
Render deployment guide
1. Push the repository to GitHub
Make sure your project is committed and pushed to GitHub.
2. Create a new Render web service
In Render:
click New +
choose Web Service
connect your GitHub repository
select the repository
3. Configure the service
Use these settings:
Build Command:
npm installStart Command:
npm run start:httpEnvironment:
NodePort: Render will provide this automatically through
PORT
4. Deploy
Render will build and start the app. Once it is live, your MCP endpoint will be available at:
https://your-render-app.onrender.com/mcp5. Use it from an MCP client
A client that supports HTTP MCP can point to the URL above.
Local Test
A simple local test client is included. Run it from the project root:
node test-client.jsThis client will:
Launch the MCP server over stdio
List the available tools
Invoke
get_weatherfor LondonPrint the tool result
Files
src/llm.js: Contains thecallLLM(prompt)helper and the proxy request logic.src/mcp-server.js: Registers the MCP tool and handles tool execution.test-client.js: A minimal local client used to verify the server end to end.
Available Tools
1 toolget_weatherB
Return the current weather for the requested city.
| Name | Required | Description | Default |
|---|---|---|---|
| city | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It does not disclose behavioral traits such as units, timezone, freshness of data, error handling, or rate limits. The simple statement 'Return the current weather' omits important context for an agent.
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 a single concise sentence with no unnecessary words or repetition. It is front-loaded and efficiently conveys the essential action.
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 no output schema and no annotations, the description is incomplete. An agent needs more context about the response format, possible errors, and factual constraints (e.g., supports only certain cities). The minimal description leaves critical gaps.
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 schema has 0% description coverage, and the description only repeats 'requested city' without adding format, constraints, or examples. While 'city' is self-explanatory, the description provides no added semantic value beyond the parameter name.
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 it returns current weather for a city, with a specific verb ('Return') and resource ('current weather'). As there are no sibling tools, no differentiation is needed; the purpose is unambiguous.
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?
No alternatives exist, but the description provides no explicit guidance on when to use this tool. Usage is implied as a basic weather lookup, but no conditions or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
1 tool update
v1.0.0- First observed
get_weather
TDQS
With only one tool, there is no possibility of confusion. The purpose is singular and unambiguous.
The single tool 'get_weather' follows a clear verb_noun pattern, which is consistent and predictable.
A single tool for a weather service is on the low end; while it covers basic current weather, it feels thin for a full-featured weather agent.
The tool set lacks coverage for forecasts, alerts, historical data, and other common weather-related functionalities, leaving significant gaps.
Maintenance
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
An MCP server for weather information by @kulybaba
An MCP server for weather information by @kulybaba
Related MCP Servers
- FlicenseBqualityDmaintenanceA simple MCP server that provides a tool to fetch current weather information for cities using the Open-Meteo API, communicating through stdin/stdout.12-
- AlicenseNot gradedqualityDmaintenanceDemo MCP server that provides weather data for cities, with tools to get weather and list available cities.MIT
- FlicenseNot gradedqualityCmaintenanceA proof-of-concept MCP server that provides weather information using the Open-Meteo API, with tools for greeting, getting weather by coordinates, and by location name.-
- FlicenseNot gradedqualityBmaintenanceA minimal MCP server that provides current weather and forecasts for any city using the free Open-Meteo API, no API key required.8-
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/madankumarpichamuthu/weatherAgentMCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server