Weather MCP Server

Remote
Scanned

API Integration

Integrate this MCP server into your applications.

Get your API Key

You'll need to login and generate a Smithery API key to connect to this server.

Installation

Install the official MCP SDKs using npm:

bash
npm install @modelcontextprotocol/sdk @smithery/sdk

TypeScript SDK

typescript

import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js"
import { createSmitheryUrl } from "@smithery/sdk"

const config = {
  "logLevel": "INFO",
  "logFormat": "%(asctime)s - %(levelname)s - %(message)s",
  "userAgent": "WeatherMCP/0.1",
  "nwsApiBase": "https://api.weather.gov",
  "requestTimeout": "10"
}
const serverUrl = createSmitheryUrl("https://server.smithery.ai/@JackKuo666/weather-mcp-server", config, "your-smithery-api-key")

const transport = new StreamableHTTPClientTransport(serverUrl)

// Create MCP client
import { Client } from "@modelcontextprotocol/sdk/client/index.js"

const client = new Client({
	name: "Test client",
	version: "1.0.0"
})
await client.connect(transport)

// Use the server tools with your LLM application
const tools = await client.listTools()
console.log(`Available tools: ${tools.map(t => t.name).join(", ")}`)

Configuration Schema

Full JSON Schema for server configuration:

json
{
  "type": "object",
  "properties": {
    "logLevel": {
      "type": "string",
      "default": "INFO",
      "description": "Logging level"
    },
    "logFormat": {
      "type": "string",
      "default": "%(asctime)s - %(levelname)s - %(message)s",
      "description": "Logging format"
    },
    "userAgent": {
      "type": "string",
      "default": "WeatherMCP/0.1",
      "description": "User-Agent header when making requests"
    },
    "nwsApiBase": {
      "type": "string",
      "default": "https://api.weather.gov",
      "description": "Base URL for NWS API"
    },
    "requestTimeout": {
      "type": "string",
      "default": "10",
      "description": "Timeout for API requests in seconds"
    }
  }
}